# Surge documentation

Start here to learn how Surge works and create your first strategy.

Surge is a non-custodial automated trading platform for Cardano. You connect a Cardano wallet, set up a strategy, and Surge watches the market and executes it automatically. Your keys never leave your browser. Every trade is signed there by a wallet only you control, within limits you set.

### Start here

1. Learn [what Surge is](/getting-started/what-is-surge).
2. [Connect your wallet](/getting-started/connecting-your-wallet).
3. Create [your first strategy](/getting-started/first-strategy-walkthrough).

### Before you begin

Two things to know before anything else:

* **Leave the Surge tab open.** Trades are signed in your browser, so a strategy runs unattended for as long as the tab is open and connected — but pauses if you close it. See [How non-custodial works](/getting-started/how-non-custodial-works).
* **Trades on Cardano DEXes are not instant.** An order normally takes 1–2 minutes to fill, and on some DEX's an order that cannot fill stays open until you cancel it. See [How trading on Cardano DEXes works](/core-concepts/how-cardano-dex-trading-works).

### Need help?

Find answers in the [FAQ](/help/faq), resolve problems in [Troubleshooting](/help/troubleshooting), or look up terms in the [Glossary](/help/glossary).


# What Surge is

Surge is an automated trading platform for Cardano decentralised exchanges (DEX's). You describe a trading plan once: a grid, a dollar-cost-averaging schedule, a cross-DEX arbitrage watch, a set of price levels, or a volume schedule. Surge watches the market and prepares each trade at the right moment. Surge never holds your funds or keys.

## What you can do with Surge

| Feature                                                  | What it does                                                                                     |
| -------------------------------------------------------- | ------------------------------------------------------------------------------------------------ |
| [Grid](/strategies/grid)                                 | Buys low and sells high repeatedly inside a price band you choose                                |
| [DCA](/strategies/dca)                                   | Buys or sells a fixed ADA amount on a fixed schedule                                             |
| [Sequential arbitrage](/strategies/sequential-arbitrage) | Buys a token, then sells it after the buy fills                                                  |
| [Parallel arbitrage](/strategies/parallel-arbitrage)     | Buys and sells simultaneously using two strategy wallets                                         |
| [Rule-based](/strategies/rule-based)                     | Fires buys or sells when the price reaches levels you draw on the chart                          |
| [Cadence (Volume)](/strategies/cadence-volume)           | Executes a planned schedule of buys and sells across your own wallets over 12–72 hours           |
| [Manual swap](/dashboard-and-account/manual-swap)        | A one-off swap, optionally split across several DEX's for a better price                         |
| [Staking](/fees-tiers-and-staking/staking)               | Hold SURGE tokens to earn a share of protocol fees (paid in ADA) and a discount on your own fees |

Surge trades on Minswap, SundaeSwap, WingRiders and Splash. See [Supported DEX's](/core-concepts/supported-dexes) for how they differ.

## What Surge is not

Surge is not a custodial bot service. It does not have a server-side wallet that trades on your behalf; your browser signs every transaction with a key that only your browser holds, automatically and within limits you set, so you do not have to be at the computer. The practical consequence is that **your strategies only run while your Surge browser tab is open**. See [How non-custodial works](/getting-started/how-non-custodial-works).

Surge is not a guarantee of profit. Every strategy page in these docs lists the fees a strategy pays and the ways it can lose money.

## Who Surge is for

Surge assumes you already know what ADA, a wallet and a token swap are. It does not assume you know how Cardano DEX's settle trades, what a batcher is, or why an order can sit unfilled. [How trading on Cardano DEXes works](/core-concepts/how-cardano-dex-trading-works) explains these concepts, and the [Glossary](/help/glossary) defines each term.

Surge is a desktop application. Screens narrower than 768 pixels (phones) show a "desktop only" message; tablets and laptops work.


# How non-custodial works

Surge never holds your private keys and never signs a transaction for you. Every trade is built by Surge as an unsigned transaction, sent to your browser, signed there, and sent back to be broadcast to the Cardano network. This page explains what that means for you day to day.

### Who holds what

| Thing                                        | Where it lives                                                                                      | Who can use it                                                                                    |
| -------------------------------------------- | --------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| Your browser wallet's keys (Eternl, Lace, …) | In the wallet extension                                                                             | Only you, via the extension's own prompts                                                         |
| Your strategy wallets' keys                  | In an encrypted vault inside your browser (see [Wallets in Surge](/core-concepts/wallets-in-surge)) | Only your browser, and only after the Surge transaction guard and your approval settings allow it |
| Your funds                                   | In your wallets on the Cardano blockchain                                                           | Only whoever holds the matching key                                                               |
| Surge's servers                              | Prices, strategy settings, order history, your wallet *addresses* and public keys                   | Never a private key                                                                               |

The one exception on Surge's side is the staking reward treasury: Surge holds a key for the wallet that pays out staking rewards, because those payouts come from Surge, not from you. It never touches your trading. See [Staking SURGE](/fees-tiers-and-staking/staking).

### What “you sign everything” means in practice

1. A trade is decided — by Surge's servers (a grid line was crossed, an arbitrage spread appeared, a rule level was reached, a Cadence order came due) or by your own browser (a DCA interval elapsed).
2. Surge builds the exact Cardano transaction and pushes it to your open browser tab.
3. Your browser checks the transaction against the [transaction guard](/core-concepts/signing-and-approvals) — it must not spend more than the strategy's budget, must not move tokens the strategy did not declare, and must return change to your wallet.
4. With "Automate signing" on (the default), that is the only check — nothing waits for you. If you have turned it off, a Signing Approval window shows you the full sending and receiving addresses and the maximum spend, and waits for you to click Approve.
5. Your browser signs with the strategy wallet's key and sends the signed transaction back to Surge, which broadcasts it.

So you do not need to be at your computer while a strategy runs — but the Surge tab does need to stay open, because the signing happens there.

For manual swaps, sends and funding, step 5 happens in your browser wallet extension instead, with the extension's own confirmation prompt.

### Why your strategy stops when you close the tab

Because step 3–5 happen in your browser, a trade cannot be signed when the tab is closed, the laptop is asleep, or the connection to Surge has dropped. What each strategy does in that situation:

| Strategy         | Behaviour while the tab is closed                                                                                                                                                        |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Grid, Rule-based | The server pauses the strategy ("Paused — socket down") and resumes automatically when you reopen the tab. Any price crossings that happened meanwhile are ignored, not queued.          |
| Arbitrage        | The server stops looking for opportunities for your strategy until you reopen the tab. An in-flight buy keeps waiting for its fill for up to 5 minutes, then is abandoned.               |
| DCA              | The schedule itself runs inside your browser tab, so nothing happens at all until you reopen it.                                                                                         |
| Cadence (Volume) | Orders keep coming due on the server but none are sent for signing while no tab is connected; any order more than 30 minutes past its time is skipped permanently, with no notification. |

Two settings help: **Keep screen awake** (Settings → General) asks your operating system not to sleep the screen while a strategy is running, and the **socket status pill** in the header shows whether the live connection to Surge is up. Neither keeps a strategy running through a closed tab.

### What Surge can and cannot do with your funds

Surge can only ever build transactions. It cannot spend anything without a signature from your browser, and the transaction guard limits what a signature can authorise. Surge cannot recover a strategy wallet if you lose its key file and the browser it was created in — see [Backing up strategy wallets](/core-concepts/wallets-in-surge#backing-up-and-restoring).


# Supported wallets

Surge connects to Cardano browser-extension wallets that follow the CIP-30 standard. The following wallets are recognised:

| Wallet     | Notes                                        |
| ---------- | -------------------------------------------- |
| Eternl     | Also detected under its older "ccvault" name |
| Lace       |                                              |
| Ctrl       |                                              |
| OKX Wallet |                                              |
| Vespr      |                                              |
| Flint      |                                              |
| Typhon     |                                              |
| NuFi       |                                              |
| Yoroi      |                                              |
| GeroWallet |                                              |
| Begin      |                                              |

**Nami is not supported.** If you use Nami, import its seed into one of the wallets above.

### What you need from the wallet

* It must be installed as a browser extension and unlocked. Surge lists only the wallets it can actually see in your browser.
* It must be set to the same network as Surge. A mismatch aborts the connection.
* For staking, the wallet must use a normal "base" address (one with a stake key). See [Staking SURGE](/fees-tiers-and-staking/staking#who-can-subscribe).

### What the browser wallet is used for

Your browser wallet is your identity and your funding source. It signs a short login message (not a transaction), it funds your strategy wallets, and it signs manual swaps and sends. Automated strategy trades are signed by separate strategy wallets that Surge creates in your browser — see [Wallets in Surge](/core-concepts/wallets-in-surge).

### If your wallet is not listed

Extensions sometimes inject themselves a moment after the page loads (Surge's own reconnect to a previously connected wallet retries three times, one second apart, for this reason). Reload the page if your wallet is installed but missing. If it is still missing, the extension is either locked, disabled for this site, or not one of the wallets above.


# Connecting your wallet

You sign in to Surge by signing a short message with your Cardano browser wallet. There is no email, password or seed phrase involved, and the message you sign cannot move funds.

### Connect your wallet

1. Open Surge and click **Connect wallet**. A dialog lists the wallets installed in your browser (see [Supported wallets](/getting-started/supported-wallets)).
2. Choose a wallet. The extension asks you to allow Surge to connect. Approve it.
3. Surge requires your wallet to use the **Cardano mainnet**. Switch your wallet to mainnet if the connection stops.
4. Surge requests a one-time login message from its server. The message starts with `surge.finance login |` and contains your wallet address, the network, a timestamp and a random nonce. Surge shows the message and refuses anything else. This prevents a transaction being disguised as a login request.
5. Click **Sign**. Your wallet extension prompts you to sign the message (a "data signature", not a transaction). Approve it.
6. Surge verifies the signature and starts your session.

The login stepper shows four steps: nonce, sign, login, and complete. It identifies the failed step if something goes wrong.

### Your session

* A session lasts as long as you keep using the app; the access token is refreshed automatically in the background (it expires after 15 minutes if not refreshed, and Surge refreshes it around the 10-minute mark and on every return to the tab).
* If refresh fails because the session was revoked or expired, Surge shows "Session expired", disconnects the wallet and returns you to login.
* Surge supports Cardano mainnet only. If your wallet changes network, Surge disconnects immediately.

### Reconnecting

When you return to Surge, it reconnects to the last wallet silently. If the extension is slow to load, Surge retries three times at one-second intervals before giving up and showing the connect button.

### Log out

Use the wallet menu in the header. "Log out" ends this session; the login page also offers "log out and use a different wallet". Logging out does not delete your strategy wallets or their keys from this browser. See [Wallets in Surge](/core-concepts/wallets-in-surge).

### Login errors

| Message                   | Cause                                                                                  | Fix                                                            |
| ------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------- |
| Nonce expired / not found | You took too long between requesting the message and signing it, or signed a stale one | Surge automatically requests a fresh message; sign again       |
| Invalid signature         | The wallet signed with a different address than the one that requested the nonce       | Make sure the wallet's active account is the one you connected |
| Too many requests         | Login is limited to 5 attempts per minute per IP address                               | Wait a minute                                                  |
| Network mismatch          | Wallet is not using Cardano mainnet                                                    | Switch the wallet to Cardano mainnet                           |


# Your first strategy, step by step

This walkthrough takes you from a fresh login to a running strategy. It uses a Grid as the example because it exercises every part of the app; the other strategies follow the same shape.

### 1. Sign in

Connect your browser wallet and sign the login message. The dashboard opens with a four-step welcome tour: Overview, How it works, Your wallets, and Safety. The Safety step includes an interactive demo of the **Pause All** button.

### 2. Create a strategy wallet

Automated strategies do not trade from your browser wallet. They trade from a **strategy wallet**, a separate wallet whose key is generated and stored in your browser. Go to **Wallets** and click **Generate**. Give it a label. You can create up to 20.

Before funding it, **export the wallet**. Use **Back up** to download its key file and save it in a secure location on your device. If you lose the browser profile and the key file, the funds in that wallet are unrecoverable. See [Wallets in Surge](/core-concepts/wallets-in-surge).

### 3. Fund the strategy wallet

Click **Fund** on the wallet. Choose how much ADA (and, if the strategy sells a token, how many tokens) to send from your browser wallet. Your browser wallet asks you to confirm. A "funding settling" banner shows for about two minutes while the transaction lands.

How much to send: every strategy builder has a **Required balance** panel that adds up the trade budget, the DEX order deposits, batcher fees, network fees and Surge fees. Send at least that. Keep a few extra ADA on top; a wallet with less than about 10–12 ADA of spare ADA cannot pay for its next order and the strategy pauses.

### 4. Open the builder

Click **New strategy** in the sidebar or on the dashboard and choose **Grid**. The builder is a two-column form: your inputs on the left, a live preview on the right.

### 5. Fill in the form

For a grid:

1. **Trading pair** — pick a token. Only ADA pairs are supported. Verified tokens show a badge.
2. **DEX** — Surge lists only the DEX's that have a pool for that pair.
3. **Total investment** — the ADA the grid may use. **Max** fills in your strategy wallet's balance.
4. **Price range** — either absolute prices or a ± percentage around the current price. **Suggest** proposes a range from the last 7, 30 or 180 days of prices.
5. **Grid count** — how many rungs. The slider's maximum is what the pool can support; the preview also shows a recommended count.
6. **Slippage tolerance** — default 0.5%.
7. **Co-sign wallet** — pick the strategy wallet you funded (or generate one here).
8. Tick the **risk acknowledgement**.

The preview updates as you type. Deploy is enabled only when the preview says the grid is launchable — if not, it lists exactly what is blocking it (for example "investment below minimum" or "price outside the range"). Every field is explained on the [Grid](/strategies/grid) page.

### 6. Deploy

Click **Create**. Surge saves the strategy, and the strategy's detail page opens. If your wallet does not yet hold the required balance, a funding prompt appears.

### 7. Watch it run

The detail page has tabs for **Overview** (status, P\&L, chart), **Rungs** (each price level and its state), **Trade log**, **Linked wallet** and **Configuration**. The header status badge tells you whether the strategy is running or why it is paused.

When a rung fires, your browser checks the transaction against the guard and signs it automatically. **Automate signing** is on by default, so you do not need to be at the keyboard. Turn it off in **Settings → General** if you want to approve every trade. See [Signing and approvals](/core-concepts/signing-and-approvals).

### 8. Keep the tab open

Surge trades only while this tab is open and connected. Turn on **Keep screen awake** in Settings if you want to leave the laptop unattended, and watch the socket pill in the header. See [How non-custodial works](/getting-started/how-non-custodial-works).

### 9. Stop, archive, or delete

Use the strategy header to pause or stop. A stopped strategy can be **archived** (kept read-only in the Archived list) or **deleted**. Funds stay in the strategy wallet either way; move them back with **Send** or **Sweep** on the Wallets page. See [Managing strategies](/strategies/managing-strategies).


# Run Surge on an always-on computer

Keep a trusted Surge session running through a virtual machine or dedicated computer.

Strategies run only while the Surge tab stays open. Run Surge in a dedicated, always-on environment when you need continuous execution.

### Choose an environment

Use one of these options:

* **Virtual machine:** Sign up with a virtual private server provider. Choose a supported desktop operating system and remote desktop access.

### Set up a virtual machine

1. Create a virtual machine with a desktop environment. Set a strong account password.
2. Install a supported browser and a remote-desktop client. Enable automatic security updates.
3. Connect through remote desktop. Install your Cardano wallet extension and open Surge.
4. Create or import your strategy wallets. Store each key file in a secure location on the virtual machine.
5. Fund the strategy wallets, configure your strategies, and leave the Surge tab open.

{% hint style="warning" %}
A virtual machine holds strategy wallet keys. Do not share its login, remote-desktop access, or wallet key files.
{% endhint %}

### Keep the session available

Prevent the computer from sleeping or shutting down. Configure automatic restart after power loss where available. Reconnect after browser, operating system, or network updates and confirm Surge remains open.

Keep a secure backup of every strategy wallet key file. You need the key file to restore a wallet elsewhere if the machine fails.

### Access Surge remotely

Connect to the virtual machine or dedicated computer from your personal computer using its remote-desktop application. Use a private network or the provider's secure connection method. Sign out of remote sessions when finished.

Automatic signing is on by default. You can turn it off in **Settings** when you want to approve every trade manually.


# How trading on Cardano DEXes works

A swap on a Cardano DEX is not instant and is not guaranteed to happen. You place an **order**; a third-party **batcher** run by the DEX executes it against the liquidity pool a minute or two later, or refunds it, or — on some DEXes — leaves it sitting until you cancel. Everything else in Surge follows from this.

### Orders, not swaps

On most blockchains a swap is a single call that either succeeds or fails immediately. On Cardano, a swap is two transactions by two different parties:

1. **Your transaction** places an order. It locks your ADA (or tokens) at the DEX's order address along with a small note — called a **datum** — stating what you want to receive, the minimum you will accept, and where to pay out. This is the transaction Surge builds and you sign.
2. **The batcher's transaction** fills it. A batcher (SundaeSwap calls it a scooper, WingRiders an agent, Splash an executor) collects many pending orders, executes them all against the pool in one transaction, and pays each order's proceeds to the address in its datum. The batcher keeps a flat fee for this.

Surge does not control the batcher, cannot call it, and gets no receipt from it. When your order transaction is confirmed on chain, all that is known is that the order was *placed*. Whether it *filled* is detected separately, by watching the chain for the batcher's transaction. See [Fills and refunds](/orders-and-transactions/fills-and-refunds).

### Why fills are not instant

A Cardano block arrives roughly every 20 seconds, and the batcher needs a few blocks to see your order, include it in a batch and have that batch confirmed. The normal wait between placing an order and seeing it filled is **1–2 minutes** on every supported DEX. Surge treats an order as "stuck" only after it has been open for more than **3 minutes**.

### Why an order can sit unfilled

Your order carries a **minimum received** amount (the "slippage floor"). If the price moves against you between placing the order and the batcher arriving, the pool can no longer deliver that minimum, so the batcher cannot fill it. What happens next depends on the DEX:

* **Minswap** refunds it automatically. Your funds come back to your wallet minus the network fee, and the order shows as Cancelled.
* **SundaeSwap, WingRiders and Splash** leave it where it is. The order stays open at the DEX's order address, with your funds locked in it, until you cancel it. Surge's strategies offer you a cancel transaction automatically after 5 minutes; for manual swaps you use "Cancel & reclaim". See [Cancelling stuck orders](/orders-and-transactions/cancelling-stuck-orders).

Your funds are never lost in either case — they are in an on-chain order that only you can cancel — but on the three non-refunding DEXes they are tied up until you act.

### Where the price comes from

There is no order book. Each pool holds a reserve of ADA and a reserve of the token, and the price is the ratio of the two. Every trade moves the ratio, so a large trade gets a worse average price than a small one — this is **price impact**, and it is already included in every quote Surge shows. The pool also charges a **liquidity-provider fee** (typically 0.3%) on every trade, which is likewise inside the quoted price rather than a separate line. See [How prices are sourced](/core-concepts/how-prices-are-sourced).

### One order at a time per wallet

Cardano wallets hold funds as discrete "coins" (UTxOs). When you place an order, the change from that transaction is not spendable until it confirms. If a second order is built from the same wallet a few seconds later it will try to spend coins the first order already used, and the second transaction fails. Surge therefore spaces orders from the same wallet by about **two minutes**. This is why a grid or rule-based plan never fires two rungs at once from one wallet, and why Cadence waits for each order's transfer to settle before sending the next.

### The fees you pay on every order

Every order pays the Cardano network fee, the batcher fee, a refundable order deposit (returned when the order fills or is cancelled), the pool's fee (inside the price), and the Surge fee. The [Fee breakdown](/fees-tiers-and-staking/fee-breakdown) page has the numbers and a worked example.

### What this means for a strategy

* A strategy's decision to trade and the actual fill are separated by a minute or more, and the price can move in between. Strategies handle this with minimum-received floors and, for grid and arbitrage, by re-checking the price just before building the order.
* A strategy cannot "undo" a placed order. It can only wait for the fill, wait for a refund, or cancel.
* Profit and loss can only be measured from actual fills, never from the moment of decision. See [Profit and loss](/orders-and-transactions/pnl).


# Supported DEX's

Surge trades on four Cardano DEXes: **Minswap**, **SundaeSwap**, **WingRiders** and **Splash**. They behave differently in ways that matter to you. Only Minswap automatically refunds an order that cannot fill.

### Comparison

|                                              | Minswap (V2)                 | SundaeSwap (V3, V1)                               | WingRiders (V2)                                                                                   | Splash                                                                    |
| -------------------------------------------- | ---------------------------- | ------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| Auto-refund when an order can't fill         | **Yes**                      | No — order parks until you cancel                 | No — order parks until you cancel                                                                 | No — order parks until you cancel                                         |
| Batcher fee per order                        | 2 ADA                        | 1 ADA on V3 pools (estimate), 2.5 ADA on V1 pools | Set per pool, typically 2 ADA, never above 5 ADA                                                  | Set by Splash; 2 ADA if unavailable                                       |
| Refundable order deposit                     | 2 ADA                        | 2 ADA                                             | 2 ADA ("oil")                                                                                     | Not charged separately                                                    |
| Minimum received written into the order      | Yes                          | Yes                                               | Yes                                                                                               | Handled inside Splash's own logic; Surge cannot read it back              |
| Available in split (aggregated) manual swaps | Yes                          | Yes                                               | Yes                                                                                               | **No** — excluded because its minimum-received cannot be enforced per leg |
| Cancelling a stuck order                     | Standard                     | Standard                                          | Standard                                                                                          | Requires a plain-ADA coin of at least 5 ADA in the wallet as collateral   |
| Order deadline                               | 4 minutes for arbitrage buys | —                                                 | Orders expire 20 minutes after placement (expiry does **not** return the funds; you still cancel) | —                                                                         |
| Pool type                                    | Constant-product             | Constant-product                                  | Constant-product and stableswap                                                                   | Order book plus pools                                                     |

Batcher fees and deposits are the values Surge uses when it quotes and records fees; the DEX may change its actual fee. `[VERIFY: Minswap's documentation states its batcher fee was removed in 2025; Surge still quotes and records 2 ADA. Confirm against a live swap.]`

MuesliSwap appears in some lists but is **not** tradeable; selecting it fails.

### What “parks until you cancel” means

On SundaeSwap, WingRiders and Splash, if the market moves past your order's minimum before the batcher gets to it, the order simply stays open at the DEX's order address with your funds inside. Nothing bad happens to the funds, but they are locked until you sign a cancel transaction that returns them to your wallet. Surge:

* offers a cancel automatically for grid, rule-based and arbitrage orders that have been open for more than 5 minutes (a "Cancel ready" prompt appears on the strategy page);
* shows a **Cancel & reclaim funds** button on manual swaps and in the wallet detail page once an order has been open for more than 3 minutes.

See [Cancelling stuck orders](/orders-and-transactions/cancelling-stuck-orders).

### How Surge picks a DEX

* **Manual swap**: you choose one DEX, or let the aggregator split the swap across several. See [Manual swap](/dashboard-and-account/manual-swap).
* **Grid**: you choose which DEX's are allowed; Surge prices and trades on the deepest eligible pool among them.
* **Rule-based**: you choose which DEX's are allowed; for each order Surge quotes every allowed venue's deepest pool at your size and fires on the one that pays the most after batcher, network and Surge fees.
* **Arbitrage**: you choose at least two DEX's to monitor; Surge buys on the cheaper and sells on the dearer of any pair.
* **DCA, Cadence**: you choose one DEX.

A pool is only eligible if it holds at least a minimum amount of ADA — 1,000 ADA for price feeds and 5,000 ADA for grid, rule-based and arbitrage trading — so a thin or dust pool is never used.

### Token naming

Token symbols and logos come from the DEX token registries. A "verified" badge in the pair picker means the token appears in Minswap's verified-token list. Tokens whose decimal places are unknown are shown but their value is not counted in your portfolio total.


# How prices are sourced

Every price in Surge comes from the DEX pools themselves, read directly from the Cardano blockchain by Surge's own price indexer. There is no third-party price API. A pool's price is simply its ADA reserve divided by its token reserve, updated every block.

### Live prices

* Surge's indexer follows the chain and records every pool's reserves each time they change. Those updates are pushed to Surge and on to your browser in real time, roughly once per block (about every 20 seconds).
* The price chart's **LIVE / STALE / RECONNECTING / OFFLINE** badge tells you whether this feed is flowing.
* Strategies react to these same ticks. A grid, for example, evaluates its rungs every time the reference pool's reserves change.

### Which pool is the price

A pair can have several pools on the same DEX (SundaeSwap allows anyone to create one). Surge uses the **deepest pool**, the one with the most ADA, for each DEX and pair. It ignores pools below the liquidity floor:

| Use                                     | Minimum ADA in the pool |
| --------------------------------------- | ----------------------- |
| Price feed, charts, portfolio valuation | 1,000 ADA               |
| Grid, Rule-based and Arbitrage trading  | 5,000 ADA               |

A token with no pool above the floor shows no price rather than a wrong one.

### Protection against bad ticks

Two filters run on every update:

* A tick whose price is more than **4×** away (up or down) from the pool's last accepted price is rejected as an outlier. If **three consecutive** ticks agree on the new level, Surge accepts the move as real. A single bad reading never moves your strategy.
* A pool whose ADA reserve drops below the floor is ignored until it recovers.

### Staleness

* For valuation (portfolio, token prices) a pool's price is considered stale after **24 hours** without a tick; Surge then reports "stale" instead of a number.
* Arbitrage refuses to compare two pools if either one has not ticked in the last **10 minutes**, and halts entirely if the whole feed has been silent for 90 seconds or has fallen 180 slots behind the chain. See [Sequential arbitrage](/strategies/sequential-arbitrage) and [Parallel arbitrage](/strategies/parallel-arbitrage).
* Under the same feed-liveness rule a rule-based plan pauses with "price feed stale" and a grid pauses with "pool shallow".

### New pools

The list of known pools is refreshed **once a day at midnight** (server time). A pool created during the day is not used until the next refresh, even if it becomes the deepest pool.

### Quotes and the mid price

The **mid price** (reserve ratio) is what charts and grid lines use. A **quote** for an actual trade size is different: it walks the pool's curve, so it includes price impact and the pool's liquidity-provider fee. The swap page and the rule-based engine always quote at size; the grid engine checks rungs against the mid price but sizes the order against the curve.

### Charts and indicators

The price chart offers candles at 1m, 5m, 15m, 30m, 1h, 4h, 12h and 1d intervals, built from the same pool history. Volume is derived from reserve changes that look like trades (both reserves move in opposite directions); liquidity deposits and withdrawals are excluded. RSI and SMA overlays are available on the chart; they are display-only and no strategy trades on them.

### Historical data and backtests

Arbitrage and DCA builders can backtest against the same pool history. History is available from 28 February 2026, and an arbitrage backtest window is capped at 90 days.


# Wallets in Surge

Surge uses two kinds of wallet. Your **browser wallet** (Eternl, Lace, …) is your identity and your funding source. **Strategy wallets** are extra wallets Surge creates inside your browser; each automated strategy trades from one of them. Understanding which wallet does what, and where each key lives, is the most important thing on this page.

### Browser wallet vs strategy wallet

|                      | Browser wallet                                         | Strategy wallet                                                                                   |
| -------------------- | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------- |
| Created by           | You, in the wallet extension                           | Surge, in your browser (Wallets → Generate)                                                       |
| Key stored           | In the extension                                       | In an encrypted vault in this browser, and in the key file you download as a backup               |
| Signs                | Login message, funding transfers, manual swaps, sends  | Every automated strategy trade, order cancels for that strategy                                   |
| Prompts you          | The extension's own confirmation dialog, every time    | Nothing by default (Automate signing is on); the Surge Signing Approval window if you turn it off |
| How many             | One connected at a time                                | Up to 20                                                                                          |
| Used by strategies?  | No — strategies never spend from it                    | Yes — one strategy per wallet                                                                     |
| Counted in Portfolio | **No** — the Portfolio page sums strategy wallets only | Yes                                                                                               |

You can run a manual swap from either kind of wallet. The swap page lists your browser wallet plus every active strategy wallet you own.

### Why strategies use a separate wallet

A strategy needs to sign trades in the background, at any hour, without a wallet extension popping up. Extensions cannot do that, so Surge generates a wallet whose key it can use from your browser. Keeping that wallet separate also caps what a strategy can ever touch: only the funds you put in it.

### Where the strategy wallet key is stored

* The key is generated in your browser and **never sent to Surge's servers**. Surge stores the wallet's address and public key only, after you prove ownership by signing a challenge with the new key.
* At rest, the key is encrypted with a wrapping key that the browser will not export (an AES-GCM key marked non-extractable, held in the browser's IndexedDB storage). Copying the browser's storage files to another machine does not recover the wallet.
* While a strategy is armed, the decrypted key is in the browser tab's memory. This is why the browser you run Surge in must be one you trust: malicious extensions or a compromised page could read it.
* The key exists only in **this browser profile** on **this device**. Another browser, another device, or a cleared browser storage will not have it — see below.

### Back up strategy wallets

Export every strategy wallet before funding it. Save the key file in a secure location on your device. Anyone with this file controls the wallet.

* **Back up / Download key file** on the Wallets page writes the wallet key to a file.
* **Export wallets** on the Wallets page, or in **Settings → General → Data management**, exports all wallets at once.
* **Import** (Wallets page) accepts the same CSV/JSON files, including from another device.
* **Reconnect from key file** (wallet detail page) re-attaches a wallet's key to a browser that knows about the wallet but does not have its key.

Each wallet card shows a connection status:

| Status        | Meaning                                                                                                             |
| ------------- | ------------------------------------------------------------------------------------------------------------------- |
| Connected     | Backed up to Surge (address registered) and the key is in this browser — the wallet can sign here                   |
| Not connected | Surge knows the wallet, but this browser does not have its key. Reconnect from a key file to use it here            |
| Not backed up | The key is in this browser but the wallet is not yet registered with Surge — nothing can be run from it until it is |

**Clear all data** in Settings wipes this browser's Surge storage — your wallet list, settings and cached data — so strategy wallets become unusable here until re-imported. `[VERIFY: whether the encrypted key vault itself is also cleared.]` Export first.

### Fund a strategy wallet

Click **Fund** on a wallet. You choose an ADA amount and, optionally, a token and amount; your browser wallet signs the transfer. A "funding settling" banner shows for two minutes. Every strategy builder shows the required balance for the strategy you are configuring; send at least that plus a few ADA of headroom.

### Move funds out

* **Send** (wallet detail) builds a transfer from the strategy wallet to any address; the strategy wallet signs it in your browser after the transaction guard checks it.
* **Sweep** moves all funds from a wallet to one designated wallet. Open the [Surge sweep tool](https://sweep.surgecardano.com/), then provide the source wallet key file and destination address.
* **Receive** shows the wallet's address and QR code.

### Link wallets to strategies

A strategy wallet can be linked to exactly one strategy. The builders only offer wallets that are unlinked, owned by your connected wallet, on the current network, and have their key in this browser. Links are shown on the wallet card and on the strategy's **Linked wallet** tab. Deleting a strategy releases its wallet. `[VERIFY: whether archiving does too.]`

### Deactivate or delete a wallet

**Deactivate** hides a wallet from strategy builders and the swap page without removing its key. **Delete** removes the wallet from Surge and from this browser; it does not move any funds, so empty the wallet first.

### Security summary

* Surge's servers cannot spend from any of your wallets.
* A strategy can spend only from its own strategy wallet, only within the [transaction guard](/core-concepts/signing-and-approvals) limits, and — if you turn Automate signing off — only with your approval.
* Losing the browser profile *and* the key file means losing the wallet. Back up.
* The key file and the export file contain plaintext private keys. Treat them as such.


# Signing and approvals

Every automated trade passes an automatic **transaction guard** in your browser before a strategy wallet signs it, rejecting anything outside the strategy's budget. By default that is the only gate — **Automate signing is on**, so strategies trade without you clicking anything. Turn it off and a **Signing Approval** window waits for your click on every trade instead.

### The Signing Approval window

With Automate signing **off**, whenever a strategy wants to sign a transaction a window appears showing:

* which strategy and wallet is asking (a context badge);
* the **full** signing address and recipient address — deliberately not shortened, because a look-alike address only needs to match the visible ends;
* the maximum ADA the transaction can spend;
* any extra details for that transaction type and a warning strip.

Choose **Approve**, **Decline**, **Decline all** (clears the whole queue) or **Minimize**. Requests queue up if several arrive; a pill in the header shows how many are waiting and reopens a minimized window.

Declining is safe — nothing is signed. What happens next: a rule-based level is re-armed after 2 minutes; a Cadence order is released and retried; an arbitrage opportunity is left for you to skip or sign later, and expires 2 minutes after detection; a declined grid rung stays "pending sign" until your tab next reconnects to the strategy, which resets it to armed (reload the strategy page).

### Automate signing

Settings → General → **Automate signing**. On by default: strategy transactions that pass the transaction guard are signed immediately with no prompt, so a strategy runs unattended as long as the tab stays open. Manual swaps and sends from your browser wallet are unaffected — the extension still prompts.

Turn it off if you want to see and approve every trade — useful while you are learning what a strategy does. The setting is reset to its default whenever you disconnect your wallet, so the next wallet never inherits a previous choice.

### The transaction guard

Before any strategy wallet key is touched, Surge decodes the transaction it was asked to sign and refuses it if it:

* spends more ADA to outside addresses than the strategy's spend cap (the trade size plus a 10 ADA allowance for fees and deposits);
* moves any token out of the wallet that the strategy did not declare it would sell — tokens are **deny by default**;
* contains staking or delegation changes;
* withdraws staking rewards;
* mints or burns anything;
* has a fee of zero or an implausibly large fee;
* returns no change to the signing wallet.

Transfers between your own strategy wallets count as change, not spend, so the Cadence strategy's wallet rotation passes. A refused transaction is never signed; the strategy logs the refusal and the trade is skipped.

The spend cap is derived from the strategy's own settings: the rung budget for a grid, the level size for a rule-based plan, the maximum trade size for Cadence, and the trade size for DCA. `[VERIFY: how the cap is derived for arbitrage legs.]` Order cancels are capped at the locked value plus 10 ADA.

### What the guard does not do

It does not judge whether a trade is a good idea, and it does not check the price. Those are the strategy's job. It also cannot protect keys from a compromised browser — see [Wallets in Surge](/core-concepts/wallets-in-surge#security-summary).

### Where else you sign

| Action                             | Signer                         | Prompt                                                                      |
| ---------------------------------- | ------------------------------ | --------------------------------------------------------------------------- |
| Login                              | Browser wallet                 | Extension's "sign data" prompt (a message, not a transaction)               |
| Fund a strategy wallet             | Browser wallet                 | Extension prompt                                                            |
| Manual swap from browser wallet    | Browser wallet                 | Extension prompt                                                            |
| Manual swap from a strategy wallet | Strategy wallet                | Transaction guard only — no approval window, because you initiated it       |
| Send from a strategy wallet        | Strategy wallet                | Transaction guard only                                                      |
| Cancel a stuck order               | The wallet that owns the order | Extension prompt or transaction guard, depending on the wallet              |
| Strategy trade                     | Strategy wallet                | Transaction guard; Signing Approval only if you turned Automate signing off |
| Register a new strategy wallet     | The new strategy wallet        | None — it signs an ownership challenge, not a transaction                   |


# From decision to confirmation: the trade lifecycle

A Surge trade goes through six stages: **decided → built → signed → submitted → open → filled (or cancelled)**. The stages up to "submitted" happen in seconds; "open" normally lasts 1–2 minutes; "filled" is detected, not returned.

### The stages

| Stage                 | What happens                                                                                                                                                                                                                                                 | Where you see it                   |
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------- |
| 1. Decided            | A strategy's conditions are met (a grid line crossed, a spread appeared, a rule level reached, a DCA interval elapsed in your browser), or you clicked Swap                                                                                                  | Strategy activity feed             |
| 2. Built              | Surge builds the exact transaction: the order with its minimum-received floor, the DEX deposit, the Surge fee output, change back to you. A manual swap or send build is valid for **5 minutes**; strategy builds are re-offered by the strategy if unsigned | "Building" / "Rung built" steps    |
| 3. Signed             | Your browser signs it (see [Signing and approvals](/core-concepts/signing-and-approvals))                                                                                                                                                                    | Signing Approval window            |
| 4. Submitted          | Surge verifies the signed transaction matches what it built, then broadcasts it. You now have a transaction hash                                                                                                                                             | Status **Submitted**               |
| 5. Open               | The transaction is in a block. Your order sits at the DEX waiting for the batcher                                                                                                                                                                            | Status **Open**                    |
| 6. Filled / Cancelled | The batcher spent your order and paid you (Filled), or refunded it / you cancelled it (Cancelled)                                                                                                                                                            | Status **Filled** or **Cancelled** |

### Statuses you will see

The Activity page, dashboard and strategy trade logs use one set of statuses for every order:

| Status        | Meaning                                                                                                                                                 |
| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Submitted** | Broadcast, not yet seen in a block. Usually under a minute                                                                                              |
| **Open**      | On chain, waiting for the batcher. Normal for 1–2 minutes. After 3 minutes Surge labels it **stuck** and offers diagnosis and cancel                    |
| **Filled**    | The batcher executed it and paid your wallet. The received amount and effective price are recorded                                                      |
| **Cancelled** | Your funds came back — either the DEX refunded an unfillable order (Minswap) or you cancelled it. Both show as Cancelled                                |
| **Dropped**   | The transaction never made it into a block (the network dropped it). Nothing was spent; the strategy can retry                                          |
| **Unknown**   | Surge could not identify the order's position in the transaction, so it cannot track the fill automatically. Rare; check the transaction on Cardanoscan |

Strategy-specific pages add finer steps (for example a grid rung's "pending sign" or an arbitrage opportunity's "sell ready"); those are explained on each strategy page.

### How Surge knows an order filled

Surge cannot ask the DEX. It watches the blockchain for the transaction that *spends* your order. Two watchers run: a live feed from Surge's chain indexer (fastest) and a backstop that re-checks every open order every 30 seconds. Whichever sees it first wins. Surge then looks at what that transaction paid to your address:

* proceeds arrived → **Filled**;
* nothing arrived, or (for a sell) your tokens came back → **Cancelled** (refund);
* the same batcher transaction consumed two or more of your orders at once → Surge cannot tell which proceeds belong to which order and marks the outcome **ambiguous**; it retries up to 5 times and then leaves the order Open for you to check.

A fill is treated as **final** after 10 further blocks. If the chain reorganises after that, Surge flags the fill for review rather than silently changing history.

### Timing you can expect

| From            | To                             | Typical                                                      |
| --------------- | ------------------------------ | ------------------------------------------------------------ |
| Decided         | Signing prompt in your browser | seconds `[VERIFY: approximate]`                              |
| Signed          | Submitted                      | seconds                                                      |
| Submitted       | Open (in a block)              | one or two blocks (\~20–60 seconds)                          |
| Open            | Filled                         | 1–2 minutes                                                  |
| Filled on chain | Shown as Filled in Surge       | seconds via the live feed; up to 30 seconds via the backstop |

An order still Open after **3 minutes** is shown as stuck. An order that no batcher has touched after **24 hours** stops being watched; it is still yours to cancel. See [Cancelling stuck orders](/orders-and-transactions/cancelling-stuck-orders).

### What can go wrong at each stage

| Stage     | Failure                                                                                       | What Surge does                                                                                                           |
| --------- | --------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| Built     | The wallet cannot cover the order (not enough ADA, or funds fragmented into many small coins) | Shows an "insufficient funds" error; strategies retry with backoff and pause or disable the level after repeated failures |
| Built     | Manual swap or send build older than 5 minutes when you sign                                  | "Invalid or expired trade identifier" — click Swap/Send again to rebuild                                                  |
| Signed    | Transaction guard refuses                                                                     | Not signed; logged; trade skipped                                                                                         |
| Submitted | Network rejects the transaction (for example a coin was already spent by another order)       | Marked failed; strategies rebuild against fresh coins                                                                     |
| Open      | Price moved past your minimum                                                                 | Minswap refunds; other DEXes park until cancelled                                                                         |
| Filled    | Received less than half the expected minimum                                                  | Surge refuses to count it as a fill and stops watching; the order shows Open — check it manually                          |


# Choosing a strategy

Surge offers five strategy types. Each is a bet on a different kind of market behaviour, and each has a different relationship with fees. This page helps you pick; each strategy has its own full page.

### At a glance

| Strategy                                                 | You are betting on               | Trades when                                      | Wallets              | Runs where                        | Pause persists across browsers? |
| -------------------------------------------------------- | -------------------------------- | ------------------------------------------------ | -------------------- | --------------------------------- | ------------------------------- |
| [Grid](/strategies/grid)                                 | Price chopping inside a band     | The price crosses one of your rungs              | 1 strategy wallet    | Surge servers, signed in your tab | No                              |
| [DCA](/strategies/dca)                                   | Time in the market               | A fixed interval elapses                         | 1 strategy wallet    | **Your browser tab**              | No                              |
| [Sequential arbitrage](/strategies/sequential-arbitrage) | Price gaps between DEX's         | The gap covers all fees plus your minimum profit | 1 strategy wallet    | Surge servers, signed in your tab | No                              |
| [Parallel arbitrage](/strategies/parallel-arbitrage)     | Price gaps between DEX's         | The gap covers all fees plus your minimum profit | 2 strategy wallets   | Surge servers, signed in your tab | No                              |
| [Rule-based](/strategies/rule-based)                     | Your own price levels            | The market reaches a level                       | 1 strategy wallet    | Surge servers, signed in your tab | No                              |
| [Cadence (Volume)](/strategies/cadence-volume)           | Nothing. It executes a schedule. | Its timetable says so                            | 1–5 strategy wallets | Surge servers, signed in your tab | **Yes**                         |

All five trade only while your tab is open. See [How non-custodial works](/getting-started/how-non-custodial-works).

### Choose by goal

* You expect a token to move sideways for a while: **Grid**. It needs enough spacing between rungs to beat about 6–7 ADA of round-trip fees — the builder tells you the minimum investment for the range you chose.
* You want to accumulate (or exit) a token gradually without watching the chart: **DCA**. Keep each order large enough that the flat fees (around 2–3 ADA per order) are a small fraction of it.
* You have wallets on two or more DEX's and want to harvest the difference between them: **Arbitrage**. Choose [Sequential arbitrage](/strategies/sequential-arbitrage) for one wallet or [Parallel arbitrage](/strategies/parallel-arbitrage) for two.
* You have specific prices in mind — "buy 200 ADA worth if it dips to X, sell half if it hits Y": **Rule-based**. Each level fires at its price or better, never worse.
* You need to put a planned amount of buy and sell volume through a pool over a set period: **Cadence**. This strategy costs its fees in full by design and does not express a market view.

### What every strategy has in common

* A **strategy wallet** that funds and signs it (see [Wallets in Surge](/core-concepts/wallets-in-surge)).
* A **Required balance** panel in the builder that adds up trade budget, deposits and fees.
* A **preview** or backtest before you commit.
* Statuses **Running / Paused / Stopped / Completed**, plus **Archived** as a terminal read-only state. See [Managing strategies](/strategies/managing-strategies).
* The same fee stack per order: Surge fee, batcher fee, network fee, refundable deposit, pool fee inside the price. See [Fee breakdown](/fees-tiers-and-staking/fee-breakdown).
* Profit and loss measured from **actual fills** only. Grid, Arbitrage and Rule-based report realized P\&L per completed round trip and feed the dashboard and portfolio totals; Cadence shows a realized cash-flow figure on its own page only; DCA shows volume and fees but no P\&L. See [Profit and loss](/orders-and-transactions/pnl).

### Drafts and clones

A builder remembers what you typed if you navigate away inside Surge (for example to the Wallets page to generate a wallet) and come back. Refreshing the page clears the draft. Grid, DCA, Arbitrage and Cadence strategies — live or archived — can be **cloned** into a pre-filled builder. `[VERIFY: rule-based plans do not have a clone option in the current build.]`


# Grid

A grid buys a token every time its price drops to one of your price lines and sells it again when the price rises to the next line up, over and over, inside a band you choose. It makes money from price *chopping*, not from price *direction*. If the price leaves the band, the grid pauses and waits.

### What it is and when to use it

You pick a token, a lower price, an upper price and a number of grids. Surge slices the band into equal steps. Each step is a **rung**: it buys at its lower line and sells at its upper line. Every completed buy-then-sell (or sell-then-buy) is one **cycle**, and the difference between the two lines minus fees is that cycle's profit. After a cycle closes the rung re-arms and waits to do it again.

Use a grid when you expect a token to oscillate within a range for days or weeks. Do not use it when you expect a sustained trend: in an uptrend the grid sells its inventory early and then sits out of range; in a downtrend it buys all the way down and holds tokens at a loss.

A grid never finishes on its own. It runs until you stop it.

### How it works

**Lines and rungs.** With a lower price L, an upper price U and N grids, Surge places N+1 lines at equal price intervals from L to U. Rung *i* buys at line *i* and sells at line *i+1*. Because the intervals are equal in price, the *percentage* gap is widest at the bottom rung and narrowest at the top — so the top rung is always the least profitable one, and it is the one every feasibility check is measured against.

**Sizing.** Each rung gets the same ADA budget: total investment ÷ number of grids.

**Starting position.** When you create the grid, rungs whose buy line is *above* the current price start armed to **sell** — they expect to be funded with tokens, not ADA. Rungs below the current price start armed to **buy** with ADA. The builder's Required balance panel tells you how many tokens and how much ADA that split needs.

**What triggers a trade.** Surge watches the reference pool (the deepest eligible pool for the pair, on the DEXes you allowed). Each time its price ticks:

* a rung armed to buy fires when the price is **at or below** its buy line;
* a rung armed to sell fires when the price is **at or above** its sell line.

**One order at a time.** Crossed rungs are queued, never fired together. A grid fires **at most one order every two minutes**, nearest-to-current-price first, because two orders from the same wallet in quick succession collide on chain. Each rung also has a two-minute cooldown after it detects a crossing. Just before an order is built, the price is re-checked at current reserves; if the rung is no longer crossed it is re-armed without trading.

**Minimum received.** Every order carries a floor of expected output × (1 − slippage tolerance), with the tolerance clamped to 0.1%–5%. The expected output is quoted when the order is *built*, which can be up to two minutes after the crossing, so a fill can be worse than the line by the price move in that window plus your slippage tolerance.

**After a fill.** A filled buy flips the rung to sell-armed and records the *exact* number of tokens received; the matching sell is sized on exactly that lot, so inventory never drifts. A filled sell flips the rung back to buy-armed. A refund re-arms the same side with the same lot.

**Circuit breaker.** If a single price tick crosses **more than 3 lines** at once, or **more than 5 lines** are crossed within one two-minute window, the grid trips to **Paused — circuit breaker** and drops everything queued. This catches depegs, feed glitches and fat-finger prices. It does **not** clear itself; you resume it from the strategy page.

### Set up a grid

| Field                | What it means                                                                                        | Default                          | Limits and guidance                                                                                                                                                                                                                 |
| -------------------- | ---------------------------------------------------------------------------------------------------- | -------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Strategy name        | Label                                                                                                | `<token> Grid`                   | Up to 60 characters                                                                                                                                                                                                                 |
| Trading pair         | The token, always against ADA                                                                        | —                                | Must have a pool of at least 5,000 ADA on an allowed DEX                                                                                                                                                                            |
| DEX                  | Which DEXes the grid may price and trade on                                                          | Deepest pool across all          | Only DEXes hosting the pair are offered                                                                                                                                                                                             |
| Total investment (₳) | The ADA the grid may commit across all rungs                                                         | —                                | Must be at least the preview's **minimum investment** and at most its **depth ceiling** (above it your orders would move the pool too much). **Max** fills in the wallet balance                                                    |
| Price range          | Lower and upper price in ADA per token, or ± % around the current price                              | —                                | Lower > 0, upper > lower, current price must be inside. **Suggest** proposes a band from 7, 30 or 180 days of history (a 3-standard-deviation band, clamped so the current price is inside and each side is at most 50% of the mid) |
| Grid count           | Number of rungs                                                                                      | `[VERIFY: initial slider value]` | 2 up to the preview's maximum (fallback 12). The slider auto-lowers if the preview reduces the cap; the preview shows a recommended count                                                                                           |
| Slippage tolerance   | Worst fill accepted relative to the expected output                                                  | 0.5%                             | 0.1%–5%                                                                                                                                                                                                                             |
| Boundary buffer %    | Widens the out-of-range check on both sides so a brief poke outside the band does not pause the grid | 0                                | 0 or more; the builder warns above 10. It never moves your lines                                                                                                                                                                    |
| Co-sign wallet       | The strategy wallet that holds the ADA and tokens and signs every order                              | —                                | Must be your wallet, on this network, key in this browser, not linked to another strategy                                                                                                                                           |
| Risk acknowledgement | Required checkbox                                                                                    | —                                |                                                                                                                                                                                                                                     |

**Preview.** As you type, Surge runs the geometry against the live pool and reports whether the grid is **launchable**, the **recommended** grid count and why (largest count whose worst rung still nets more than twice the batcher-plus-network fees, or the maximum feasible, or none), the **minimum investment**, the **depth ceiling**, the **net profit per cycle** for the worst rung, and a list of **blocking reasons** if any. Deploy is disabled until nothing is blocking.

**After creation** you can change only the name, description and boundary buffer. Range, grid count, investment, wallet, slippage and DEXes are fixed; make a new grid to change them (clone from the old one).

A second live grid with identical settings on the same wallet is refused.

### While it runs

The status badge shows one of the following (`[VERIFY: exact on-screen wording of each pause reason]`):

| Status                   | Meaning                                                                                                          | What to do                                                                                                                                                           |
| ------------------------ | ---------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Running                  | Watching the price, rungs armed                                                                                  | Nothing                                                                                                                                                              |
| Paused — out of range    | Price is outside your band (plus buffer)                                                                         | Once the price is back inside, reload the strategy page — the grid re-evaluates when your tab reconnects to it, not on its own. Or stop and recreate with a new band |
| Paused — socket down     | Your tab is closed or the live connection dropped. Queued crossings were discarded                               | Reopen the tab; it resumes on reconnect                                                                                                                              |
| Paused — reserve low     | The wallet has less than roughly 10–12 ADA of spare ADA to pay for the next order's deposit, fees and collateral | Fund the wallet, then reload the strategy page so it re-evaluates                                                                                                    |
| Paused — pool shallow    | The reference pool fell below 5,000 ADA, or the price feed is not live                                           | Wait, then reload the strategy page                                                                                                                                  |
| Paused — circuit breaker | Too many lines crossed at once                                                                                   | Check the chart, then click **Resume**                                                                                                                               |
| Stopped                  | You stopped it                                                                                                   | Archive, delete or leave                                                                                                                                             |

On the **Rungs** tab each rung shows its buy/sell lines and its state: armed, pending build, pending sign, submitted, cancelling. The **Overview** tab shows realized profit (sum of closed cycles), unrealized P\&L (tokens held valued at the current mid price minus what they cost), fees paid, the ADA reserve remaining, and how far your ADA/token split has drifted from the launch split. **Trade log** lists every order.

The socket-down pause outranks every other reason, because without a connection Surge cannot even offer you the cancel that reserve or range recovery might need.

A paused grid receives no price ticks, so out-of-range, reserve-low and pool-shallow pauses are only re-checked when your tab (re)joins the strategy or when the queue next fires. If the condition has cleared and the badge has not, reload the strategy page.

### Fees example

A cycle pays two orders' worth of fees. Take a 5,000 ADA grid with 10 rungs (500 ADA per rung) on Minswap, rung lines at 1.000 and 1.030 ADA per token:

|                                                                           | Amount                                                                      |
| ------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
| Buy 500 ADA of tokens at \~1.000 → sell them at \~1.030                   | gross ≈ +15.0 ADA (pool fee of 0.3% per leg is already inside these prices) |
| Surge fee: 0.2% × 500 ADA per leg × 2 legs                                | −2.0 ADA                                                                    |
| Batcher fee: 2 ADA × 2                                                    | −4.0 ADA                                                                    |
| Network fee: \~0.2 ADA × 2                                                | −0.4 ADA                                                                    |
| Preview safety buffer: 15% of gross (feasibility check only, not charged) | −2.25 ADA                                                                   |
| **Net profit per cycle shown in the preview**                             | **≈ 6.35 ADA**                                                              |
| **Realized profit recorded when the cycle closes** (no buffer)            | **≈ 8.6 ADA**                                                               |

The order deposit (2 ADA per order) is locked while an order is open and returned on fill; it is not a cost.

Now the same grid with 100 ADA rungs and 2% spacing: gross ≈ 2 ADA, minus 4.4 ADA of batcher and network fees alone — a loss before the Surge fee. The preview would report this rung as infeasible and block the launch. This is why the minimum investment exists: fixed per-order fees must be small relative to each rung.

Note on the Surge fee: on-chain you pay 0.2% with no minimum; the preview and the recorded fee use a floor of 0.978 ADA per order, so for rungs below about 489 ADA the *shown* Surge fee is higher than what actually leaves your wallet. See [The Surge fee and its minimum](/fees-tiers-and-staking/surge-fee-and-minimum).

### Wallet interaction

One strategy wallet does everything: it holds the ADA for buy-armed rungs and the tokens for sell-armed rungs, signs every order, receives every fill, and receives every refund. Your browser wallet is only used to fund it. Fund it with the ADA *and* tokens the Required balance panel shows; a grid launched above the current price needs tokens on day one.

Surge keeps an ADA reserve aside (shown as "reserve remaining") to pay deposits and fees. When that falls below the fee floor the grid pauses rather than failing a build.

### Edge cases and failure modes

* **Order refunded (Minswap).** The rung re-arms on the same side with the same lot and clears its cooldown, so the next crossing fires normally.
* **Order parked (SundaeSwap, WingRiders, Splash).** After 5 minutes Surge builds a cancel and pushes a **Cancel ready** prompt to your tab. Sign it to reclaim the funds; the rung then re-arms. While an order is parked the rung occupies the grid's single in-flight slot, so nothing else fires — cancel promptly.
* **Price gaps through several lines.** Circuit breaker (see above).
* **Insufficient ADA.** Paused — reserve low. The check is on fee-paying capacity, so a grid that is fully in tokens is not falsely paused.
* **You close the tab mid-cycle.** Orders already submitted keep waiting for their fill and are picked up on reconnect; rungs that were being built or awaiting signature are reset to armed.
* **Same-wallet conflicts.** Do not run two grids, or a grid and another strategy, from one wallet; they will collide on chain.
* **Late fill of a cancelled order.** If a cancel and a fill race and the fill wins after the cycle was already closed, Surge logs it for review instead of booking it against another cycle.
* **Cancelling / archiving.** Stop the grid first. Archiving is refused while any order is still open or awaiting signature. Delete removes the grid and its history; funds stay in the wallet.

### FAQ

**Why has my grid not traded even though the price crossed a line?** Check the status: out of range, socket down, reserve low or breaker will all hold it. If it says Running, remember one order per two minutes and the two-minute per-rung cooldown; also, the price is re-checked at the moment of building — a brief wick that reverses is skipped.

**Why did a rung fill at a worse price than its line?** Up to your slippage tolerance is allowed, and up to two minutes can pass between the crossing and the build. Tighten slippage if this matters more than fill rate.

**Can I add ADA to a running grid?** Not as investment — rung budgets are fixed at creation. Adding ADA to the wallet does raise the fee reserve; reload the strategy page afterwards so a reserve-low grid re-evaluates.

**What does "recommended grid count" mean?** The largest number of rungs where even the top (narrowest) rung still nets more than twice its batcher and network fees. You can pick more rungs up to the maximum; expect thinner margins.

**Does the grid rebalance if price drifts?** No. It holds whatever the fills leave it with. The Overview shows the drift from your launch split.

**Why can't I edit the range?** Because rungs, lots and open cycles are anchored to it. Clone the grid with a new range instead.


# DCA

A DCA (dollar-cost-averaging) strategy buys — or sells — a fixed ADA value of a token at a fixed interval until a total budget is used up. It removes timing from the decision: your average price becomes the average over the period rather than the price on one day.

Unlike the other strategies, **the DCA timer runs inside your browser tab**, not on Surge's servers. Close the tab and nothing happens until you reopen it.

### What it is and when to use it

Use DCA to accumulate a token you want to hold, or to exit a position gradually, without watching the chart. It does not protect you from a token falling; it only averages your entry into whatever the market does.

Because every order pays roughly 2–3 ADA of flat fees regardless of size, DCA works best with orders of at least a few hundred ADA. A 20 ADA order pays over 10% in fees.

### How it works

1. You set a **trade size**, a **total volume**, an **interval** and a **direction**.
2. Surge computes the number of orders as total volume ÷ trade size (rounded down) and schedules them at your interval, in your browser.
3. The first order fires at least **60 seconds** after you start the strategy; subsequent orders fire at the interval you chose, and never closer than **90 seconds** apart.
4. At each tick your browser asks Surge to build the swap, runs the transaction guard, asks for your approval if you have turned Automate signing off, signs with the strategy wallet, and submits.
5. A failed build (for example insufficient funds) is retried with growing delays, up to **15 attempts** (the delay is capped at 30 minutes), after which the order is skipped. If the DEX reports that a daily limit was reached, the strategy waits until the next UTC midnight. You can also **retry** or **skip** an individual order, or choose which order to start from.
6. The strategy is complete when every scheduled order has been submitted or skipped. `[VERIFY: completion is tracked in the browser; the server does not mark a DCA strategy complete on its own.]`

**Sells are sized in ADA too.** A sell order sells enough tokens to be worth the trade size in ADA at the current price.

### Set up DCA

| Field            | What it means                                      | Default | Limits and guidance                                                                                                                        |
| ---------------- | -------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| Name             | Label                                              | —       | 2–255 characters                                                                                                                           |
| DEX              | The one DEX every order uses                       | —       | Minswap, SundaeSwap, WingRiders or Splash                                                                                                  |
| Asset            | The token, against ADA                             | —       |                                                                                                                                            |
| Direction        | Buy (ADA → token) or Sell (token → ADA)            | Buy     | Fixed for the whole strategy                                                                                                               |
| Trade size (₳)   | ADA value of each order                            | —       | Keep it large enough that \~2–3 ADA of fixed fees is a small share. The builder's fee hint warns when the Surge minimum fee would dominate |
| Total volume (₳) | The budget across all orders; sets the order count | —       | Order count = total ÷ size, rounded down                                                                                                   |
| Interval         | Time between orders                                | —       | 1m, 5m, 15m, 30m, 1h, 4h, 12h, 1d. Orders are never closer than 90 seconds, so 1m actually runs every 90 seconds                           |
| Wallet           | The strategy wallet that funds and signs           | —       | For a sell strategy it must hold the tokens                                                                                                |

**Backtest.** The builder can replay the plan against the last 90 days of pool history (up to 500 simulated orders) and shows tokens acquired and a fee-inclusive average entry price. For a sell plan the same view shows tokens sold and ADA received.

**Required balance.** Total volume (for buys) plus, per order, the batcher fee, network fee and Surge fee, plus one order deposit (only one order is ever open at a time, and the deposit comes back) and the pool fee on the total. For sells it shows the token quantity to hold instead of the volume.

`[VERIFY: a minimum/maximum price guard exists in the backend but is not saved from the builder; the create form may or may not show it. If shown, it is not enforced.]`

### While it runs

* The detail page shows the next order countdown, orders done, tokens acquired (an estimate from the price at submission), and the trade log.
* **Pause / Resume** act on the timer in your browser; a pause set here is not visible from another browser. **Stop** is also saved on the server.
* Closing the tab stops the timer; reopening it resumes from the next due order. Missed intervals are not caught up.
* Each order goes through the normal [trade lifecycle](/core-concepts/trade-lifecycle-and-statuses). On a non-refunding DEX an order that cannot fill parks; use **Cancel & reclaim** on the trade log row.

### Fees example

A 2,000 ADA buy plan in 20 orders of 100 ADA on Minswap. Per order:

|                                  | On-chain cost                  | Shown in previews and history                            |
| -------------------------------- | ------------------------------ | -------------------------------------------------------- |
| Surge fee 0.2% × 100 ADA         | 0.20 ADA                       | 0.978 ADA (the recorded minimum applies below \~489 ADA) |
| Batcher fee                      | 2.00 ADA                       | 2.00 ADA                                                 |
| Network fee                      | \~0.20 ADA                     | 0.20 ADA                                                 |
| Pool fee 0.3% (inside the price) | \~0.30 ADA                     | —                                                        |
| Order deposit                    | 2 ADA locked, returned on fill | —                                                        |
| **Total per order**              | **≈ 2.7 ADA (2.7%)**           | **≈ 3.2 ADA**                                            |

Over 20 orders that is about 54 ADA of real fees on 2,000 ADA (including pool fees). The same 2,000 ADA in four 500 ADA orders costs about 19 ADA (4 × (1.0 Surge + 2.0 batcher + 0.2 network + 1.5 pool)). The flat fees, not the Surge percentage, are the lever. See [Fee breakdown](/fees-tiers-and-staking/fee-breakdown) and [The Surge fee and its minimum](/fees-tiers-and-staking/surge-fee-and-minimum).

### Wallet interaction

One strategy wallet holds the ADA (for buys) or tokens (for sells), signs each order, and receives each fill. Your browser wallet only funds it.

### Edge cases and failure modes

* **Not enough funds.** The order fails to build; Surge retries with backoff up to 15 times, then skips it. Fund the wallet and click Retry on the order.
* **Order doesn't fill.** Minswap refunds it; the strategy does not re-place it — the interval simply moves on. On other DEXes the order parks; cancel it from the trade log.
* **Tab closed.** Nothing runs. No orders are queued up for later.
* **Wrong interval keyed.** The interval is free text on the server side; the builder only offers the listed values. Use those.
* **Total volume not exactly divisible.** The remainder is not traded.
* **Archiving.** Stop first; then archive or delete. Funds stay in the wallet.

### FAQ

**Why didn't my DCA buy overnight?** The timer runs in the tab. Leave the tab open with Keep screen awake on, or accept that orders only fire while you are there.

**Can I change the trade size mid-way?** Edit the strategy from the Configuration tab; the new size applies to remaining orders. `[VERIFY: which fields the Configuration tab lets you edit.]`

**Does DCA show profit?** No. It shows volume, fees and estimated tokens acquired. Realized P\&L is only computed for grid, arbitrage and rule-based. See [Profit and loss](/orders-and-transactions/pnl).

**Why is "tokens acquired" different from my wallet?** It is estimated from the pool price when the order was submitted, before slippage and fees. Your wallet balance is the truth.


# Rule-based strategies

A rule-based plan is a set of price **levels** you draw on one token's chart. Each level says "buy this much ADA worth when the price is at X or better" or "sell this many tokens when the price is at Y or better", how many times it may fire, and how long to wait between firings. Surge checks the levels against live quotes and fires them when the market reaches them.

A level's price is enforced on chain, not just used as a trigger: **a fill can be better than the level, never worse.**

### What it is and when to use it

Rule-based is for when you have specific prices in mind. Typical plans:

* **Ladder buy the dip** — four buy levels at falling prices, 100 ADA each, one execution each.
* **Scale out** — three sell levels at rising prices, each selling a third of your holding.
* **Repeating range trade** — one buy at the bottom of a range and one sell at the top, each allowed 20 executions with a 10-minute wait, so they cycle as the price oscillates.

Each level is independent. There is no "if this then that" between levels, no indicator conditions and no time-of-day conditions — price only.

### How it works

**Quotes at size.** For each armed level, on every price tick for the pair (and at least once a minute regardless), Surge asks each allowed DEX's deepest pool what your exact order size would receive right now, including that pool's fee and price impact. The level is **eligible** when:

* the effective price at size satisfies the level (buy: at or below the level; sell: at or above), rounded in your disfavour so a borderline never fires;
* the level has executions left;
* its wait time since its last attempt has elapsed;
* if it failed to build recently, its retry back-off (1, 2, then 4 minutes) has elapsed.

**Which DEX.** Among eligible venues, the one that pays the most **net of fees** (batcher, network and Surge fee converted into the same unit) wins.

**Which level.** If several levels are eligible at once, the one furthest past its line fires first; ties go to the oldest level.

**One at a time per wallet.** A wallet fires at most one order per **2 minutes**, and never while another level on that wallet is being built, awaiting signature or open on chain.

**Minimum received.** The order's floor is the higher of the level-implied amount (your size converted at the level price, rounded up) and expected output × (1 − slippage). Whichever is higher protects you.

**Funding check.** Just before building, Surge checks the wallet holds the size plus the DEX's deposit and batcher fee. If not, the level is skipped with "insufficient ADA/token" and stays armed.

**Executions are spent at submit.** A level's execution count goes down when the order reaches the chain — not when it fills. A refund or a cancelled parked order does **not** give the execution back.

**Build failures.** A level that fails to build three times in a row is handled by your **failure policy**: **Disable level** (only that level stops; re-enable it from the Levels tab) or **Pause plan** (the whole plan pauses; click Resume).

### Set up a rule-based strategy

| Field                   | What it means                                                 | Default                                       | Limits and guidance                                                             |
| ----------------------- | ------------------------------------------------------------- | --------------------------------------------- | ------------------------------------------------------------------------------- |
| Name                    | Label                                                         | —                                             | Up to 60 characters                                                             |
| Pair                    | The token, against ADA                                        | —                                             |                                                                                 |
| Venues                  | Which DEXes may quote and fill                                | All that host the pair                        | Any of Minswap, SundaeSwap, WingRiders, Splash; each toggle shows a live status |
| Levels — Side           | Buy or sell                                                   | Buy if placed below the market, sell if above |                                                                                 |
| Levels — Price (₳)      | ADA per token at which the level fires                        | —                                             | Positive; up to 18 decimal places                                               |
| Levels — Size           | **ADA to spend** for a buy; **tokens to sell** for a sell     | —                                             | Must be at least one smallest unit of the token/ADA                             |
| Levels — Executions     | How many times the level may fire                             | `[VERIFY: default]`                           | 1 or more                                                                       |
| Levels — Wait (minutes) | Minimum time between two firings of the same level            | 2                                             | Minimum 2                                                                       |
| Slippage tolerance      | Second input to the minimum-received floor                    | `[VERIFY: default]`                           | 0.1%–5%                                                                         |
| Failure policy          | What three consecutive build failures do                      | Disable level                                 | Disable level / Pause plan                                                      |
| Wallet                  | The strategy wallet that funds, signs and receives everything | —                                             |                                                                                 |
| Acknowledgement         | Required checkbox                                             | —                                             |                                                                                 |

You can also **click on the chart** to place a level and **drag** to move it.

**Preview.** Shows the projected ADA in, ADA out, tokens in and out, fees, and the P\&L *if every level filled at exactly its own price* — with the honest caveat that a plan that accumulates tokens projects a negative ADA figure. Each level also shows its expected price impact. A buy placed above the current price is flagged: it will fire on the first check.

**Required balance.** ADA for all buy sizes plus fees and deposit; tokens for all sell sizes.

**Levels can be edited live.** Add, edit or delete levels on the Levels tab of a running plan. Raising a spent level's execution count re-arms it. Editing a level does not reset its wait timer. Deleting a level is permanent, but orders it already placed keep their history.

`[VERIFY: very small prices (below 0.000001 ADA) and sizes that round to zero units are rejected by the server with a validation message; the builder may not warn beforehand.]`

### While it runs

Plan status (`[VERIFY: exact on-screen wording]`):

| Status                    | Meaning                                                                             |
| ------------------------- | ----------------------------------------------------------------------------------- |
| Running                   | Evaluating levels                                                                   |
| Awaiting levels           | Every level is spent, disabled or deleted — add or re-enable one                    |
| Paused — socket down      | Your tab is closed or disconnected; resumes on reconnect                            |
| Paused — price feed stale | The price feed is not live; resumes when it is                                      |
| Paused — circuit breaker  | Your failure policy paused the plan after repeated build failures. Click **Resume** |
| Stopped                   | You stopped it                                                                      |

Level states on the **Levels** tab: armed, pending build, pending sign, submitted, spent (executions used up), failed (will retry after back-off), disabled. The **Executions** tab lists every attempt with its venue, size, expected and received amounts and fees. The **Overview** shows realized P\&L over filled orders (ADA received from sells − ADA spent on buys − fees) and a separate "fees paid" total over every attempt that reached the chain.

### Fees example

A buy level of 100 ADA at 0.50 ADA per token on SundaeSwap (V3 pool):

|                                    | On-chain cost          | Shown in preview and history |
| ---------------------------------- | ---------------------- | ---------------------------- |
| Surge fee 0.2% × 100               | 0.20 ADA               | 0.978 ADA (recorded minimum) |
| Batcher fee                        | 1.00 ADA               | 1.00 ADA                     |
| Network fee                        | \~0.20 ADA             | 0.20 ADA                     |
| Pool fee \~0.3% (inside the quote) | \~0.30 ADA             | —                            |
| Deposit                            | 2 ADA locked, returned | —                            |

The venue choice already accounts for these: a DEX quoting 0.5% better but charging 1.5 ADA more in batcher fee loses on a 100 ADA order. See [Fee breakdown](/fees-tiers-and-staking/fee-breakdown).

### Wallet interaction

One strategy wallet funds every buy (ADA), holds the tokens for every sell, signs every order and receives every fill. Sell proceeds are recorded net of the returned deposit. Do not share the wallet with another plan or strategy: the one-order-per-wallet rule is enforced per wallet, so a second plan on the same wallet would simply wait behind the first.

### Edge cases and failure modes

* **Price reaches the level but nothing fires.** Check the wait timer, the 2-minute wallet gap, an order still open on the wallet, funding, and whether *any* venue quotes at the level *at your size* — a thin pool may quote worse than the mid price you see on the chart.
* **Order refunded.** Recorded as "refunded — minimum unreachable at execution"; the execution is spent; the level re-arms (if executions remain) after its wait.
* **Order parked (non-Minswap).** After 5 minutes Surge builds a cancel and shows **Cancel ready**. Until you sign it, that wallet fires nothing else.
* **Ambiguous fill.** If one batcher transaction consumed this order and another of yours at once, Surge cannot attribute the proceeds and leaves the level in flight until you check it — deliberately, rather than guessing.
* **Tab closed while awaiting signature.** After 2 minutes the attempt is released and the level re-armed; its execution is *not* spent (it never reached the chain).
* **Archiving.** Stop first; archive requires nothing in flight. Delete removes the plan and its history.

### FAQ

**Does a sell level fire when the chart touches the price?** Only if a pool will actually pay that price *for your size*. Large sizes into thin pools quote below the mid.

**Can a level fire twice in a row?** Only after its wait (minimum 2 minutes) and only if it has executions left.

**Why was my execution used up by a refund?** Because the order reached the chain. "Reached the market" is the test; a refund still cost a network fee.

**Can I use RSI or moving averages as conditions?** No. The chart can display them, but levels trigger on price only.

**What does "pause plan" protect me from?** A wallet that has run dry or a token whose pool vanished — rather than each level burning three attempts in turn, the whole plan stops until you look.


# Sequential arbitrage

Capture a price gap with one strategy wallet.

Sequential arbitrage uses one strategy wallet. It buys a token on the cheaper DEX, waits for the fill, then sells the received tokens on the more expensive DEX.

### Before you start

Fund **Wallet A** with ADA. Keep the Surge tab open. The wallet needs your maximum trade size, reserve floor, order deposits, and fees.

Sequential execution needs no token inventory. It is slower than parallel arbitrage because the sell begins only after the buy fills.

### Configure the strategy

Choose the token and at least two DEX's to monitor. Set your minimum and maximum trade sizes, minimum net profit, daily loss limit, and reserve floor. Choose **Wallet A** as the strategy wallet.

Surge compares eligible pools at every price update. It includes pool fees, price impact, batcher fees, network fees, Surge fees, and a 15% safety buffer. It trades only when the expected result meets your minimum net profit.

### How execution works

1. Surge submits the buy leg on the cheaper DEX.
2. After it fills, Surge sizes the sell using the exact tokens received.
3. Surge submits the sell on the DEX offering the best return.

If the sell cannot fill, Surge re-offers it using its concession process. After unsuccessful attempts, the opportunity becomes **Partial**. You can then close the remaining position manually.

### Risks

Prices can move between the buy and sell. A filled buy does not guarantee a profitable sell. Set a daily loss limit and monitor partial opportunities.

See [Signing and approvals](/core-concepts/signing-and-approvals) for how strategy trades are signed.


# Parallel arbitrage

Capture a price gap with two strategy wallets.

Parallel arbitrage uses two strategy wallets to submit both trade legs at the same time. It reduces execution delay but needs token inventory.

### Before you start

Fund **Wallet A** with ADA. Fund **Wallet B** with enough of the token for the largest sell. Keep the Surge tab open while the strategy runs.

Wallet A buys on the cheaper DEX. Wallet B sells its token inventory on the more expensive DEX. The bought tokens go to Wallet B, and the ADA proceeds go to Wallet A.

### Configure the strategy

Choose the token and at least two DEX's to monitor. Set your minimum and maximum trade sizes, minimum net profit, daily loss limit, and reserve floor. Select separate wallets for Wallet A and Wallet B.

Surge evaluates the full round trip on every price update. It subtracts pool fees, price impact, batcher fees, network fees, Surge fees, and a 15% safety buffer. It trades only when the expected result meets your minimum net profit.

### How execution works

1. Surge builds the buy and sell legs when it detects an opportunity.
2. Both transactions are signed and submitted together.
3. Surge records profit after both legs fill.

If only one leg fills or submits, the opportunity becomes **Partial**. Use **Force close** to exit the resulting one-sided position after cancelling any parked order.

### Risks

Parallel execution reduces timing risk. It does not remove fill risk. One leg can fill while the other fails. Maintain Wallet B's token inventory and set a daily loss limit.

See [Signing and approvals](/core-concepts/signing-and-approvals) for how strategy trades are signed.


# Cadence (volume)

A Cadence strategy executes a pre-planned schedule of buys and sells of one token over 12, 24, 48 or 72 hours, spread across up to five of your strategy wallets. You set the total buy volume, the total sell volume and a trade-size range; Surge plans every order's size, time and wallet up front and then asks you to sign each one as it comes due.

Cadence is a **volume-executing** strategy. It does not read the market or take a view on price; its purpose is to put a specified amount of trading through a pool on a schedule. Its entire cost is fees and price impact, and it has no offsetting profit mechanism by design.

### What it is and when to use it

Use Cadence when you need a defined amount of buy and sell activity in a token over a defined period, with the trades spread out in time and distributed across several wallets. Set buy and sell totals equal if you want to end roughly where you started in token terms; the ADA difference will be the fees.

### How it works

**Planning (once, at creation).** Surge divides the duration into 30-minute windows (47 windows for 24 hours) and plans at most 10 orders per window, so a 24-hour schedule holds at most 470 orders. It then:

1. checks the request is feasible — both totals fit within the trade-size range and the order ceiling — and tells you which constraint binds if not;
2. splits each side's total into individual order sizes inside your min–max range that add up exactly to the total, shuffled;
3. interleaves buys and sells so neither side clumps, deals them into windows (about five per window, never more than ten), and shuffles within each window;
4. spaces the orders inside each window evenly (at least 3 minutes apart), starts the first window one minute after creation, and varies the gaps between windows;
5. assigns wallets round-robin: order 1 sends from wallet 1 to wallet 2, order 2 from wallet 2 to wallet 3, and so on around the ring, so each order's sender is the previous order's receiver. With one wallet every order sends to itself.

The plan is deterministic for a given configuration, which is why the **Required balance** preview matches the schedule that actually runs.

**Running (on Surge's servers, every 15 seconds).** When an order's time arrives and your tab is connected to the strategy, Surge builds the swap — including a sweep of the sending wallet's remaining funds to the receiving wallet — and pushes it to your tab. Rules:

* one order in flight per strategy at a time;
* a 2-minute settle pause after each submitted order so the wallet-to-wallet sweep can land;
* if the funds are not where the plan expected (because an earlier order failed or was skipped), the order's sender and receiver are re-pointed to where the funds actually are;
* an order waits **2 minutes** for your signature, then is released and retried later; you can also **Decline** it;
* a build failure is retried with growing delays (30 s, 60 s, 2 min …); after **5** failed attempts the order is marked failed and you get a warning email and notification;
* an order more than **30 minutes** past its scheduled time is **skipped** permanently;
* when every order is completed, skipped or failed, the strategy is marked **Completed**.

### Set up Cadence

| Field              | What it means                          | Default | Limits and guidance                                                                                                              |
| ------------------ | -------------------------------------- | ------- | -------------------------------------------------------------------------------------------------------------------------------- |
| Asset              | The token, against ADA                 | —       |                                                                                                                                  |
| Duration           | Length of the schedule                 | 24 h    | 12, 24, 48 or 72 hours                                                                                                           |
| Total buy (₳)      | ADA of buying to execute               | —       | 0 or more; at least one side must be non-zero                                                                                    |
| Total sell (₳)     | ADA-equivalent of selling to execute   | —       | 0 or more                                                                                                                        |
| Min trade size (₳) | Smallest single order                  | —       | At least 1; a non-zero side must be ≥ this                                                                                       |
| Max trade size (₳) | Largest single order                   | —       | ≥ min; the order ceiling × max must cover each side                                                                              |
| Wallets            | 1–5 strategy wallets to rotate through | —       | All must be yours, unique, on this network                                                                                       |
| DEX                | Venue                                  | Minswap | `[VERIFY: whether the builder lets you pick another DEX; the create request has no DEX field and the server default is Minswap]` |

**Preview** shows the estimated order count, seconds between orders, estimated fees, net ADA (buy total − sell total − fees) and orders per wallet. If the request is infeasible it returns zeros with the reason instead.

**Required balance** walks the actual schedule to find the peak ADA the ring will need at any moment (peak of cumulative buys minus sells) and adds fees, deposits for the orders that can be in flight at once, and the pool fee on the total; for the sell side it converts the peak into a token quantity. Fund the *first* wallet in the ring with that.

### While it runs

* The detail page shows the schedule (windows and orders), each order's status, the linked wallets and the trade log.
* Order statuses: **pending** (planned, not due or waiting for a slot), **awaiting signature** (built and pushed to your tab), **submitted** (on chain, outcome pending), **completed**, **skipped**, **failed** (with a reason).
* **Pause** and **Resume** are server-side and persist across browsers — the only strategy where this is true. A paused strategy dispatches nothing; orders keep ageing and are skipped past 30 minutes. `[VERIFY: after Resume, reopen or refresh the strategy page so your tab rejoins the strategy; otherwise orders may not be pushed.]`
* Because signing is required, if your tab is closed the orders age out and are skipped with no notification. Keep the tab open for the whole duration.

### Fees example

A 2,000 ADA programme (1,000 buy, 1,000 sell) with trade sizes 40–90 ADA, about 31 orders of \~65 ADA:

| Per order                          | On-chain cost                  | Shown in history             |
| ---------------------------------- | ------------------------------ | ---------------------------- |
| Surge fee 0.2% × 65                | 0.13 ADA                       | 0.978 ADA (recorded minimum) |
| Batcher fee (Minswap)              | 2.00 ADA                       | 2.00 ADA                     |
| Network fee                        | \~0.20 ADA                     | 0.20 ADA                     |
| Pool fee \~0.3% (inside the price) | \~0.20 ADA                     | —                            |
| Deposit                            | 2 ADA locked, returned on fill | —                            |

Over 31 orders: about **78 ADA** of real fees (≈ 98 ADA as recorded), plus price impact on every order in whichever direction the pool moves against you. With equal buy and sell totals the expected end state is roughly the same token position and about 78 ADA less. See [Fee breakdown](/fees-tiers-and-staking/fee-breakdown).

### Wallet interaction

Funds walk around the ring: each order's proceeds and change are delivered to the next wallet, which sends the following order. Your browser wallet only funds the first wallet. Fill detection watches the *receiving* wallet, since that is where the batcher pays. When the strategy completes, the funds sit in whichever wallet the last order paid; use Send or Sweep to consolidate.

### Edge cases and failure modes

* **You miss a signature while connected.** The order returns to pending with an attempt counted and is retried; five attempts fail it. With the tab closed nothing is sent for signing at all — orders simply age out and are skipped after 30 minutes.
* **An order fails to build.** Usually funds are not in the expected wallet; Surge realigns to where they are and retries.
* **An order parks (non-Minswap).** The schedule order shows *submitted* and, after about 30 minutes, *completed* — because its placing transaction is on chain — even though the swap has not executed. Use the trade log's fill status (Open) to see it is parked, and cancel it there. The settle pause and the one-in-flight rule mean the schedule stalls behind it meanwhile.
* **Chain rejects a submission.** The order is failed immediately.
* **Editing a running strategy.** Volumes, duration and bounds can be edited, but the existing schedule is **not** re-planned — the plan and the settings diverge. Prefer stopping and creating a new strategy.
* **Dense schedules.** At 10 orders per window the schedule allows 3 minutes per order and the settle pause uses 2 of them; slow signing makes the schedule fall behind and orders start being skipped.
* **Archiving.** Pause first (a running strategy cannot be archived); delete removes the schedule and its orders.

### FAQ

**Why were orders skipped?** They were more than 30 minutes past their time with no signature — almost always a closed tab or a stalled parked order.

**Why did the sender/receiver change from the plan?** A previous order failed or was skipped, so the funds were still in an earlier wallet; Surge re-pointed the order so the ring stays intact.

**Does Cadence make money?** No. Its expected result is the fee bill plus price impact. The strategy page's P\&L shows realized cash flow from filled orders only.

**Can I use one wallet?** Yes; then every order sends to itself and there is no rotation.


# Managing strategies

Every strategy can be paused, resumed, stopped, archived, deleted and cloned, and each has a linked strategy wallet. The details differ by type in ways that matter — especially which pauses survive a page reload or a different browser.

### Where to manage them

* The **sidebar** lists every live strategy with a coloured status dot; click to open its detail page.
* The **dashboard** table lists active strategies with pause/view buttons and drops stopped or completed ones.
* The **list pages** (Trading → Cadence, DCA, Arbitrage) filter by status and search by name, asset or key. Grid and Rule-based have no list page; reach them from the sidebar or dashboard.
* The **Archived** page shows terminal, read-only strategies.

### Statuses

| Status    | Meaning                                                                                                                                         |
| --------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| Running   | Active. Each type also shows a finer reason when it is temporarily held (out of range, socket down, awaiting levels…) — see the strategy's page |
| Paused    | Held by you or by a condition; resumes automatically (conditions) or when you click Resume (your pause, circuit breakers)                       |
| Stopped   | Ended by you, or by an arbitrage risk stop. Not restarted automatically                                                                         |
| Completed | Set automatically only for Cadence, when every scheduled order is terminal                                                                      |
| Archived  | Terminal and read-only; kept for records                                                                                                        |

### Pause and resume

| Strategy         | Where the pause lives                                                     | Survives reload / another browser?                                                                                                                |
| ---------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| Cadence          | Surge server                                                              | **Yes**                                                                                                                                           |
| Grid, Rule-based | Your browser (and the server pauses on its own when your tab disconnects) | No — a pause you set is local to this browser; the server still considers the strategy running and will resume trading in any other connected tab |
| Arbitrage        | Your browser (the server stops looking while no tab is connected)         | No                                                                                                                                                |
| DCA              | Your browser (the timer runs there); **Stop** is saved on the server      | No (pause); yes (stop)                                                                                                                            |

Circuit-breaker pauses on grid and rule-based are server-side and need an explicit **Resume**.

**Pause All** in the header is a hold-to-confirm (1.6 s) kill switch that pauses every strategy at once, with the same per-type semantics as above. **Resume All** reverses it.

### Stop

Stop ends trading. Open orders keep waiting for their fill or refund and are still shown; parked orders still need cancelling. Stopping does not move funds. A stopped strategy can be archived.

For arbitrage, a strategy is also stopped automatically when it hits its daily loss limit or three consecutive losses.

### Archive

Archiving is **permanent and read-only**: the strategy leaves the live lists and nothing about it can be changed. `[VERIFY: whether archiving also releases the strategy wallet link; deleting does.]` It stays visible under Archived with its history, and can be **cloned** to create a fresh copy.

Rules: the strategy must not be running, and (for grid, rule-based, arbitrage and copy strategies) must have no order awaiting signature or open on chain. Cadence must be paused or completed. `[VERIFY: DCA can be stopped and archived from the Configuration tab.]`

### Delete

Delete removes the strategy and its history (orders, cycles, schedule) from Surge and releases its wallet. It does not touch on-chain funds or open orders — cancel parked orders and empty the wallet first. Deleted strategies do not appear under Archived.

### Clone

Grid, DCA, Arbitrage and Cadence strategies — live or archived — can be cloned into a pre-filled builder. Cloning is how you "edit" the settings that are immutable after creation (a grid's range, an arbitrage strategy's mode or wallets). `[VERIFY: rule-based plans have no clone option in the current build.]`

### Edit a running strategy

| Strategy   | Editable after creation                                                                             |
| ---------- | --------------------------------------------------------------------------------------------------- |
| Grid       | Name, description, boundary buffer                                                                  |
| Arbitrage  | Name, description, profit/size/loss/reserve settings, allowed DEXes, status                         |
| Rule-based | Name, description; levels (add/edit/delete/re-enable)                                               |
| DCA        | Name, description, sizes and interval `[VERIFY: exact editable set]`                                |
| Cadence    | Name, description, volumes, duration, bounds, wallets — but the existing schedule is not re-planned |

### Linked wallets

Each strategy's **Linked wallet** tab shows the strategy wallet, its balances and its orders. One wallet per strategy; Surge prunes links to strategies that no longer exist. A wallet whose key is not in this browser shows as *Not connected* and cannot sign — reconnect it from its key file.

### Drafts

A builder keeps what you typed while you move around inside Surge (for example to generate a wallet) and clears it on a full page reload or after you deploy.

### Duplicate strategies

A second live grid, arbitrage or cadence strategy with exactly the same wallet and settings as an existing one is refused. Archive the old one first, or change something.


# Order statuses

Every order in Surge shows one of six statuses: **Submitted, Open, Filled, Cancelled, Dropped, Unknown**. "Open" is normal for 1–2 minutes; after 3 minutes it is flagged as **stuck**.

### The statuses

| Status        | What it means                                                                                                                               | Typical duration     | Your funds                                                     |
| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | -------------------------------------------------------------- |
| **Submitted** | Surge broadcast your signed transaction; it has not yet appeared in a block                                                                 | Under a minute       | Committed; the transaction is in the mempool                   |
| **Open**      | The transaction is in a block. Your order is sitting at the DEX waiting for the batcher                                                     | 1–2 minutes normally | Locked in the order at the DEX                                 |
| **Filled**    | The batcher executed the order and paid your wallet                                                                                         | Final                | Proceeds in your wallet (the payout address), deposit returned |
| **Cancelled** | The order was returned without executing — either the DEX refunded it (Minswap, when the price moved past your minimum) or you cancelled it | Final                | Back in the funding wallet, minus network fees                 |
| **Dropped**   | The transaction never got into a block; the network discarded it                                                                            | Final                | Never left your wallet                                         |
| **Unknown**   | Surge could not find the order inside the transaction, so it cannot track the fill automatically                                            | Until you check      | Check the transaction on Cardanoscan                           |

There is no separate "Refunded" status: a DEX refund and a user cancel look the same on chain and both show as Cancelled.

### Stuck orders

An **Open** order older than **3 minutes** is labelled stuck. The Recent activity table and the wallet detail page then show a **diagnosis**:

| Diagnosis                       | Meaning                                                                           | What to do                                             |
| ------------------------------- | --------------------------------------------------------------------------------- | ------------------------------------------------------ |
| Waiting for the batcher         | Under 3 minutes; normal                                                           | Wait                                                   |
| Fillable — batcher running late | The pool would still pay at least your minimum; the batcher just hasn't got to it | Wait a little longer                                   |
| Won't fill                      | The pool now pays less than your minimum (the shortfall is shown in basis points) | Cancel and reclaim, or wait for the price to come back |
| Unknown                         | Surge has no minimum on record for this order (manual swaps), or no pool snapshot | Check the price; cancel if it has clearly moved        |

The precise "fillable / won't fill" diagnosis is available for strategy orders that recorded their minimum; plain manual swaps get "waiting" then "unknown".

### Strategy-level steps

Strategy pages show finer, strategy-specific steps layered on top of these statuses:

* **Grid rungs:** armed → pending build → pending sign → submitted → (filled → re-armed) / cancelling.
* **Rule levels:** armed → pending build → pending sign → submitted → armed or spent; failed; disabled.
* **Arbitrage opportunities:** detected → buying → selling → completed; executing (parallel); partial; abandoned.
* **Cadence orders:** pending → awaiting signature → submitted → completed / skipped / failed.

Each is explained on the strategy's page.

### Transaction confirmation and order fill

These are different. "In a block" (Submitted → Open) says your *order was placed*. "Filled" says the batcher *executed* it. An order can be confirmed on chain and never fill. The transaction status feed pushes "status updated" toasts as your transaction is seen in a block and then finalised; the fill status comes separately from watching the chain for the batcher's transaction. See [Fills and refunds](/orders-and-transactions/fills-and-refunds).

### Where statuses appear

* **Dashboard → Recent activity** and the **Activity** page: every order with status, diagnosis and a "Cancel & reclaim" action when applicable.
* **Strategy trade logs**: the strategy's own orders.
* **Wallet detail page**: orders placed from that wallet, plus a Recover Stuck Order dialog.
* **Order status pushes**: arbitrage strategies push live order status changes to the dashboard without a reload.


# Fills and refunds

Surge learns that an order filled by watching the blockchain for the batcher's transaction that spends your order, then checking what it paid to your wallet. Fills normally show within seconds of landing on chain; a backstop re-checks every open order every 30 seconds. A refund is detected the same way and shown as **Cancelled**.

### How a fill is detected

1. When your order is submitted, Surge records exactly which output of your transaction is the order (the one at the DEX's order address) and starts watching it.
2. Surge's chain indexer notices when that output is spent and reports the spending transaction to Surge immediately. Independently, a reconciler re-checks every watched order that is older than 20 seconds, 25 at a time, every 30 seconds, and asks the chain directly.
3. Surge sums everything that transaction paid to your payout address in the asset you were buying.
4. It classifies the outcome (below) and records it once. A second report of the same fill is ignored.
5. The order's status updates and the owning strategy reacts (grid re-arms the rung, arbitrage builds the sell leg, and so on).

The payout address is the address written in the order — normally the wallet that placed it, but in parallel arbitrage and cadence rotation it is a different wallet of yours, and Surge watches that one.

### How Surge tells a fill from a refund

| What the spending transaction paid you                                           | Outcome                                                                                                                                                                                                       |
| -------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| The asset you were buying, in at least half of the order's minimum               | **Filled**                                                                                                                                                                                                    |
| Nothing                                                                          | **Cancelled** (refund or your cancel)                                                                                                                                                                         |
| For a sell: your tokens came back, and no plausible proceeds                     | **Cancelled** — a genuine sell never returns the sold token                                                                                                                                                   |
| The asset you were buying, but less than half the minimum                        | Not counted as a fill. Surge stops watching and leaves the order **Open** for you to check — it will not guess                                                                                                |
| Proceeds plus a dust amount of the token (batchers sometimes return a few units) | **Filled** — for strategy orders, which record their minimum. A *manual* sell has no recorded minimum, so token dust makes it look like a cancel and it may show as **Cancelled** even though the ADA arrived |

The "half the minimum" rule protects against reading an unrelated payment or a partial scoop as a full fill.

### When two orders share a batcher transaction

Batchers fill many orders at once. If one batcher transaction consumes **two or more of your orders paying to the same wallet**, Surge cannot tell which proceeds belong to which order. It marks both **ambiguous**, retries the classification up to 5 times, and if the ambiguity persists, stops watching and leaves them Open for manual review. Your funds are in your wallet either way; only the bookkeeping is unresolved. This is why strategies space orders from one wallet at least two minutes apart.

### Auto-refunds: Minswap only

If the price moves past your order's minimum before the batcher arrives:

* **Minswap** refunds the order to the funding wallet. It shows as Cancelled within a few minutes.
* **SundaeSwap, WingRiders, Splash** do nothing. The order stays Open until you cancel it. See [Cancelling stuck orders](/orders-and-transactions/cancelling-stuck-orders).

### Finality and reorganisations

A fill is marked **final** once 10 further blocks have been added after it (about 3–4 minutes). If the chain reorganises and drops a block containing a fill, Surge flags that fill for review; it does not silently reverse the strategy's bookkeeping.

### When Surge stops watching

* After a fill or refund is recorded.
* After 5 ambiguous attempts.
* When the proceeds are implausibly small (above).
* After **24 hours** with no batcher activity at all. The order is presumably still open on chain and still yours to cancel — check the wallet detail page.

### What you see

* **Filled** rows show the amount received, the effective price, and the fill transaction hash (linked to Cardanoscan).
* **Cancelled** rows show the refund/cancel transaction hash.
* An order that Surge could not locate inside its transaction (rare) shows **Unknown** and is not watched — check it on Cardanoscan.

### Delays you may notice

* Fill detection depends on Surge's chain indexer keeping up; the backstop covers a missed event within 30 seconds.
* The transaction-confirmed toast ("in block") can arrive before or after the fill shows, since they come from different watchers.
* Balances on the Wallets page refresh every minute; a fill can show in the trade log before the balance updates.


# Cancelling stuck orders

A stuck order is one still **Open** more than 3 minutes after placement. On Minswap it will refund itself if it cannot fill; on SundaeSwap, WingRiders and Splash it stays open until you cancel it. Cancelling means signing a transaction that takes your own order back out of the DEX and returns the funds to your wallet, minus one network fee.

### Per-DEX behaviour

| DEX        | If the order cannot fill                                                                             | You need to cancel?                                | Special requirements                                                                   |
| ---------- | ---------------------------------------------------------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------------------------------------------- |
| Minswap    | Refunded automatically to the funding wallet                                                         | Usually not; you can still cancel while it is open | —                                                                                      |
| SundaeSwap | Parks indefinitely                                                                                   | Yes                                                | —                                                                                      |
| WingRiders | Parks; the order also expires 20 minutes after placement, but expiry does not return funds by itself | Yes                                                | —                                                                                      |
| Splash     | Parks indefinitely                                                                                   | Yes                                                | The signing wallet must hold a plain-ADA coin of at least 5 ADA to serve as collateral |

"Parks" means the funds are locked in the order on chain. Only the wallet named as the order's owner can cancel it; nobody else, including Surge, can move them.

### Where to cancel

* **Strategies (grid, rule-based, arbitrage):** after an order has been open for 5 minutes on a non-refunding DEX, Surge builds the cancel for you and pushes a **Cancel ready** prompt to the strategy page (and, for arbitrage, an "opportunity update" with the cancel attached). Approve it and the funds return; the strategy re-arms. Arbitrage also re-offers cancels for any parked leg for up to 6 hours after the opportunity ended.
* **Manual swaps and any order:** Dashboard → Recent activity, or the Activity page, or the wallet detail page → **Recover stuck order**. The dialog shows the diagnosis (minimum to fill, what the pool pays now, the shortfall) and a **Cancel & reclaim funds** button. It first checks on chain whether the order is still open.
* **Cadence:** cancel from the strategy's trade log row.

### What happens when you cancel

1. Surge locates the order on chain and reads its owner from the order's datum. It tries your connected wallet and your strategy wallets as candidates; the one whose key matches the datum (payment or stake key) is the signer. Wallets that share a stake key with the funding address are accepted, because wallets hand out many receive addresses.
2. Surge builds the reclaim transaction and, for the matching wallet, either your extension prompts (browser wallet) or the transaction guard checks it (strategy wallet — cap: locked value plus 10 ADA).
3. You sign; Surge broadcasts; a "cancel" entry is added to your history.
4. The cancel spends the order, so the fill watcher sees it and marks the order **Cancelled**. This takes a block or two; the status does not change instantly.

### When cancelling fails

| Message                                                | Cause                                                                                      | What to do                                                                                                                  |
| ------------------------------------------------------ | ------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------- |
| Order not found / may already be cancelled or executed | The order output has already been spent — it filled or was refunded while you were looking | Refresh; check the trade log                                                                                                |
| Bad inputs (chain rejected)                            | Same race: the batcher filled it between build and submit                                  | Nothing — you were filled                                                                                                   |
| Not owned                                              | None of your wallets matches the order's owner                                             | The order was placed by a wallet whose key is not in this browser (reconnect it from its key file), or it is not your order |
| Unsupported DEX                                        | The DEX cannot be cancelled through Surge                                                  | —                                                                                                                           |
| Collateral required (Splash)                           | No plain-ADA coin ≥ 5 ADA in the wallet                                                    | Send 5 ADA to the wallet as a separate transfer, then retry                                                                 |
| Lookup unavailable                                     | The chain lookup timed out                                                                 | Retry in a moment                                                                                                           |

### After 24 hours

Surge stops watching an order that no batcher has touched for 24 hours. It is still open on chain and still cancellable from the wallet detail page; its status in Surge just will not update on its own once cancelled. `[VERIFY: whether a cancel after the 24-hour cutoff is reflected in the trade log.]`

### Avoid parked orders

* Prefer Minswap for one-off swaps if you are not going to watch them.
* Use a slippage tolerance that reflects how fast the token moves; a tight tolerance on a volatile token parks more often.
* Keep your tab open while strategy orders are out, so Cancel ready prompts can reach you.


# Activity and trade history

The **Activity** page (sidebar → Activity) lists every transaction Surge has submitted for you — swaps, strategy orders, funding transfers, sends and cancels — newest first, 20 per page, refreshed every 15 seconds. Each row expands to show fees, amounts and links to the transaction on Cardanoscan.

### What a row shows

| Column    | Meaning                                                                                                                   |
| --------- | ------------------------------------------------------------------------------------------------------------------------- |
| Side      | Buy, Sell, or Transfer (funding, send, cancel)                                                                            |
| Status    | Submitted / Open / Filled / Cancelled / Dropped / Unknown — see [Order statuses](/orders-and-transactions/order-statuses) |
| Type      | Manual swap, Grid, DCA, Arbitrage, Rule-based, Cadence, Send funds, Order cancel                                          |
| Strategy  | The strategy's name, if any                                                                                               |
| DEX       | Venue                                                                                                                     |
| Pair      | Token / ADA                                                                                                               |
| Input     | What you put in                                                                                                           |
| Output    | What you received (Filled rows) or expected (Open rows)                                                                   |
| ADA value | The ADA side of the order                                                                                                 |
| Fee       | Batcher + Surge + pool + network, in ADA                                                                                  |
| Time      | Submission time                                                                                                           |

Expanding a row shows the fee breakdown card, amount placed and received, the effective price and how it compares with the quote ("vs. quote %"), the executing wallet, and the order, fill and refund transaction links. Token amounts are formatted with the token's registered decimals; if a token's decimals are unknown the amount is left blank rather than shown in raw units.

### Filters and the 24-hour summary

Filters: side, status, type, DEX, pair, token, amount range, date range. An active-filter badge and **Reset all** sit above the table.

Filtering runs on **the page you are looking at**, not on your whole history. The 24-hour summary tiles (trades, volume, fees, average fee per trade) likewise summarise the rows on the current page that fall in the last 24 hours, and exclude transfers. For a full-account picture use the Dashboard and Portfolio pages.

### Calendar view

The calendar toggle shows a monthly heat-map of realized P\&L per day (from the same data as the Portfolio page). Future months are blocked.

### Export

**Export CSV** downloads the rows on the current page. Cells beginning with `=`, `+`, `-` or `@` are prefixed with an apostrophe so a spreadsheet does not execute them.

### Other places history appears

* **Dashboard → Recent activity**: the latest 20 orders with stuck-order recovery.
* **Strategy detail → Trade log**: that strategy's orders, plus strategy-specific views (grid cycles and rungs, rule executions, arbitrage opportunities and the decision Activity feed, cadence schedule).
* **Wallet detail**: on-chain transaction history for one wallet (from the chain, so it includes transactions Surge did not make), paginated.
* **Cardanoscan links** on every hash for the on-chain view.

### What history does not include

Orders you placed outside Surge with the same wallet appear only in the wallet detail page's on-chain history, not in Activity. Surge's own records begin at the moment a transaction is submitted through Surge; a transaction that was submitted but whose record failed to save is alerted to Surge's team and may be missing from your list until fixed.


# Profit and loss (P\&L)

Surge measures profit from **actual on-chain fills only**, per completed round trip, and reports "unknown" rather than a guess when it cannot measure. Realized P\&L that feeds the dashboard and portfolio totals is computed for **Grid, Arbitrage and Rule-based**. Cadence shows a realized cash-flow figure on its own page (ADA from filled sells − ADA spent on buys − fees) that is not included in the totals. DCA reports volume and fees, not profit. Nothing is marked to market except the grid's own unrealized figure and the portfolio value tile.

### What realized P\&L means

There is no average-cost or FIFO accounting. Each strategy pairs an opening trade with its closing trade at the moment the closing trade fills and records the ADA difference, minus that pair's Surge, batcher and network fees. Analytics then simply add those numbers up.

| Strategy   | A "round trip" is                               | Realized P\&L formula                                                                                         |
| ---------- | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| Grid       | One rung's open leg and close leg (a cycle)     | ADA received − ADA paid − Surge fee − batcher fee − network fee (both legs)                                   |
| Arbitrage  | The buy leg and the sell leg of one opportunity | ADA received (net of the returned deposit) − ADA spent − round-trip Surge, batcher and network fees           |
| Rule-based | Each filled order contributes on its own        | Sells: ADA received − fees; buys: −(ADA spent + fees). So a plan that only buys shows negative until it sells |

Pool fees are **not** subtracted, because they are already inside the fill prices. The 15% safety buffer that grid and arbitrage use when *deciding* to trade is a gate only and is never subtracted from realized P\&L.

### Coverage: measured and unmeasured

Every P\&L figure carries a coverage count: how many round trips were **measured** and how many closed but could not be measured (for example a filled sell whose received amount was never recorded). The dashboard's P\&L tiles and the Portfolio page's strategy breakdown show this. A strategy with zero measured round trips shows **no** P\&L number, not zero.

### Wins and win rate

Win rate = measured round trips with positive realized P\&L ÷ measured round trips. For rule-based plans, every buy counts as a negative contribution, so a buy-heavy plan's win rate is structurally low; compare it only with other rule-based plans.

### Unrealized P\&L

* **Grid Overview** shows unrealized P\&L: tokens currently held by open cycles, valued at the reference pool's mid price, minus the ADA those cycles paid.
* **Portfolio value** on the dashboard and Portfolio page is the current market value of all strategy wallets' holdings — a valuation, not a P\&L.
* Arbitrage partials, unsold rule-based buys and DCA holdings are not valued anywhere as P\&L.

### Where each number appears

| Screen                   | Number                                                                                  | Source                                                                                                                                                                                                       |
| ------------------------ | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Dashboard stats          | Today's and 30-day realized P\&L with coverage; portfolio value                         | Realized: sum over measured round trips closed in the window. Value: wallet balances × current prices                                                                                                        |
| Dashboard strategy table | P\&L per strategy                                                                       | The same "estimated P\&L" the strategy page shows; realized if measured, otherwise blank                                                                                                                     |
| Strategy page            | Current P\&L, win rate, fees paid                                                       | Realized P\&L for that strategy; fees paid sums Surge + batcher + pool + network across all its orders                                                                                                       |
| Portfolio page           | Realized 30-day P\&L, all-time and 7-day return, per-strategy breakdown, daily calendar | Realized series by close date; return = realized ÷ total ADA ever spent on buys across **all** strategies (including DCA and Cadence, which have no P\&L), so it reads low if you run un-measured strategies |
| Activity calendar        | Realized ADA per day                                                                    | Same daily series                                                                                                                                                                                            |

### Expected differences

* **Fees paid vs P\&L** on a strategy page differ by the pool fees (included in the first, inside prices in the second).
* **Recorded Surge fee vs paid** on orders under \~489 ADA — the recorded fee has a 0.978 ADA minimum, so P\&L on small round trips is slightly understated. See [The Surge fee and its minimum](/fees-tiers-and-staking/surge-fee-and-minimum).
* **Grid realized P\&L uses Surge's standard batcher and network fee figures**, not the exact on-chain amounts; treat it as accurate to a fraction of an ADA per cycle.
* **Refunded rule-based attempts** contribute nothing to P\&L, including their fees; the plan's "fees paid" does count them.
* **Parallel arbitrage** can end a round trip holding slightly more or fewer tokens than it started with; that difference is recorded but not valued.
* **Portfolio value** excludes your connected browser wallet and any token whose decimals are unknown (those show a "No decimals" badge).

### Dates

Realized P\&L is dated by the day the round trip was **closed** (the day the closing fill was recorded, which is normally the fill day). Days with no closes are absent from the series rather than zero.


# Dashboard

The dashboard is the home screen: portfolio value, realized P\&L, your active strategies, recent orders, alerts, and the entry point for creating a strategy.

<figure><img src="https://3209983894-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmMfUiFIhCCXdhd3FmcPK%2Fuploads%2FAkSyoTa30ex5oF6c3PLC%2FScreenshot%202026-09-03%20at%201.07.34%E2%80%AFPM.png?alt=media&amp;token=214f27bb-e6b8-48c2-a571-3cc60a5f548d" alt=""><figcaption></figcaption></figure>

### Stats tiles

| Tile                  | What it shows                                                                                                                        |
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| Portfolio value       | Current market value of every strategy wallet (your connected browser wallet is excluded), from live wallet balances and pool prices |
| Today's realized P\&L | Sum of measured round trips closed today (UTC), with a measured/unmeasured coverage note                                             |
| 30-day realized P\&L  | Same, over 30 days                                                                                                                   |
| Trading KPIs          | Order count, volume and fees, all-time and last 24 hours                                                                             |

See [Profit and loss](/orders-and-transactions/pnl) for how these are computed and what they exclude.

### Active strategies

A sortable, filterable table (up to 8 rows) of running and paused strategies: type, name, status dot, pair, DEX's, P\&L, 24-hour volume, trade count, last activity, and **View** / **Pause** buttons. Stopped and completed strategies are not listed; find them on the list pages or under Archived.

The status dot combines the server's view with any pause you set locally in this browser — see [Managing strategies](/strategies/managing-strategies#pause-and-resume--what-actually-persists).

### Recent activity

The latest 20 orders with status, diagnosis for stuck orders, expandable details, Cardanoscan links and **Cancel & reclaim** where applicable. While any order awaits settlement the table refreshes every 15 seconds. See [Order statuses](/orders-and-transactions/order-statuses).

### Alerts

The alerts sidebar and system-health dots surface: strategy execution errors, arbitrage socket errors per strategy, unexpected pauses, a strategy wallet below 5 ADA, wallet balance lookup failures, strategy conflicts, and failed orders. Alerts are recomputed from live state; dismissing one hides it until the state changes again.

### Create a strategy

**New strategy** opens the type picker: Grid, DCA, Arbitrage, Rule-based, Cadence. Types not yet available are marked "Coming soon". `[VERIFY: the picker may show placeholder types that do not exist; confirm the list before publishing.]`

### Welcome tour

On first login a four-step tour (Overview, How it works, Your wallets, Safety) explains the non-custodial model and lets you try the Pause All button. `[VERIFY: whether it can be reopened later.]`

### Loading and errors

The dashboard shows a "Syncing markets" loader until stats, strategies and trades have all loaded; a slow trades query delays the whole page. Each of the three sources shows its own error toast if it fails; the rest of the page still renders.


# Portfolio

The Portfolio page aggregates every **strategy wallet** you own: total value, allocation by token, per-token holdings, realized P\&L by strategy, and a performance chart. Your connected browser wallet is deliberately excluded — the portfolio is what your strategies control.

<figure><img src="https://3209983894-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmMfUiFIhCCXdhd3FmcPK%2Fuploads%2FzuKOurKo6vnEHbxvmNFq%2FScreenshot%202026-09-03%20at%201.07.54%E2%80%AFPM.png?alt=media&amp;token=98374805-5dd4-4ae4-a77f-512f3d9a5a41" alt=""><figcaption></figcaption></figure>

### Sections

| Section                 | What it shows                                                                                                                                  | Source                                                                                                    |
| ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| Stats                   | Total value in ADA, realized 30-day P\&L with coverage, number of assets                                                                       | Live wallet balances × current pool prices; realized P\&L from measured round trips                       |
| KPI cards               | Trading activity (orders, volume), fees paid (Surge / batcher / network / pool and as % of volume), returns (all-time, 7-day, measured trades) | Your order records                                                                                        |
| Strategy P\&L breakdown | Realized P\&L, win rate, closed count and an "unmeasured" badge per strategy, with a total                                                     | Grid, Arbitrage and Rule-based only                                                                       |
| Performance chart       | Portfolio value over time, selectable range and interval                                                                                       | Three-hourly snapshots of your strategy wallets' value `[ENV: snapshots run in production only]`          |
| Allocation              | Donut of holdings by value; centre shows "Deployed %" (share not in ADA)                                                                       | Live balances                                                                                             |
| Holdings table          | Token, amount, price, value, share — sortable                                                                                                  | Live balances; tokens with unknown decimals show a **No decimals** badge and contribute zero to the total |

### How value is computed

Each wallet's ADA plus, for each token, amount × the deepest pool's ADA price. Prices come from Surge's price feed and are cached; a **Sync** button forces a refresh of balances and prices. A price that is missing, from a pool below 1,000 ADA, or older than 24 hours is treated as unavailable and the token is excluded from the total (a banner appears if price fetching failed).

### Returns

* **All-time return** = all-time realized P\&L ÷ total ADA spent on buys across all your orders.
* **7-day return** = last 7 days' realized P\&L ÷ the same denominator.

Because the denominator includes buys from DCA and Cadence — which have no P\&L calculation — running those strategies lowers the displayed return without any loss having occurred. Read the per-strategy breakdown for the measured picture. See [Profit and loss](/orders-and-transactions/pnl).

### Performance chart and stats tile

The chart's series comes from periodic value snapshots of your strategy wallets, while the headline tile is computed live from balances, so the two can disagree slightly; the chart's tooltip says so. `[VERIFY: the snapshot series covers strategy wallets only and excludes the connected wallet, matching the tile.]`

### Empty and error states

Not signed in → connect prompt. No strategy wallets → "No wallets found". Price fetch failure → banner; values that could not be priced are omitted rather than shown as zero.


# Manual swaps

The Swap page makes a one-off trade from your browser wallet or any of your strategy wallets, on one DEX or split across several. You get a live quote with price impact and a full fee breakdown, then sign once (or once per leg for a split).

<figure><img src="https://3209983894-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmMfUiFIhCCXdhd3FmcPK%2Fuploads%2FDCZvWNRMlIJpqfG4ODW7%2FScreenshot%202026-09-03%20at%201.07.45%E2%80%AFPM.png?alt=media&amp;token=efd5464c-9b93-4193-abfe-c9a07aa7939e" alt=""><figcaption></figcaption></figure>

### Single-DEX swap

1. Choose the **wallet** to trade from: your connected browser wallet or any active strategy wallet.
2. Choose the token pair. One side must be ADA.
3. Enter the amount. **Max** fills in the largest buy your wallet can afford after fees and deposits (for a sell, your full token balance).
4. Pick a **DEX** or leave the aggregator to choose.
5. Set **slippage tolerance** (default 0.5%). This becomes the on-chain minimum-received.
6. Review the quote: expected output (walked through the pool curve, so price impact is included), price impact, and the fee breakdown — batcher, network, pool % and Surge fee.
7. Click Swap. Your browser wallet prompts to sign; a strategy wallet signs after the transaction guard checks the transaction.
8. The order appears in Recent activity as Submitted → Open → Filled. See [Order statuses](/orders-and-transactions/order-statuses).

Quotes refresh as you type (with a short delay) and are considered fresh for 15 seconds. A built transaction is valid for 5 minutes; after that submitting fails with "Invalid or expired trade identifier" and you click Swap again to rebuild.

Buys are capped at 1,000,000,000 ADA. Sells need the token's decimals; if Surge cannot find them in the token registry it asks you to enter them.

### Split (aggregated) swap

Turn on **aggregator mode**. Surge quotes the best single DEX *and* an optimal split of your amount across eligible DEX's pools. It recommends the split only when its saving beats the additional legs' flat fees.

* **Buys only** (ADA in) in the current build, and only from a **strategy wallet**.
* Splash is never included in a split, because its minimum-received cannot be enforced per leg; if Splash is the only venue, the split is refused with an explanation.
* Legs smaller than 5 ADA are pruned.
* Each leg shows its share, expected output, minimum output, price impact and fees; the order-level impact is the size-weighted average. The default slippage for split quotes is 1%, maximum 50%.
* You can **exclude DEX's** from the aggregator in the swap preferences.

**Execution.** Surge builds the legs in a chain — each leg spends the change of the previous one — so all can be signed before any is on chain. Your strategy wallet must hold the total amount plus fees plus 5 ADA per leg plus a 2 ADA buffer **in a single coin**; a wallet fragmented into many small coins is refused with "consolidate your funds into a single UTxO first" (send the wallet's whole balance to itself to consolidate). Then each leg is signed and submitted in turn with a progress indicator.

If a later leg fails to submit after earlier ones succeeded, the earlier ones stand and the later ones must be re-quoted; Surge does not roll back.

### Fees

The Surge fee is 0.2% of the ADA side per order (per leg in a split), reduced by your tier; see [Fee breakdown](/fees-tiers-and-staking/fee-breakdown) for the worked example. The fee preview uses your account's rate, which the page fetches for the chosen DEX and pair.

### Safety

Every swap from a strategy wallet passes the transaction guard: the ADA spend is capped at the amount you typed plus an allowance for fees, and for a sell only the token you are selling may leave the wallet. See [Signing and approvals](/core-concepts/signing-and-approvals).

### If the order does not fill

Manual swaps carry no minimum on Surge's records, so a stuck one is diagnosed as "unknown" rather than "won't fill". On Minswap it refunds by itself; elsewhere use **Cancel & reclaim** on the order row. See [Cancelling stuck orders](/orders-and-transactions/cancelling-stuck-orders).


# Manage strategy wallets

The Wallets page manages your strategy wallets: create them, back them up, fund them, see their balances and orders, link them to strategies, and empty them. For what a strategy wallet is and where its key lives, read [Wallets in Surge](/core-concepts/wallets-in-surge) first.

### The wallet list

Each wallet card shows its label, address, ADA and token balances (refreshed about every minute, and only accepted as "zero" after two consecutive empty readings so a blip never shows a drained wallet), connection status (Connected / Not connected / Not backed up), the linked strategy if any, and actions. A capacity bar shows how many of the 20 wallet slots are used. A dismissible "how wallets work" explainer sits at the top.

### Wallet actions

| Action                | What it does                                                                                                                                                                |
| --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Generate              | Creates 1 or more new wallets (count preset or slider), with a label and optional immediate strategy assignment. Asks you to choose a folder for key files first            |
| Import                | Drag-and-drop a CSV/JSON export (contains private keys) to add wallets from another device                                                                                  |
| Export / Back up all  | Downloads every wallet's key. Store safely                                                                                                                                  |
| Back up (per wallet)  | Registers the wallet with Surge (proof of ownership by signature) `[VERIFY: whether this also downloads the key file, or whether "Download key file" is a separate action]` |
| Fund                  | Sends ADA and optionally one token from your browser wallet into this wallet; browser wallet signs                                                                          |
| Send                  | Builds a transfer out of this wallet to any address; strategy wallet signs after the transaction guard                                                                      |
| Receive               | Address and QR code                                                                                                                                                         |
| Sweep                 | Opens Surge's separate sweep tool in a new tab; you carry the key file across yourself                                                                                      |
| Rename                | Label, up to 64 characters                                                                                                                                                  |
| Activate / Deactivate | Hide from builders and the swap page without deleting                                                                                                                       |
| Delete                | Removes the wallet from Surge and this browser. Empty it first                                                                                                              |
| Refresh balances      | Forces a re-read                                                                                                                                                            |

### Wallet details

Click a wallet for: the token table with values, an estimate of the minimum ADA the wallet must keep to hold its tokens, on-chain transaction history (paginated), the linked strategy resolved from every strategy type, and additional actions: **link / unlink strategy**, **reconnect from key file**, **export keys**, and **Recover stuck order** for any order from this wallet that is still open at a DEX (see [Cancelling stuck orders](/orders-and-transactions/cancelling-stuck-orders)).

The Send form warns when the amount would leave less ADA than the wallet's tokens require, and refuses amounts that overshoot the balance.

### Funding tips

* Fund with at least the builder's **Required balance** plus a few ADA. Grid needs roughly 10–12 ADA of spare ADA at all times to keep going.
* A funding transfer takes a minute or two to land; a confetti banner confirms it once the balance rises.
* Tokens whose decimals are unknown to Surge cannot be amount-entered in the Fund form until the registry knows them.

### Sweep funds

The dashboard's sweep-profits dialog is not functional in the current build. To move funds out of a strategy wallet use **Send** or **Sweep** here.


# Notifications and alerts

Surge tells you about important events in three ways: **in-app notifications** (the bell in the header), **email** (for strategy warnings, once you verify an address), and **toasts** for live events while the tab is open. Browser push notifications can be enabled in Settings, but `[VERIFY: the current build registers a placeholder device token, so push messages are not actually delivered]`.

### In-app notifications

The bell shows two tabs: **Notifications** (persisted messages from Surge) and **System alerts** (live health issues). Unread state is tracked per notification in this browser. Messages you will see:

| Event                                         | Message                 |
| --------------------------------------------- | ----------------------- |
| Login                                         | Sign-in alert           |
| Email added or verified                       | Confirmation            |
| Staking epoch finalised with a reward for you | "New rewards available" |
| Staking payout sent                           | "Rewards sent"          |
| Cadence order failed 5 times                  | Strategy warning        |
| Broadcasts from Surge                         | Announcements           |

### Email

Settings → General → Notification settings. Enter an email, receive a 5-digit code (valid 5 minutes), enter it to verify. Verified emails receive **strategy warning** emails — for example when a Cadence order has failed repeatedly. Unsubscribe removes the address.

### Toasts and live events

While the tab is open, Surge shows toasts for order confirmations (only for transactions you placed), strategy errors, an arbitrage strategy stopped by its risk limits, signing prompts, session expiry, and network or socket problems. A **socket status pill** in the header aggregates the health of the live channels (price feed, each strategy type, transactions); hover for per-channel detail. The price chart shows LIVE / STALE / RECONNECTING / OFFLINE for the price feed.

### System alerts

Derived from live state and shown on the dashboard and in the bell's System alerts tab: strategy execution errors, per-strategy arbitrage connection errors, unexpected pauses, a strategy wallet under 5 ADA, balance-lookup failures, strategy conflicts, failed orders. They clear when the condition clears.

### What Surge does not notify

* A strategy that stopped trading because the tab was closed (Cadence skips orders silently).
* Grid or rule-based pauses (visible only on the strategy page and dashboard).
* Fills — check the trade log or the transaction toast.


# Settings

Settings → General holds notification settings, data management, signing automation and the screen wake lock. Settings → Notifications repeats the alert-channel section.

### Notification settings

Add and verify an email for strategy warning emails; unsubscribe removes it. See [Notifications and alerts](/dashboard-and-account/notifications-and-alerts).

### Data management

* **Export wallets** downloads every strategy wallet key. Do this before switching devices or clearing data. Save the export in a secure location on your device.
* **Import wallets** restores from an export.
* **Clear all data** erases Surge's local storage in this browser: the wallet list, cached strategy lists, drafts, preferences, and local pause flags. It does **not** touch anything on Surge's servers or on chain, but strategy wallets become unusable here until you import their key files. `[VERIFY: whether the encrypted key vault is cleared as well.]` Export first.

### Automate signing

On by default: strategy transactions that pass the transaction guard are signed without the approval window, so strategies run unattended while the tab is open. Off: a Signing Approval window waits for your click on every strategy trade. Resets to the default whenever you disconnect your wallet. See [Signing and approvals](/core-concepts/signing-and-approvals).

### Keep screen awake

Off by default. On: while at least one strategy is running (including a grid in a self-clearing pause), Surge asks the browser to hold a screen wake lock so the OS does not sleep the display. The lock is released when the tab loses focus or is hidden, and re-acquired when it returns. A header pill shows whether the lock is currently held. This does not keep a strategy running through a closed tab or a closed laptop lid.

### Alert channels

**Browser push** and **In-app** toggles, saved in this browser. Enabling push asks for browser notification permission. `[VERIFY: push delivery is not functional in the current build.]`

### What is stored in this browser

Strategy wallet keys (encrypted, in a separate vault store), the wallet list, the last strategies list (cached for up to 24 hours), pool prices, wallet connection, local pause/stop flags per strategy, DCA progress, funding-settle timers, swap preferences (aggregator mode, excluded DEX's), signing automation, wake-lock preference, notification read state, dismissed explainers, and the last-used tab on each strategy page. None of it is needed by Surge's servers; all of it goes with **Clear all data**.


# Fee breakdown

Every order placed through Surge pays five things: the **Surge fee** (0.2% of the ADA side), the DEX's **batcher fee** (a flat 1–2.5 ADA), the Cardano **network fee** (about 0.2 ADA), the DEX's **pool fee** (about 0.3%, inside the price you get), and a **refundable order deposit** (2 ADA, returned when the order fills or is cancelled). Only the first goes to Surge.

### The fee table

| Fee               | How much                                                                                                                                                                                                                                                                                                 | Who receives it                                           | When it leaves your wallet                                | Where you see it                                                  |
| ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- | ----------------------------------------------------------------- |
| **Surge fee**     | 0.2% of the ADA side of the order — the ADA you spend on a buy, or the ADA you expect to receive on a sell. Reduced by your staking tier. No on-chain minimum; a 0.978 ADA minimum applies to the *recorded* figure (see [The Surge fee and its minimum](/fees-tiers-and-staking/surge-fee-and-minimum)) | Surge                                                     | In the order transaction, as a separate output            | Fee breakdown on the swap page; "Surge fee" in every trade record |
| **Batcher fee**   | Minswap 2 ADA · SundaeSwap 1 ADA (V3 pools) or 2.5 ADA (V1) · WingRiders per pool, typically 2 ADA, max 5 · Splash as configured by Splash, 2 ADA if unknown                                                                                                                                             | The DEX's batcher operator                                | Locked into the order, paid when the batcher fills it     | "Batcher fee" line                                                |
| **Network fee**   | Set by the Cardano protocol from transaction size; Surge quotes and records \~0.2 ADA `[ENV: currently 0.2 ADA; configurable]`                                                                                                                                                                           | Cardano stake pools                                       | Deducted from the order transaction                       | "Network fee" line                                                |
| **Pool fee**      | The pool's liquidity-provider fee, typically 0.30% of the trade; some pools differ                                                                                                                                                                                                                       | The pool's liquidity providers                            | Never a separate payment — it is inside the exchange rate | "Pool fee" percentage on the swap page; recorded per trade        |
| **Order deposit** | 2 ADA on Minswap, SundaeSwap and WingRiders; none separately on Splash                                                                                                                                                                                                                                   | Nobody — it comes back to you with the fill or the refund | Locked with the order; returned by the batcher            | Included in "Required balance" previews; not a fee line           |

Cancelling a parked order pays one network fee. On Splash, cancelling also needs a plain-ADA coin of at least 5 ADA in the wallet as collateral (not spent unless the cancel script fails).

### Worked example: one manual buy

You buy 500 ADA worth of a token on Minswap from your browser wallet, at 0.5% slippage.

| Line                                                 | ADA                    |
| ---------------------------------------------------- | ---------------------- |
| Trade amount (goes into the pool)                    | 500.00                 |
| Surge fee 0.2% × 500                                 | 1.00                   |
| Batcher fee                                          | 2.00                   |
| Order deposit (returned with the tokens)             | 2.00                   |
| Network fee                                          | \~0.20                 |
| **Leaves your wallet when you sign**                 | **≈ 505.20**           |
| Deposit returned when the order fills                | −2.00                  |
| **Net cost of the trade**                            | **≈ 503.20**           |
| Pool fee 0.3%, already inside the tokens you receive | ≈ 1.50 worth of tokens |

Your all-in cost is therefore about 4.7 ADA on 500, or roughly 0.94%, of which Surge's share is 1 ADA (0.2%). At 100 ADA the same flat fees are 2.2 ADA plus 0.2 ADA Surge fee — about 2.7% — which is why small orders are expensive on every DEX regardless of Surge.

### Round trips

Grid cycles and arbitrage round trips are two orders and pay everything twice: two Surge fees, two batcher fees, two network fees, and two deposits (each returned). Around **5–7 ADA** per round trip before pool fees. See [Grid](/strategies/grid#fees-example), [Sequential arbitrage](/strategies/sequential-arbitrage), and [Parallel arbitrage](/strategies/parallel-arbitrage).

### Split (aggregated) swaps

When the swap page splits an order across several DEXes, each leg is its own order and pays its own batcher fee, network fee, Surge fee and deposit. The quote's "total fees" line sums batcher + network + Surge across legs; pool fees are inside each leg's expected output. The aggregator only recommends a split when the better price outweighs the extra flat fees. See [Manual swap](/dashboard-and-account/manual-swap).

### How fees appear in your records

Each trade record stores the Surge fee, batcher fee, network fee and pool fee. Analytics sum all four into "fees paid"; realized P\&L for grid, arbitrage and rule-based subtracts Surge + batcher + network but **not** the pool fee, because the pool fee is already inside the fill price. Expect the two numbers on a strategy page to differ by the pool fees. See [Profit and loss](/orders-and-transactions/pnl).

### Fees you do not pay

There is no subscription, no deposit or withdrawal fee, no fee for creating or holding a strategy, no fee on refunds beyond the network fee already paid, and no fee for staking or claiming rewards other than the network fee on the payout.


# Surge fee and minimum

The Surge fee is **0.2% of the ADA side of every order**, reduced by your staking tier. The minimum fee is **0.978 ADA** per order.

### How it is calculated

* **Buy (ADA → token):** 0.2% of the ADA you trade.
* **Sell (token → ADA):** 0.2% of the ADA you expect to receive.
* Your staking tier reduces the base rate. See [Tiers and fee discounts](/fees-tiers-and-staking/tiers-and-discounts).
* Surge charges the larger of the percentage fee or 0.978 ADA.

### Why the minimum is 0.978 ADA

Cardano requires each transaction output to meet its minimum value. Surge uses **0.978 ADA** as the minimum fee so the fee output meets that requirement.

| Trade size | Percentage fee | Surge fee |
| ---------- | -------------- | --------- |
| 1,000 ADA  | 2.00 ADA       | 2.00 ADA  |
| 489 ADA    | 0.978 ADA      | 0.978 ADA |
| 100 ADA    | 0.20 ADA       | 0.978 ADA |
| 20 ADA     | 0.04 ADA       | 0.978 ADA |

The minimum applies to fee previews, required-balance panels, trade records, and analytics.

### When your rate changes

Your rate is set when you create your account. If you subscribe to staking, Surge recalculates it every six hours from your staking snapshot. A tier change applies at the next snapshot.


# Tiers and fee discounts

Holding SURGE tokens and subscribing to staking places you in a tier that discounts the Surge fee on every order you place. The discount is applied to your account rate at the next six-hourly staking snapshot and stays until the following snapshot moves you.

### The tier schedule

| Tier     | SURGE held       | Surge fee discount | Effective fee (base 0.2%) |
| -------- | ---------------- | ------------------ | ------------------------- |
| Base     | 0 – 2,499        | 0%                 | 0.200%                    |
| Bronze   | 2,500 – 9,999    | 10%                | 0.180%                    |
| Silver   | 10,000 – 29,999  | 30%                | 0.140%                    |
| Gold     | 30,000 – 74,999  | 50%                | 0.100%                    |
| Platinum | 75,000 and above | 70%                | 0.060%                    |

`[VERIFY: this is the launch schedule as specified; the tier table that the current build seeds is Free 0 / Bronze 1,000 → 5% / Silver 5,000 → 10% / Gold 15,000 → 20% / Platinum 50,000 → 30%. Confirm the new rows are deployed before publishing.]`

Tiers are data on Surge's side and can be changed by Surge; the Staking page always shows the current table and your position in it.

### How you qualify

1. **Subscribe to staking** on the Staking page. Holding SURGE without subscribing earns no discount and no rewards — the snapshot only looks at subscribed accounts. See [Staking SURGE](/fees-tiers-and-staking/staking).
2. Every six hours Surge reads the SURGE balance across your connected wallet's stake address and all your verified strategy wallets.
3. Your tier is the highest one whose threshold that balance meets. Your account's fee rate is recomputed as base × (1 − discount) and saved.
4. Every order from then on — manual swaps and all strategies — uses the saved rate.

### Timing

* A tier upgrade is billed at the old rate for up to six hours (until the next snapshot).
* A balance drop likewise keeps the higher discount until the next snapshot.
* `[VERIFY: after you unsubscribe, snapshots stop and your rate is no longer recomputed — it keeps its last snapshotted value rather than resetting to base.]`
* `[ENV: snapshots run in production only; on the pre-production testnet no discount is ever applied.]`

### What the Staking page shows

Your current tier, the next tier, your SURGE balance, how much more SURGE you need, and a progress bar within the current band. `[VERIFY: whether the page shows the tier from your latest six-hourly snapshot or an estimate from your live wallet balance; the billed rate always follows the snapshot.]`

### What else a tier can gate

A tier can also cap how many **arbitrage strategies** you may run at once. No cap is currently set on any tier (unlimited). If a cap is introduced, creating a strategy beyond it fails with a message naming your tier and the limit; archiving a strategy frees a slot.

### Worked example

You hold 12,000 SURGE and are subscribed to Silver, with a 30% discount and a 0.14% effective rate.

| Order         | Base fee               | Your fee               |
| ------------- | ---------------------- | ---------------------- |
| 500 ADA buy   | 1.00 ADA               | 0.70 ADA               |
| 5,000 ADA buy | 10.00 ADA              | 7.00 ADA               |
| 100 ADA buy   | 0.20 ADA (shown 0.978) | 0.14 ADA (shown 0.978) |

The recorded minimum of 0.978 ADA per order is not discounted; see [The Surge fee and its minimum](/fees-tiers-and-staking/surge-fee-and-minimum).


# Stake SURGE

Staking is an opt-in that lets Surge count the SURGE tokens you already hold in your own wallets. In return you receive a share of the Surge fees collected each Cardano epoch, **paid in ADA**, and a [tier discount](/fees-tiers-and-staking/tiers-and-discounts) on your own fees. Nothing is locked, nothing is transferred, and you can unsubscribe at any time.

### What staking is and is not

* **Your SURGE stays in your wallet.** Subscribing only gives Surge permission to read your balance. There is no lock-up and no unbonding period.
* **It is not Cardano delegation.** Your ADA stake and your stake pool are untouched. Surge uses your wallet's stake address purely as a way to find all the addresses in that wallet.
* **Rewards are ADA**, funded from the Surge fees paid by all users during the epoch.

### Who can subscribe

Your connected browser wallet must use a **base address** — one that includes a stake key (most wallets' default). An "enterprise" address without a stake key is refused at subscribe time. `[ENV: subscribing is enabled in production only.]`

### How rewards are calculated

**Snapshots.** Every six hours (00:00, 06:00, 12:00, 18:00 UTC) Surge records each subscribed user's SURGE balance, summed across the connected wallet's stake address and every verified strategy wallet. Duplicate coins are counted once. The same snapshot updates your fee tier.

**Epochs.** Rewards are settled per Cardano epoch (five days). Three minutes after each snapshot Surge checks whether the chain has moved to a new epoch; if so it finalises the one that just ended.

**Reward pool.** All Surge fees on orders that reached the chain during the epoch, multiplied by the staker share.

`[ENV: the staker share is set per environment; the server default is 50% of fees. Tokenomics specify 100%. Confirm the production value.]`

**Your share.**

1. Your **average balance** for the epoch = the plain average of your snapshot balances in that epoch.
2. Multiplied by your **participation** = the fraction of the epoch you were subscribed for (subscribing on day 3 of 5 gives 40%).
3. Your reward = reward pool × (your weighted average ÷ the sum of everyone's weighted averages), rounded down to the lovelace.

**Worked example.** During an epoch users paid 1,000 ADA of Surge fees. With a 50% staker share the pool is 500 ADA. Your snapshots average 10,000 SURGE and you were subscribed for the whole epoch; all stakers' weighted averages sum to 1,000,000 SURGE. Your reward is 500 × 10,000 ÷ 1,000,000 = **5 ADA**. Had you subscribed halfway through, it would be 2.5 ADA.

The Staking page shows the current epoch's live estimate ("estimated pool at distribution"), refreshed every 15 minutes, and a countdown to epoch end.

### When and how rewards are paid

1. At epoch end, rewards are written for every staker and marked **claimable**; you get a "New rewards available" notification.
2. Click **Claim** on the Staking page. Surge adds up all your claimable rewards, subtracts one network fee (\~0.2 ADA), and — if the result is at least **0.978 ADA** (Cardano's minimum output) — marks them **queued**. Below that minimum the claim is refused; wait for another epoch.
3. Every two minutes Surge pays out queued claims in batches (up to 25 users per transaction) from its treasury wallet to your connected wallet address. Your rewards show **claiming**, then **claimed** with the transaction hash, and you get a "Rewards sent" notification.
4. If a payout fails, it is retried up to 3 times, then marked **failed** for Surge to resolve manually.

Reward statuses you may see: pending, claimable, queued, claiming, claimed, failed. You cannot claim while a previous claim is still queued or claiming.

### Unsubscribing

Immediate. Your snapshots for the current epoch are removed, so you earn nothing for it. Rewards already marked claimable remain claimable. `[VERIFY: your fee rate is not recomputed after unsubscribing — it stays at its last snapshotted value.]`

### Where to see everything

The Staking page shows: subscription status, current epoch and countdown, your latest snapshotted balance, your tier and progress, claimable and lifetime rewards, a reward history with per-epoch amounts and statuses, total distributed to all stakers, and the estimated pool for the current epoch. It also cross-checks the SURGE balance it sees in your strategy wallets against what the snapshot recorded.

### FAQ

**I hold SURGE but my fee is not discounted.** You must subscribe, and then wait for the next six-hourly snapshot.

**Why is my snapshot balance lower than my wallet?** Only the connected wallet's stake address and *verified* strategy wallets are counted, as of the last snapshot time.

**Why did I get less than my share of the pool?** Participation: joining mid-epoch scales your share down. Also a tiny rounding remainder is dropped from each user.

**Can I claim to a different address?** No — payouts go to the wallet address on your account.

**Is my reward taxed or converted?** Surge pays ADA and does nothing else. Tax treatment is yours to determine.


# FAQ

Direct answers to cross-cutting questions. Each links to the page with the detail.

### Security and wallets

**Does Surge hold my funds or keys?** No. Your browser wallet's keys stay in the extension and your strategy wallets' keys stay encrypted in your browser. Surge only ever builds unsigned transactions; nothing moves without a signature from your browser. The one server-held key is Surge's own treasury for paying staking rewards. See [How non-custodial works](/getting-started/how-non-custodial-works).

**Why does my strategy stop when I close the tab?** Because your browser is the only place the transaction can be signed. Grid and rule-based pause and resume automatically; arbitrage stops looking; DCA's timer stops; Cadence skips orders after 30 minutes. Keep the tab open and use Keep screen awake. See [How non-custodial works](/getting-started/how-non-custodial-works#why-your-strategy-stops-when-you-close-the-tab).

**How do my wallets interact when I run arbitrage?** Sequential mode uses one strategy wallet (Wallet A) that buys, receives the tokens, sells them and receives the ADA. Parallel mode uses Wallet A (ADA, buys) and Wallet B (tokens, sells); each leg delivers to the *other* wallet so both stay stocked. Your browser wallet only funds them. See [Sequential arbitrage](/strategies/sequential-arbitrage) and [Parallel arbitrage](/strategies/parallel-arbitrage).

### Fees, orders, and rewards

**What fees do I pay on a trade, and in what order?** In the order transaction: the Surge fee (0.2% of the ADA side, reduced by your tier), the DEX batcher fee (1–2.5 ADA), the refundable order deposit (2 ADA), and the network fee (\~0.2 ADA). The pool's \~0.3% fee is inside the exchange rate. The deposit comes back with the fill. See [Fee breakdown](/fees-tiers-and-staking/fee-breakdown).

**How is the Surge fee calculated, and is there a minimum?** 0.2% of the ADA you spend (buy) or expect to receive (sell), times (1 − your tier discount). with a minimum of 0.978 ADA per order, so orders under about 489 ADA pay the flat minimum. See [The Surge fee and its minimum](/fees-tiers-and-staking/surge-fee-and-minimum).

**How do tiers discount it?** Hold SURGE and subscribe to staking: 2,500 → 10%, 10,000 → 30%, 30,000 → 50%, 75,000 → 70%. The discount is applied to your rate at the next six-hourly snapshot. See [Tiers and discounts](/fees-tiers-and-staking/tiers-and-discounts).

**How are staking rewards calculated and when are they paid?** Each five-day epoch, the Surge fees collected are multiplied by the staker share to form a pool; your share is your average snapshotted SURGE balance (scaled by how much of the epoch you were subscribed) over everyone's. Rewards are paid in ADA after you click Claim, in batches every two minutes, if your claim nets at least 0.978 ADA. See [Staking SURGE](/fees-tiers-and-staking/staking).

**What happens if my order doesn't fill? Does it refund?** Minswap refunds automatically. SundaeSwap, WingRiders and Splash leave the order open until you cancel it; Surge's strategies offer you the cancel after 5 minutes, and manual swaps have a Cancel & reclaim button. Funds are never lost, only locked until you act. See [Cancelling stuck orders](/orders-and-transactions/cancelling-stuck-orders).

**Why does an order take minutes to fill?** A DEX batcher, not the DEX contract, executes orders, and it needs a block or two. 1–2 minutes is normal; after 3 minutes Surge calls it stuck. See [How trading on Cardano DEXes works](/core-concepts/how-cardano-dex-trading-works).

### Strategies

**How does the grid decide where to place orders, and what if the price leaves the range?** It divides your band into equal price steps; each rung buys at its lower line and sells at its upper. If the price leaves the band (plus your buffer) the grid pauses with "out of range"; it is re-evaluated when your tab reconnects to the strategy, so reload the strategy page once the price is back inside. See [Grid](/strategies/grid).

**What does slippage / minimum received mean in Surge?** Every order carries an on-chain minimum you will accept, computed as expected output × (1 − your tolerance). If the pool cannot deliver it, the order refunds or parks rather than filling badly. Rule-based levels additionally use the level price itself as the floor. Arbitrage buys use a break-even floor instead of slippage. See [From decision to confirmation](/core-concepts/trade-lifecycle-and-statuses).

**What's the difference between my browser wallet and a strategy wallet?** The browser wallet is your login and funding source and signs via the extension. Strategy wallets are created in your browser, hold only what you give them, and sign automated trades locally. See [Wallets in Surge](/core-concepts/wallets-in-surge).

**What happens if I lose my browser or clear its data?** Strategy wallet keys live only in that browser and in your key-file backups. Import the backup into a new browser to recover; without it, the wallet is unrecoverable. Strategies, history and your account on Surge's servers are unaffected.

**Is Automate signing safe?** Yes — it is on by default. It removes the approval prompt, not the transaction guard: a strategy can still only spend within its budget, only the tokens it declared, and only from its own wallet. Turn it off if you want to see and approve every trade while you get used to a strategy. See [Signing and approvals](/core-concepts/signing-and-approvals).

**How is P\&L calculated, and what does it leave out?** From actual fills only, per completed round trip: ADA out minus ADA in minus Surge, batcher and network fees. Pool fees are inside the prices. Grid, Arbitrage and Rule-based feed the totals; Cadence shows a cash-flow figure on its own page only; DCA has no P\&L. Open positions are not counted. See [Profit and loss](/orders-and-transactions/pnl).

**Which DEX should I use?** Minswap if you want unfillable orders refunded automatically. Among the DEXes you allow, a grid prices and trades on the deepest pool, a rule-based plan fires on whichever venue pays the most after fees, and arbitrage buys on the cheapest and sells on the dearest. See [Supported DEXes](/core-concepts/supported-dexes).

**Can I run two strategies from one wallet?** Do not. Orders from one wallet must be two minutes apart, and two strategies sharing a wallet will collide or block each other. One strategy per wallet is enforced by the builders.

**Can I edit a running strategy?** Some fields. Grid ranges, counts and investment are fixed; arbitrage mode and wallets are fixed; rule-based levels are fully editable. Clone (grid, DCA, arbitrage, cadence) to change fixed settings. See [Managing strategies](/strategies/managing-strategies).

**Does pausing persist if I open Surge in another browser?** Only for Cadence. Grid, rule-based, arbitrage and DCA pauses are local to the browser that set them. See [Managing strategies](/strategies/managing-strategies#pause-and-resume--what-actually-persists).

### Prices and access

**Where do prices come from?** From the DEX pools themselves, read from the chain by Surge's indexer every block, with outlier and liquidity filters. No third-party price feed. See [How prices are sourced](/core-concepts/how-prices-are-sourced).

**Is there a mobile app?** No. Surge blocks screens narrower than 768 px.


# Troubleshooting

Organised by what you see on screen. Each entry gives the likely cause and the fix.

### Strategies

**Strategy shows "Paused — socket down"** Cause: your tab is closed, in the background, or the live connection to Surge dropped. Fix: open the strategy page; it rejoins and resumes automatically. Check the socket pill in the header. Turn on Keep screen awake if the laptop was sleeping. See [How non-custodial works](/getting-started/how-non-custodial-works).

**Strategy shows "Paused — out of range" (grid)** Cause: the price is outside your band plus buffer. Fix: once the price is back inside, reload the strategy page so the grid re-evaluates (a paused grid gets no price ticks and does not re-check on its own), or stop and clone with a new range. See [Grid](/strategies/grid).

**Strategy shows "Paused — reserve low" (grid)** Cause: less than about 10–12 ADA of spare ADA in the strategy wallet for deposits and fees. Fix: fund the wallet, then reload the strategy page so it re-evaluates.

**Strategy shows "Paused — circuit breaker"** Cause (grid): more than 3 lines crossed in one tick or more than 5 in two minutes. Cause (rule-based): your failure policy paused the plan after 3 build failures. Fix: check the chart and the wallet, then click **Resume**.

**Strategy shows "Paused — pool shallow" (grid) or "Paused — price feed stale" (rule-based)** Cause: the reference pool fell under 5,000 ADA, or Surge's price feed is not live (a grid shows "pool shallow" for either). Fix: wait; the chart's LIVE/STALE badge shows feed health. A grid needs a strategy-page reload to re-evaluate; a rule-based plan re-checks every minute. See [How prices are sourced](/core-concepts/how-prices-are-sourced).

**Strategy says Running but never trades** Cause: for arbitrage, nobody is connected or the required spread is not there — the Activity tab shows every skipped evaluation. For grid and rule-based, the per-wallet two-minute gap, the per-rung cooldown, an order still open on the wallet, or a level that no pool quotes *at your size*. For DCA, the tab was closed. Fix: read the strategy's Activity or Rungs/Levels tab; keep the tab open.

**"Strategy muted" in the arbitrage Activity feed** Cause: 3 consecutive build failures, almost always insufficient funds in Wallet A (or Wallet B in parallel mode). Fix: fund the wallet; the mute lifts after 10 minutes or on the next successful build.

**Arbitrage strategy stopped by itself** Cause: the daily loss limit or 3 consecutive losing round trips. Fix: review the trade log; set the status back to running from the strategy page if you want to continue.

**Arbitrage opportunity stuck in "Partial"** Cause: one leg filled and the other did not. Fix: cancel the parked leg if there is one (Cancel ready prompt), then use **Force close** to exit at market. See [Sequential arbitrage](/strategies/sequential-arbitrage) and [Parallel arbitrage](/strategies/parallel-arbitrage).

**Cadence orders show "skipped"** Cause: they were more than 30 minutes past their scheduled time — with the tab closed no order is even sent for signing, or the schedule stalled behind a parked order. Fix: keep the tab open for the whole duration; cancel any parked order.

**Cadence order "failed" and I got a "strategy stopped" email** Cause: the order failed to build 5 times (typically funds not in the expected wallet). Note the strategy itself is **not** stopped — later orders continue. Fix: check wallet balances; funds may be in an earlier wallet of the ring.

**"Cancel ready" prompt keeps appearing** Cause: an order is parked on a non-refunding DEX and Surge has built the cancel for you. Fix: approve it. Until you do, that wallet fires nothing else.

**Cannot archive a strategy** Cause: it is still running, or an order is awaiting signature or open on chain. Fix: stop it, wait for open orders to fill or cancel them, then archive.

**Deploy button disabled in the grid builder** Cause: the preview lists blocking reasons (investment below minimum or above the depth ceiling, price outside the band, grid count above the pool cap, no wallet, acknowledgement unticked). Fix: address each listed reason.

**Rule-based level rejected on save** Cause: a price below 0.000001 ADA or a size that rounds to zero of the token's smallest unit. Fix: adjust the value; check the token's decimals are known.

### Orders

**Order stuck at "Open"** Cause: the batcher has not filled it. Under 3 minutes is normal. After that, the diagnosis says whether it is still fillable or the price moved past your minimum. Fix: on Minswap wait for the auto-refund; elsewhere use **Cancel & reclaim**. See [Cancelling stuck orders](/orders-and-transactions/cancelling-stuck-orders).

**Order shows "Cancelled" but I didn't cancel** Cause: the DEX refunded it because the price moved past your minimum (Minswap does this automatically). Your funds are back in the wallet minus the network fee.

**Order shows "Dropped"** Cause: the network never included the transaction in a block. Nothing was spent. Strategies rebuild; for a manual swap, try again.

**Order shows "Unknown"** Cause: Surge could not identify the order inside the transaction, so it cannot track the fill. Fix: check the transaction on Cardanoscan.

**Cancel fails with "already spent" or "bad inputs"** Cause: the batcher filled or refunded the order between your click and the broadcast. Fix: none needed; refresh the trade log.

**Cancel fails with "not owned"** Cause: the order was placed by a wallet whose key is not in this browser. Fix: reconnect that wallet from its key file.

**Cancel on Splash asks for collateral** Cause: no plain-ADA coin of at least 5 ADA in the wallet. Fix: send 5 ADA to the wallet in its own transfer, then retry.

**"Invalid or expired trade identifier" when submitting** Cause: more than 5 minutes passed between building and signing. Fix: rebuild and sign promptly.

**"Wallet is too fragmented for a split"** Cause: a split swap needs the whole amount plus fees in a single coin. Fix: send the wallet's full balance to its own address once to consolidate, then retry.

**"Insufficient funds" when building** Cause: the wallet cannot cover the amount plus deposit, batcher fee and network fee, or its ADA is tied up holding tokens. Fix: fund the wallet; check the Required balance panel.

### Wallets and signing

**Wallet not listed in the connect dialog** Cause: extension locked, disabled for this site, not yet loaded, or not a supported wallet (Nami is not). Fix: unlock it, reload the page, see [Supported wallets](/getting-started/supported-wallets).

**"Network mismatch" on connect** Cause: the wallet is on a different Cardano network than Surge. Fix: switch the wallet, or switch Surge via the header selector.

**Wallet disconnected by itself** Cause: you changed the network inside the extension, or your session expired or was revoked. Fix: reconnect and sign in.

**Strategy wallet shows "Not connected"** Cause: this browser does not have the wallet's key. Fix: **Reconnect from key file** on the wallet detail page.

**Strategy wallet shows "Not backed up"** Cause: the key exists here but the wallet is not registered with Surge. Fix: click **Back up** to register it, and download its key file.

**Signing Approval window keeps popping up** Cause: Automate signing has been turned off (it is on by default, and resets when you disconnect your wallet). Fix: approve each trade, or turn it back on in Settings → General. See [Signing and approvals](/core-concepts/signing-and-approvals).

**Transaction refused by the guard** Cause: it would spend more than the strategy's cap, move an undeclared token, or lacks change. Fix: this is a safety stop; check the strategy configuration and report it if it recurs.

**Funds are in a different strategy wallet than expected (Cadence)** Cause: wallet rotation — each order's proceeds go to the next wallet in the ring. Fix: consolidate with Send or Sweep after the schedule completes.

### Fees and P\&L

**Fee looks wrong — Surge fee shows 0.978 ADA on a small order** Cause: the recorded and previewed Surge fee has a 0.978 ADA minimum; on chain you pay 0.2% with no minimum. Fix: nothing; see [The Surge fee and its minimum](/fees-tiers-and-staking/surge-fee-and-minimum).

**I hold SURGE but pay the full fee** Cause: you are not subscribed to staking, or the six-hourly snapshot has not run yet. Fix: subscribe on the Staking page and wait for the next snapshot. See [Tiers and discounts](/fees-tiers-and-staking/tiers-and-discounts).

**"Fees paid" and P\&L don't reconcile** Cause: fees paid includes pool fees; realized P\&L does not (they are inside the fill price). See [Profit and loss](/orders-and-transactions/pnl).

**P\&L shows blank or "unmeasured"** Cause: no completed round trip could be measured, or the strategy type has no P\&L in the totals (DCA has none; Cadence shows a cash-flow figure on its own page only). This is deliberate — Surge does not guess.

**Staking claim refused** Cause: claimable rewards minus the network fee are below 0.978 ADA, or a previous claim is still queued/claiming. Fix: wait for another epoch or for the queue to clear.

**APR shows 2.5%** Cause: 2.5% is the display floor and also what is shown when the figure cannot be computed. Treat it as "not enough data".

### Account and app

**Sent back to the login page mid-session** Cause: beta approval missing (redeem a code), session revoked, or network switched. Fix: sign in again.

**"Session expired"** Cause: the refresh token could not be renewed. Fix: sign in again.

**Everything disappeared after "Clear all data"** Cause: that action erases this browser's Surge storage, so strategy wallets are no longer usable here. Fix: import your wallet export. Strategies and history on Surge's servers are unaffected.

**App shows "desktop only"** Cause: the window is narrower than 768 pixels. Fix: use a wider window or a desktop browser.

**Portfolio total ignores a token** Cause: the token's decimals are unknown ("No decimals" badge) or its price is unavailable/stale. Fix: none from your side; the value is omitted rather than guessed.

**Portfolio "Export CSV" does nothing** Known limitation in the current build; use the Activity page export.


# Glossary

**ADA** — Cardano's native coin. Every Surge pair is a token against ADA.

**Ambiguous fill** — When one batcher transaction fills two or more of your orders paying the same wallet, Surge cannot tell which proceeds belong to which order. It retries up to five times, then leaves the orders Open for you to check.

**Archive** — Permanent, read-only retirement of a strategy. It leaves the live lists but keeps its history; it cannot be restored, only cloned.

**Auto-range** — The grid builder's Suggest feature: proposes a price band from the last 7, 30 or 180 days of prices.

**Automate signing** — A setting that lets strategy transactions be signed without the approval window, after the transaction guard has passed them. On by default; turn it off to approve each trade by hand.

**Base address** — A Cardano wallet address that includes a stake key (the usual kind). Required for staking. An address without one is an *enterprise* address.

**Batcher** — A bot operated by a DEX that collects pending orders and executes them against the pool a block or two later, for a flat fee. Called a scooper on SundaeSwap, an agent on WingRiders, an executor on Splash.

**Batcher fee** — The flat fee the batcher keeps: Minswap 2 ADA, SundaeSwap 1 ADA (V3) or 2.5 ADA (V1), WingRiders per pool up to 5 ADA, Splash as configured.

**Boundary buffer** — A grid setting that widens the out-of-range check on both sides of the band without moving any rung.

**Break-even floor** — The minimum-received an arbitrage buy carries: the number of tokens the sell pool would need to return your input plus all fees plus your minimum profit.

**Browser wallet** — Your Cardano wallet extension (Eternl, Lace, …). Used for login, funding, manual swaps and sends. Never used by strategies.

**Circuit breaker** — A pause a grid trips when too many lines are crossed at once (more than 3 in a tick or 5 in two minutes), or a rule-based plan trips under the "pause plan" failure policy. Requires a manual Resume.

**Concession ladder** — In arbitrage, the sequence of re-offers for a sell leg that will not fill: as-is, then at break-even, then at a bounded-loss floor of 95% of cost, then give up (Partial).

**Cooldown** — For a grid rung, two minutes after it detects a crossing before it can detect again. For a rule-based level, the wait you set between firings (minimum 2 minutes).

**Cycle** — One open-and-close pair on a grid rung; the unit of grid profit.

**Datum** — The note attached to an order on chain: who owns it, what it wants, the minimum it accepts, and where to pay out. Cancelling requires the key matching the datum's owner.

**Deposit (order deposit)** — 2 ADA locked with every order on Minswap, SundaeSwap and WingRiders and returned with the fill or refund. Not a fee.

**Depth ceiling** — The largest grid investment the reference pool can absorb without your own orders moving the price too much.

**DEX** — Decentralised exchange. Surge supports Minswap, SundaeSwap, WingRiders and Splash.

**Effective price** — For a rule-based level, the price your exact order size would actually get from a pool, including that pool's fee and price impact.

**Epoch** — Cardano's five-day accounting period. Staking rewards are settled per epoch.

**Fill** — The batcher executing your order and paying your wallet. Detected by Surge from the chain, not reported by the DEX.

**Finality** — A fill is treated as final after 10 further blocks (about 3–4 minutes).

**Force close** — Manually exiting a Partial arbitrage position at market price.

**Grid count** — Number of rungs in a grid. A grid with N rungs has N+1 price lines.

**Key file** — The downloadable backup of a strategy wallet's private key. Anyone holding it controls the wallet.

**Level** — A rule-based plan's unit: side, price, size, executions and wait.

**Line** — One of the N+1 price boundaries of a grid.

**Liquidity floor** — The minimum ADA a pool must hold to be used: 1,000 ADA for prices, 5,000 ADA for grid, rule-based and arbitrage trading.

**Lovelace** — One millionth of an ADA. Surge shows ADA; the chain counts lovelace.

**Mid price** — A pool's ADA reserve divided by its token reserve. What charts and grid lines use.

**Minimum received** — The least output an order will accept, written into the order on chain. Also called the slippage floor. If the pool cannot deliver it, the order refunds (Minswap) or parks.

**Network fee** — Cardano's transaction fee, about 0.2 ADA, deducted from every transaction.

**Opportunity** — One detected arbitrage trade: a buy leg and a sell leg with their statuses.

**Parallel mode** — Arbitrage with two wallets firing both legs at once. Compare *sequential mode*.

**Parked order** — An order that cannot fill at its minimum and stays open on chain (SundaeSwap, WingRiders, Splash) until cancelled.

**Partial** — An arbitrage opportunity in which one leg filled and the other did not; a one-sided position you must close.

**Pool** — A DEX's reserve of ADA and a token for one pair. The price is the ratio of the reserves.

**Pool fee** — The liquidity-provider fee, typically 0.3%, charged inside the exchange rate.

**Price impact** — How much your own order moves the pool's price. Included in every quote.

**Realized P\&L** — Profit measured from completed round trips' actual fills, minus Surge, batcher and network fees.

**Reference pool** — The deepest eligible pool for a pair; the grid's price source.

**Refund** — The DEX returning an unfillable order's contents. Shown as Cancelled.

**Required balance** — A builder panel adding up the ADA (and tokens) a strategy wallet needs: trade budget, deposits, batcher, network and Surge fees, pool fee.

**Reserve floor** — In arbitrage, ADA in Wallet A that sizing never touches.

**Rung** — One step of a grid: buys at its lower line, sells at its upper line.

**Safety buffer** — 15% of expected gross profit that grid and arbitrage subtract when deciding whether a trade is worth making. Never charged, never subtracted from realized P\&L.

**Sequential mode** — Arbitrage with one wallet: buy, wait for the fill, then sell exactly what arrived.

**Signing approval** — The window that shows a strategy transaction's addresses and maximum spend and waits for your Approve.

**Slippage tolerance** — The percentage worse than the expected output you will accept; sets the minimum received.

**Snapshot (staking)** — A six-hourly reading of each subscribed user's SURGE balance.

**Socket** — The live connection between your tab and Surge over which prices and transactions to sign are pushed. "Socket down" means it is not connected.

**Spread** — The percentage price gap between two DEXes' pools for the same token. *Required spread* is the gap at which an arbitrage round trip breaks even.

**Strategy wallet** — A wallet Surge generates in your browser for one strategy to trade from. Its key stays in the browser and in your key file.

**Stuck order** — An order still Open after 3 minutes.

**SURGE** — Surge's token. Holding it (and subscribing to staking) earns a share of fees and a fee discount.

**Surge fee** — 0.2% of the ADA side of every order, reduced by tier, paid to Surge inside the order transaction.

**Tier** — Your SURGE-holding band and its fee discount.

**Transaction guard** — The check your browser runs before signing any strategy transaction: spend cap, declared tokens only, no staking changes, no minting, change returned.

**UTxO** — Cardano's unit of funds: a discrete "coin" of ADA and tokens that is spent whole. Why two orders from one wallet must be spaced out, and why a split swap needs a single large coin.

**Wake lock** — The Keep screen awake setting: asks the OS not to sleep the display while a strategy runs.

**Wallet A / Wallet B** — In arbitrage, the ADA wallet that buys (A) and, in parallel mode, the token wallet that sells (B).

**Window (Cadence)** — A 30-minute slot in a Cadence schedule holding up to 10 orders.


# Documentation overview

Browse the Surge documentation by task and topic.

### Getting started

* [What Surge is](/getting-started/what-is-surge)
* [How non-custodial works](/getting-started/how-non-custodial-works)
* [Supported wallets](/getting-started/supported-wallets)
* [Connecting your wallet](/getting-started/connecting-your-wallet)
* [Your first strategy, step by step](/getting-started/first-strategy-walkthrough)
* [Run Surge on an always-on computer](/getting-started/run-surge-on-an-always-on-computer)

### Core concepts

* [How trading on Cardano DEX's works](/core-concepts/how-cardano-dex-trading-works)
* [Supported DEXes](/core-concepts/supported-dexes)
* [Wallets in Surge](/core-concepts/wallets-in-surge)
* [Signing and approvals](/core-concepts/signing-and-approvals)
* [How prices are sourced](/core-concepts/how-prices-are-sourced)
* [From decision to confirmation: the trade lifecycle](/core-concepts/trade-lifecycle-and-statuses)

### Strategies

* [Choosing a strategy](/strategies/overview)
* [Grid](/strategies/grid)
* [DCA](/strategies/dca)
* [Sequential arbitrage](/strategies/sequential-arbitrage)
* [Parallel arbitrage](/strategies/parallel-arbitrage)
* [Rule-based](/strategies/rule-based)
* [Cadence (Volume)](/strategies/cadence-volume)
* [Managing strategies](/strategies/managing-strategies)

### Fees, tiers, and staking

* [Fee breakdown](/fees-tiers-and-staking/fee-breakdown)
* [The Surge fee and its minimum](/fees-tiers-and-staking/surge-fee-and-minimum)
* [Tiers and discounts](/fees-tiers-and-staking/tiers-and-discounts)
* [Staking SURGE](/fees-tiers-and-staking/staking)

### Orders and transactions

* [Order statuses](/orders-and-transactions/order-statuses)
* [Fills and refunds](/orders-and-transactions/fills-and-refunds)
* [Cancelling stuck orders](/orders-and-transactions/cancelling-stuck-orders)
* [Trade history and activity](/orders-and-transactions/trade-history-and-activity)
* [Profit and loss](/orders-and-transactions/pnl)

### Dashboard and account

* [Dashboard](/dashboard-and-account/dashboard)
* [Portfolio](/dashboard-and-account/portfolio)
* [Manual swap](/dashboard-and-account/manual-swap)
* [Wallets page](/dashboard-and-account/wallets-page)
* [Notifications and alerts](/dashboard-and-account/notifications-and-alerts)
* [Settings](/dashboard-and-account/settings)

### Help

* [Troubleshooting](/help/troubleshooting)
* [FAQ](/help/faq)
* [Glossary](/help/glossary)


