Futures — Futures · full guide

Cross-exchange perp arbitrage:
one perp, two exchanges, different prices

The same perpetual futures contract trades simultaneously on dozens of exchanges — and its prices rarely match. Long on the cheap exchange, short on the rich — the position is delta-neutral the moment the second leg fills. No asset transfer, no on-chain, no network fees — both positions live purely on margin.Guide: why one perp's prices diverge across exchanges, how funding math pulls the gap toward closing, how to avoid liquidation.

30+ perp exchanges no asset transfer only margin on two exchanges minutes – hours typical hold delta-neutral zero directional risk
What it is

Perpetual arbitrage in plain English

This guide is about cross-exchange perpetual arbitrage: the same strategy as spot cross-exchange, but using perpetual futures instead of spot books and without any physical asset transfer between exchanges.

The perpetual contract on BTC, ETH, SOL and hundreds of other tokens trades at the same time on dozens of perp exchanges: Binance, Bybit, OKX, Hyperliquid, Lighter, EdgeX. Their prices don't match. Each exchange has its own book, its own user base, its own funding-rate mechanism. The gap between one perp's prices on two exchanges is the spread arbitrage captures.

Where the profit comes from

Trade logic: long perp on the cheap exchange + short perp on the rich simultaneously. The position is delta-neutral: price moves — both sides compensate. Profit comes from the gap closing: prices converge to each other, typically in minutes or hours. Funding accruing during the hold can be a tailwind (on the long side) or a headwind (on the short side) — secondary factor; the main profit comes from the spread closing.

This guide is about futures cross-exchange arbitrage. Cross-exchange comes in three families, each with its own rhythm and mechanics.

Spot cross-exchange: buy on the spot of one exchange → physical transfer of the asset through a blockchain → sell on the spot of another. Requires withdrawal/deposit, eats network fees, takes 30 seconds to 30+ minutes.

Futures cross-exchange (this guide): long perp on one exchange + short perp on another, simultaneously. No asset transfer, no on-chain — only margin on two exchanges. Profit from the price gap closing, hold minutes to hours.

Funding cross-exchange: same long+short structure on two perp exchanges, but focused on the funding-rate difference, not the price gap. Hold runs days to weeks, income accumulates with each funding payment.

Adjacent strategy with a different structure:

Spot-Futures — spot against the perp of the same asset (basis trade). Not pure cross-exchange because both sides can sit on one exchange.

Why perp prices diverge between exchanges

A perpetual has no expiry date. Its price is anchored near spot through the funding rate — but between exchanges, that anchor runs at different speeds and intensities. Hyperliquid pays funding hourly; most CEX pay every 8 hours. When a sharp move hits (news, whale liquidation), every exchange reacts — but not in sync. In that asymmetry window the spread opens.

When perp-perp spreads widen

Hourly vs 8h funding cadence
Hyperliquid pays funding every hour, most CEX every 8. Hourly-funded exchanges react to open-interest skew 8× faster. On big skews the spread between them can widen 1–3% in the moment, closes in an hour or two.
Sharp news or liquidations
A big long whale liquidates on one exchange — cascading sells move price down on that exchange faster than on others. The spread widens for minutes until market-makers on other exchanges catch up.
Fresh perp listings
Hyperliquid and other new perp exchanges often list perps before Binance. In the first days, prices on the new exchange can diverge from established CEX by 2–5% due to thin books and one-sided open interest.
Regional asymmetry
Korean and Japanese exchanges have local user bases with their own sentiment. On strong BTC moves their prices can diverge from global perps by 1–2% ('kimchi premium' for perps).
Mechanics

How the position works and where the costs sit

Perp arbitrage is the cleanest delta-neutral trade in crypto: both sides open instantly, no transfers, no on-chain.

Position structure

On exchange A (lower price): open a long perp. On exchange B (higher price): open a short perp. Both sized N USDT. Now:

  • Price moves up → long on A in profit, short on B at loss, net zero
  • Price moves down → long on A at loss, short on B in profit, net zero
  • Prices converge (gap closes) → spread evaporates, both sides realise the combined profit

That's delta-neutral: profit comes only from the gap closing, not from direction.

Costs

Each side pays a taker fee on opening and closing:

  • Open long on A: ~0.045% of volume
  • Open short on B: ~0.055% of volume
  • Close both sides: another ~0.10%
  • Round-trip total: ~0.20%

Funding accumulates over the hold: can be positive or negative. On a short hold (a few hours) usually negligible.

The main risk: liquidation on one side. A strong volatility spike can move price far enough to trigger a margin call on one side (even with neutral net direction). If a liquidation happens — the position is no longer delta-neutral, and the remaining side carries directional risk. Mitigation: leverage ≤3× on each side, cross-margin (where supported) — PnL on one side compensates margin requirements on the other.

Funding as accelerator or brake

The funding rate works to close the gap: when a perp is richer on one exchange, funding there goes positive (long-holders pay), which pushes the price down. On the cheap exchange funding goes negative (short-holders pay) — which pushes the price up. So the exchange mechanisms themselves nudge the gap toward closing.

Step by step

How to open and close a perp-arb position

The algorithm is fast: open in minutes, hold for hours. Steps grouped into two phases: Prep + Execute (position open) and Close (exit).

  1. Prep
  2. 01

    Find a spread ≥ 0.6%

    Through a scanner (Finder pings with both sides and a closing forecast) or manually comparing one perp's prices across exchanges. Ignore spreads below ~0.6% — round-trip fees of 0.20% plus slippage will eat the profit.

  3. 02

    Check funding direction

    On the rich exchange funding is usually positive (you'd pay if short). On the cheap exchange funding is usually negative (you'd be paid if short — but we're long there). If funding on both sides works against the gap closing (rare), the spread will close slowly, the hold will stretch.

  4. 03

    Prepare margin on both exchanges

    Both perp exchanges need USDT/USDC margin sufficient for the position. Sizes on both sides equal. Leverage 3×–5×: enough for capital efficiency, safe for volatility spikes. Cross-margin (where supported) — that's insurance.

  5. Execute
  6. 04

    Open long on the cheap side

    Market order on the lower-price exchange. Taker fee (~0.05%) accounted for. Size must exactly match the planned short.

  7. 05

    Open short on the rich side simultaneously

    Right after the long fills — short on the opposite exchange at the same size. The position is now delta-neutral: price can go anywhere, net zero. Profit starts accumulating as the gap between sides narrows.

  8. Close
  9. 06

    Monitor the gap closing

    On most setups the gap closes in 1–3 hours (on a typical HL ⇄ Binance pair — within a Hyperliquid funding cycle). On slow gaps (≤1%) it can take 4–12 hours. The dashboard shows the live spread.

  10. 07

    Close both sides simultaneously

    When the gap has shrunk to ~30% of original (or to your target margin), close both sides with market orders. Within 30 seconds — so price doesn't move against one side before the other closes.

  11. 08

    Log the trade

    Record: token, long/short exchanges, gap at entry/exit, funding accumulated during the hold, total profit. After 20+ trades you'll have a sense of which exchange pairs regularly deliver workable gaps (typically HL vs CEX), which don't.

Critical risks

Five risks of perp arbitrage

Liquidation on one side during a volatility spike

A sharp up-move liquidates the short, a sharp down-move the long. The remaining side becomes directional risk. Mitigation: leverage ≤3× and cross-margin (where available). On big moves the position can take a large hit even at leverage 3× if cross-margin isn't on.

Exchange technical issues at close time

One of the exchanges can temporarily go down (degraded mode, API incident, upgrade). If the position needs to close but the exchange is unavailable — the remaining side carries directional risk until it's back online. Mitigation: use proven exchanges with aggressive uptime SLAs.

Spread widens further

Opened at 1% spread, it widened to 2%. The unrealised loss on each side grows (though net is still close to zero). On high-leverage positions this creates margin pressure and liquidation risk even if the overall position is stable.

Funding works against you

In rare cases funding on both sides works against the gap closing — the spread doesn't close, and funding keeps being deducted. On a long hold that turns into a clean loss. Mitigation: check funding direction at entry, exit if the gap hasn't closed in 4–6 hours.

Spread too small after fees

Signal shows 0.7% spread, but during open the price moved — actual spread is already 0.5%. Round-trip fees of 0.20% take almost half. Check the current spread at open, not the signal value.

Worked trade

SOL perp: 1.2% spread Hyperliquid vs Binance, 2-hour hold

Step by step — a typical perp-arb trade. Numbers model a typical setup: SOL perp trades at $145 on Hyperliquid, $146.74 on Binance (spread +1.2%). Position size $5000 on each side.

Breakdown on a $5,000 position (each side)
Spread captured at open: +1.2% of $5k +60 USDT (unrealised)
Long Hyperliquid opening taker (0.045%) −2.25 USDT
Short Binance opening taker (0.055%) −2.75 USDT
Spread closed to 0.3% in 2h — captured 0.9% +45 USDT (realised at close)
Hyperliquid funding over 2 cycles × 0.005% (negative for long) −0.50 USDT
Binance funding: no cycle in 2 hours 0 USDT
Closing taker fees long + short −5.00 USDT
Net profit ≈ +34.50 USDT (~0.69% over 2 hours)

~0.69% over 2 hours = effective APR in the tens of percent if such setups are regular. On Hyperliquid ⇄ Binance they show up several times a day in active markets.

If the spread had widened instead of closing (from 1.2% to 2.0%), unrealised PnL on each side would have moved into the red, but the net position would stay stable. Margin requirements would increase — for leverage 5× on a 1% spread expansion that's +5% to margin usage. At low leverage it's tolerable.

If funding on both sides worked against you (Hyperliquid funding very negative for long, Binance funding negative for short), over the same 2-hour hold you might lose $5–10 to funding — but it's a rare scenario and the signal flags it.

Before you open the position

Perp-arb checklist

Don't do this

Common perp-arb mistakes

Ignoring funding direction
Opening a position when funding on both sides works against the gap closing = fighting the exchange mechanisms. The spread will close slowly or not at all, and funding will keep deducting. Check funding sign on each side before opening.
High leverage to 'amplify' the spread
Leverage 10×+ on perp-arb looks 'safe' — the position is delta-neutral, after all. But a volatility spike with 1% spread expansion adds +10% to margin requirements on each side. Cross-margin can absorb that, but without it — liquidation. Safe ceiling 3×–5×.
Opening at different times on the two exchanges
Opened long on A, a minute later short on B — in that minute the price moved. Effective spread is smaller than the signal, sometimes negative. Opening must be parallel — two tabs on two exchanges, market orders within 10–15 seconds of each other.
Closing only when the spread 'fully closes'
The goal is to capture most of it, not the last few points. When the spread shrank from 1% to 0.3% — most of the profit is in hand. Waiting for 'full zero' typically ends with the spread re-widening and some profit walking back. Exit after capturing 60–70%.
Perp-arb on fresh listings with thin liquidity
Fresh perp listings have large spreads — looks like a gold mine. But: (a) close-side liquidity can be catastrophic, (b) slippage on open and close will eat the profit, (c) funding rates can be extreme in both directions. Perp-arb needs mature, liquid perps.
Realistic outlook

What you can and can't expect

Perp arbitrage is the fast and delta-neutral type. Hold is measured in hours (1–4 typical), not days. Profit comes from the gap closing between one perp's prices on different exchanges.

What drives results

Main factor — how often tradeable gaps appear. In active markets with volatility and news, gaps show up several times a day. In quiet markets — less often, spreads smaller. The most regular setups are between hourly-funded exchanges (Hyperliquid) and 8h-funded ones (Binance, Bybit).

What's math, not luck

Round-trip fees ~0.20%. To recover even those, the spread has to be ≥ 0.4% post-open (with slippage buffer). On real setups the spread is usually 0.6–2%, giving net 0.2–1.5% per 1–4 hours of hold.

  • Typical APR on perp-arb: 50–200% annualised on capital with moderate leverage and regular position-taking. During peak events (volatile weeks) — up to 300%+ APR for short periods.
  • Income scales linearly with size, but capped by margin requirements on each exchange.
  • Delta-neutral position = zero directional risk when both legs are open. The only risk is liquidation on one side during a volatility spike.

How perp-arb differs from other types

Unlike cross-exchange Spot-Spot, there's no asset transfer — both positions are open simultaneously on two exchanges. Unlike basis hedge (Spot-Futures), both sides are perp, not spot: different margin profile, no asset-delivery problem. Unlike funding arb, profit comes from the price gap, not funding differences — hold is shorter (hours vs days-weeks).

This isn't investment advice. Perp arbitrage is the least risky compared to directional trading, but not risk-free. Volatility spikes can liquidate one side at high leverage. Test at sizes $1–3k until opening and exit discipline is solid.
Finder scanner

Built for exactly this type of arbitrage

Perp arbitrage requires tracking one contract's prices across 30+ perp exchanges simultaneously, plus each side's funding rate to forecast gap closing. Finder does it in the background: for every perp, compares prices and funding across all exchanges, computes every cross-pair, and pings Telegram only when spread × expected hold delivers clean profit after fees.

What lands in your channel and what the dashboard looks like — below.

Coverage

Thirty-plus perp exchanges, every contract paired

Including the exchanges most scanners skip — Hyperliquid, Lighter, EdgeX, Phemex — where spreads live longer because depth is concentrated and competitors are thin.

Binance Bybit OKX Bitget KuCoin MEXC Gate.io BingX HTX Bitmart Phemex Hyperliquid Lighter EdgeX AscendEX Coinex XT LBank + 12 more, updates monthly Binance Bybit OKX Bitget KuCoin MEXC Gate.io BingX HTX Bitmart Phemex Hyperliquid Lighter EdgeX AscendEX Coinex XT LBank + 12 more, updates monthly
Signal format

What the futures channel sends

Header carries the spread, magnitude tier, projected net at $1k. Long and Short rows show both perpetual legs with funding rates inline so you see the funding sign before you size the position.

The FUTURES table lists every perp exchange trading the contract, sorted by spread, with funding rate + cadence. Rows where funding works against you are dimmed — useful when you're picking which leg to enter on.

  • Magnitude tiers: HIGH ≥1.5%, MEDIUM ≥0.6%
  • Funding sign + cadence on every row (1h / 4h / 8h)
  • Hyperliquid, Lighter, EdgeX get a dedicated route flag
  • No deposit/withdraw checks — perps live on margin
F
Finder · FUTURES HIGH
perp ⇄ perp arbitrage
SOL 2.14% ⚡(18$ on $1000) | PERP
Long: HL_f $164.20 +0.018% 1h
Short: Bybit_f $167.71 +0.012% 8h
——————— FUTURES ⬇3/14 ——————— Exchange Dif Prof Price Funding HL_f 2.14% 18$ 164.20 +0.018% 1h Lighter_f 1.82% 14$ 164.74 +0.014% 1h Bybit_f 0.00% 0$ 167.71 +0.012% 8h
⚙️ Hold projection:
1h: +$18 · 4h: +$24 · until close ≈ $32
🕔 2026-04-29 17:44:08 UTC
17:44 ✓✓
All perp pairsFunding diffBy exchange
Route / Token
Long
Short
Spread
Net
Funding Δ
Age
S
HL_f → BYBIT_f
SOL
Hyperliquid
$164.20
Bybit_f
$167.71
+2.14%
+$18
+0.006% / 8h
4s
E
LIGHTER_f → BINANCE_f
ETH
Lighter
$3812.40
Binance_f
$3878.20
+1.72%
+$14
+0.004% / 8h
9s
D
EDGEX_f → OKX_f
DOGE
EdgeX
$0.382
OKX_f
$0.391
+2.36%
+$19
+0.011% / 8h
14s
A
PHEMEX_f → MEXC_f
AVAX
Phemex
$24.18
MEXC_f
$24.62
+1.82%
+$15
+0.008% / 8h
22s
X
XT_f → BINGX_f
XRP
XT
$0.612
BingX_f
$0.621
+1.47%
+$12
+0.005% / 8h
31s
Dashboard

Watch every perp pair, every funding flip

All perp pairs is the firehose — every exchange-pair for every contract, sorted by spread, magnitude filter, depth filter. Useful when you're shopping for the highest-spread route on a token you already want to trade.

Funding diff sorts by funding-rate divergence: large funding deltas across exchanges telegraph upcoming spread closure. Open the trade before the spread closes, exit after the funding flip.

  • Hyperliquid / Lighter / EdgeX surfaced as their own exchange group
  • Funding cadence shown so 1h vs 8h exchanges are obvious
  • Click any row → side-by-side perp orderbook walk
  • No deposit/withdraw status — perps live on margin only
Included in

Futures cross-exchange is free during beta

All arbitrage types are included with no tiers or quotas while the product is in beta.

Free during beta · no card needed

Full feature access while we polish

All arbitrage types, every exchange, every alert tier — no plans, no card, no quota. We'll announce pricing before launch; early users keep grandfathered terms.

  • Every CEX–CEX, CEX–DEX, DEX–DEX and funding alert
  • Telegram bot + web dashboard, both included
  • All 25+ exchanges, all networks, full asset coverage
  • Pre-flight: open routes, taker fees, fillable depth checked on every signal
Get alerts now
Futures–Futures FAQ

Practical questions about perp–perp arbitrage

Why no transfer? Don't I need the asset on both exchanges?
Perpetuals settle in margin currency (usually USDT or USDC), not the underlying asset. You hold USDT on both exchanges, open opposite directions on the perp contract, and your PnL nets out. No ETH or SOL or whatever ever leaves an exchange. The whole position is delta-zero from the moment the second leg fills.
Hyperliquid funds hourly, Binance every 8 hours — how does that play out?
That's exactly what makes the spread move. Hourly-funded exchanges react faster — when the spread blows out on Hyperliquid, funding rates spike within an hour and pull the price back. 8h-funded exchanges are slower to correct. The pre-trade view annotates funding cadence on every leg so you know which side will move first.
How long do these spreads typically live?
Most close inside one funding cycle — for an HL ⇄ Binance pair that's an hour. Smaller spreads (≤1%) sometimes persist for several hours when funding rates already work to maintain them. The signal carries a closure projection and the dashboard shows the spread live so you exit when it tightens.
What's the risk if the spread keeps widening?
Same as Spot–Futures: liquidation on whichever leg moves against you faster. Mitigation is conservative leverage (≤3×) on each leg and using exchanges with cross-margin so the netted PnL keeps both legs alive even if the spread stretches. Spread blowouts are rare — most that hit the channel close inside hours.
Why include Hyperliquid, Lighter, EdgeX specifically?
They're the exchanges most scanners skip — niche perp DEXes / orderbook-style L2s that have grown into real depth without competition for arbitrage. Funding rates there react differently from Binance/Bybit, so the spreads against them live longer. Bespoke parsers because they speak protocols different from the CEX standard.
Other arbitrage types
Free during beta · no card

One perp, two exchanges, different prices — the gap has to close

So you don't have to track one perp's prices across 30+ exchanges by hand — the ping arrives when spread × expected hold delivers clean profit after round-trip fees. All the math is in the message.

Get alerts