Skip to main content
CEX↔DEX arbitrage detector across 7 chains
Own product · Trading / DeFi

The arbitrage spread that is still there after every cost

arb-bot prices two CEXes against Uniswap v3 on seven chains and subtracts six lines of cost before it prints a number, journaling every positive spread the second it appears, paper only with no orders and no API keys.

7Chains quoted live
2CEXes priced against DEX
60Pairs watched live

Auto-discovered, shown live on the dashboard

4 weeksIdea → running detector

Built with Claude Code in 4 weeks

arb-bot web dashboard moments after start: trading mode, alerts and the live pair-scan status
01 / Paper mode

A read-only dashboard that cannot place an order

Live trading is off by construction. There is no wallet key, so the bot can quote, price and journal but never move funds. The header says what it is watching right now, how fresh the last scan is and whether the kill-switch has tripped.

60pairs watched live
  1. 160 auto-discovered pairs scanned live, last scan seconds ago
  2. 2All clear, with zero failures, strandings or kill-switch trips
Terminal output of arbbot check: live quotes and a per-cost net spread breakdown
02 / Net spread

One command prints the honest number per pair

arbbot check connects to both venues, quotes the route in both directions and prints the net basis points after the taker fee, the order-book walk, DEX fee and impact, gas, rebalancing and a safety buffer. Majors sit deep in the red most of the time, and the honest number shows it at once.

20 bpsthreshold a spread must clear
Live-readiness dashboard: distinct closeable opportunities per day and the ranked pair table
03 / Live readiness

You see how many chances were actually closeable

Instead of paper PnL, the dashboard counts distinct threshold episodes, the ones the bot could really have closed, split off from phantoms that vanish before a fill. Pairs are ranked by their best net spread, with the kill-switch, scan freshness and the loss streak on the same screen.

54 / 60pairs actually closeable
More screens
Before

The gap between two venues looked like free money right up to the fee line.

After

60 pairs quoted live, every cost priced in, the honest number in Telegram the second it turns positive.

Under the hood

01Context

Real spread is honest only after every cost

A CEX quote and a DEX quote for the same asset rarely match, and the gap looks like free money until a taker fee, the DEX's own price impact, gas and the cost of rebalancing inventory eat most of it. arb-bot starts from that honest number instead of the gross one, on venues it can actually use: OKX EEA (the MiCA-licensed OKX entity for Europe) and Binance spot.

02How it works

Verified on-chain, priced with every cost

Discovery re-verifies each candidate pair on-chain for symbol and decimals, then probes liquidity with quoter round-trips at trade size; a guard compares the route's price against the CEX ticker and drops anything that diverges too far. The net spread itself subtracts the CEX taker fee, a VWAP walk of the live order book, DEX fee and price impact, current gas, an amortized rebalancing cost and a safety buffer, six cost lines in all, all in Decimal arithmetic.

03Outcome

Watching for short dislocations, paper only

Majors sit net-negative most of the time, so arb-bot is built to catch short dislocations instead: every positive spread is journaled the instant it appears, the scan cadence bursts to once a second while it holds and a paper fill re-quotes both venues after real latency before it books a result. The universe stays auto-discovered and capped at 60 pairs, the dashboard shows it running live and nothing here has placed a real order, opened a transaction or needed an API key. None of it is investment advice.

ANM SOLUTIONS / CONTACT US

Want something like this?

First 30-minute call is free. We scope it, you decide.

More cases