> For the complete documentation index, see [llms.txt](https://docs.surgecardano.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.surgecardano.com/tutorials/8.-arbitrage-strategies.md).

# 8. Arbitrage strategies

Catch price gaps between Cardano DEXes, and trade only the spreads that pay after fees.

{% embed url="<https://drive.google.com/file/d/1nE5TEqA2845p7lgsWSLWEz6QygwYIt7B/preview>" %}

The same token rarely costs the same on every Cardano DEX. When SNEK is cheaper on SundaeSwap than on Splash, you can buy on one and sell on the other. Surge watches every pool around the clock and trades only when the gap beats all fees.

### What you'll learn

* How cross-DEX arbitrage works
* Choosing between single-wallet and dual-wallet mode
* Setting profit, size and risk limits
* Backtesting your settings
* Reading the live engine and the Activity feed

New to arbitrage? Click **How it works** in the app for the beginner's guide. It covers liquidity pools, the sweet-spot trade size and the fee maths, with real numbers.

### Single wallet vs dual wallet

|                      | Single Wallet                                      | Dual Wallet                      |
| -------------------- | -------------------------------------------------- | -------------------------------- |
| How it trades        | Buys first, then sells exactly the tokens received | Fires both legs at the same time |
| What you hold        | ADA only                                           | ADA and the token, in advance    |
| Speed                | Legs run one after another                         | Faster                           |
| Price risk mid-trade | Exposed between the two legs                       | Hedged                           |

### Create an arbitrage strategy

1. Click **New Strategy** and choose **Single Wallet** or **Dual Wallet** arbitrage.
2. Pick the asset.
3. Select at least two DEXes to monitor.
4. Set the **minimum net profit** per trade. This is profit after batcher, network and Surge fees.
5. Set the trade size range.
6. Set a **max loss per day**.
7. Set a **reserve floor**. The strategy never spends below it.
8. Assign a hot wallet, then deploy.

### Backtest your settings

Click **Run Backtest**. Against real price history, it shows how many opportunities your settings would have caught and what they would have made.

### While it runs

* **Live prices:** the token's price on each DEX you picked, with the spread highlighted
* **Live status:** the current spread, the break-even line, and which DEX to buy on and which to sell on
* **Safety guards:** max slippage, max drawdown, a limit on consecutive losses, and an allocation cap
* **Activity tab:** every decision the engine makes, including why a spread was skipped (for example, unprofitable after fees, or below your minimum). Expand any line for the full fee breakdown.
* **Trade log:** every opportunity with its estimated and actual net profit, its status (completed, skipped or refunded), and a transaction link for each leg

### Good to know

* **Most spreads get skipped, by design.** Surge trades only the gaps that are profitable after every fee. The Activity tab shows it's working even when nothing fills.
* **Keep the Surge tab open.** Trades are signed in your browser. Turn on Keep display awake in Settings.
* **Your staking tier matters.** Your SURGE staking tier sets how many arbitrage strategies you can run at once.

### Next

[9. Grid strategy](/tutorials/9.-grid-strategy.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.surgecardano.com/tutorials/8.-arbitrage-strategies.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
