Forex Triangular Arbitrage Gap Calculator

JJ Ben-Joseph headshot JJ Ben-Joseph

What is a Forex Triangular Arbitrage Gap?

Triangular arbitrage arises when three related currency pairs are quoted at prices that are not perfectly consistent with each other. In theory, the direct cross rate between two currencies should match the synthetic rate implied by trading through a third currency. When the synthetic rate is better than the direct rate (after costs), a trader can potentially lock in a small, low‑risk profit by executing a three‑leg loop.

This calculator focuses on the arbitrage gap between the direct cross (A/C) and the synthetic cross created by combining A/B and B/C. It uses your bid/ask quotes, starting amount, and per‑leg costs to estimate the net profit or loss from running a full loop in one direction.

How the Arbitrage Gap is Calculated

To understand the gap, you need two rates:

  • Direct cross rate A/C – the market quote for currency A versus currency C.
  • Synthetic cross rate A/C via B – the rate implied by trading A/B and B/C together.

Ignoring bid/ask for the moment, the synthetic rate is simply:

R_synthetic = R_A/B × R_B/C

In live trading, you must respect the direction of each leg and use the appropriate bid or ask:

  • If you sell a currency pair, you transact at the bid.
  • If you buy a currency pair, you transact at the ask.

A typical loop might be:

  1. Convert currency A to B using the A/B pair.
  2. Convert B to C using the B/C pair.
  3. Convert C back to A using the A/C pair.

The calculator multiplies your starting amount in A through each leg, applying bid or ask depending on the trade direction chosen by the underlying logic. It then deducts transaction costs and expected slippage, quoted in basis points (bps), from each leg’s notional amount.

Incorporating Costs and Slippage

Your per‑leg costs are entered as bps. One basis point is one hundredth of a percent:

1bp = 0.01% = 0.0001

If the total per‑leg friction (transaction cost + slippage) is c bps, then the fraction of notional lost per leg is:

f = c × 0.0001

The calculator reduces the effective amount on each leg by this fraction. Over three legs, the combined effect can easily erase a small theoretical arbitrage.

Interpreting the Results

The output typically includes your final amount in currency A after all three legs and a net profit or loss figure relative to your starting amount. Interpretation guidelines:

  • Positive net profit: The synthetic loop outperforms the direct cross after costs and slippage. There may be a tradable arbitrage, subject to execution risk.
  • Near‑zero net profit: The gap is too small to justify the operational complexity and risk of firing a three‑leg sequence.
  • Negative net profit: Costs and spreads more than offset the theoretical mispricing. The loop is not profitable in this direction.

You can also think in terms of return in bps on your starting amount:

Return (bps) = (Net Profit / Starting Amount) × 10,000

This lets you compare the opportunity to your usual trading edge or minimum acceptable spread.

Worked Example

Imagine you are trading three currencies:

  • A = EUR
  • B = USD
  • C = JPY

You observe the following quotes (units of quote currency per 1 base currency):

  • EUR/USD bid = 1.0998, ask = 1.1000
  • USD/JPY bid = 149.80, ask = 149.84
  • EUR/JPY bid = 164.60, ask = 164.65

You start with 100,000 EUR in currency A, transaction cost of 0.5 bps per leg, and expected slippage of 0.5 bps per leg (1.0 bp total).

Step by step, a EUR → USD → JPY → EUR loop might look like this conceptually:

  1. Sell EUR for USD at the EUR/USD bid: you receive about 109,980 USD (before costs).
  2. Sell USD for JPY at the USD/JPY bid: you receive about 16,463,604 JPY.
  3. Sell JPY for EUR via EUR/JPY at the ask (equivalent to buying EUR): divide JPY by 164.65 to get back about 99,982 EUR before costs.

On the raw bid/ask quotes, you already lose a small amount to spread. Now apply 1 bp per leg. At 100,000 EUR notional, 1 bp is 10 EUR per leg, or roughly 30 EUR across three legs (more precisely, each leg’s bp cost is computed on the leg’s own notional). When you include these frictions, the calculator will show a slightly negative net profit, indicating there is no real arbitrage despite any apparent theoretical mispricing.

Comparison With Related Forex Tools

Triangular arbitrage analysis sits alongside other risk and pricing tools you may use. Conceptually:

Tool Main Question Answered Primary Inputs Typical Use Case
Triangular Arbitrage Gap Calculator Is there a profitable misalignment between three FX pairs after costs? Three bid/ask pairs, trade size, per‑leg bps Scanning live quotes for short‑lived arbitrage loops.
Forex Pip Value Calculator How much is one pip worth in my account currency? Pair, price, position size, account currency Sizing trades and translating price moves into P&L.
Margin Call Distance Calculator How far can price move before I hit a margin call? Leverage, balance, margin requirement, position size Risk management and stress testing positions.

Together, these tools help you judge both whether a pricing edge exists and whether it is worth the capital, leverage, and operational risk involved.

Assumptions and Limitations

Triangular arbitrage in practice is constrained by several real‑world factors. This calculator is designed as an analytical aid and makes the following assumptions:

  • Simultaneous execution: All three legs are assumed to execute at their displayed quotes with no delay. In reality, quote updates and latency can cause fills to deviate.
  • No partial fills or rejects: The model assumes your entire order is filled on each leg. In thin markets, you may receive only partial fills or worse prices on the remaining size.
  • No extra venue or brokerage fees: Only the per‑leg bps inputs are considered. Any ticket fees, exchange fees, or rebates outside those numbers are ignored unless you incorporate them into the bps values.
  • Sufficient liquidity at top of book: The calculator assumes you can trade your full size at the best bid/ask. For larger tickets, market impact can move the price during execution, shrinking or reversing the arbitrage.
  • Consistent, simultaneous quotes: The inputs should represent live, synchronized quotes from the same or comparable venues. Stale or inconsistent quotes can create artificial “arbitrage” that is not actually executable.
  • Direction fixed per scenario: The tool evaluates the loop in a defined direction (e.g., A → B → C → A). The opposite direction may have a different gap because you would use the opposite side of each market.

Because of these limitations, a positive theoretical gap is not a guarantee of profit. It simply flags a potential opportunity that must be tested against your execution quality, latency, and capital constraints.

Practical Use and Risk Considerations

To use this calculator effectively:

  • Feed it consistent, current quotes for all three pairs.
  • Enter a realistic starting size for currency A that matches what you might actually trade.
  • Estimate transaction cost and slippage based on your broker, venue, and historical fills. Underestimating these values will overstate arbitrage profitability.
  • Compare the resulting net profit and return in bps to your operational risk tolerance and the complexity of monitoring and firing three‑leg sequences.

Always remember that triangular arbitrage edges are typically tiny and short‑lived. Even with a favorable gap, execution delays, changing spreads, and liquidity constraints can turn a calculated profit into a real‑world loss. Use the outputs as one input into your decision‑making, not as an automated trade signal.

Triangular arbitrage in practice

Foreign exchange markets trade currency pairs that relate one currency to another. If you multiply the price of A/B by B/C, you obtain an implied price for A/C. When the actual quoted A/C price diverges from the implied price, you can simultaneously trade all three pairs to lock in a profit. Executing this strategy requires speed, access to competitive spreads, and awareness of transaction costs. AgentCalc already provides tools for sizing trades (through the pip value calculator) and for protecting positions (via the margin call distance calculator). The triangular arbitrage gap calculator completes the toolkit by checking whether the apparent mispricing survives after fees and slippage.

The calculator evaluates two loops. Loop 1 starts with currency A, sells it for B using the A/B bid, uses B to buy C via the B/C bid, and then converts C back to A using the A/C ask. Loop 2 mirrors the process in the opposite direction: start with A, buy C at the A/C bid, trade C for B at the C/B bid (equivalently 1 divided by the B/C ask), and finish by buying A with B at the A/B ask. Each leg multiplies the notional by the relevant rate after deducting transaction costs and slippage expressed in basis points. The final amount compared with the starting notional reveals the profit or loss.

The synthetic cross rate generated by the other two pairs is compared to the direct cross rate to quantify the raw mispricing. A positive gap does not guarantee profit because each leg erodes value through spreads and fees. The calculator therefore subtracts an “all-in cost factor” from each rate so you can test whether the mispricing is large enough to overcome friction. This is especially helpful for retail traders whose per-trade costs are higher than institutional desks.

Mathematics behind the gap

Suppose you quote pair A/B with bid price q b and ask price q a . Likewise, pair B/C has bid r b and ask r a , and pair A/C has bid s b and ask s a . Ignoring costs, the synthetic ask for A/C inferred from A/B and B/C is q a × r a , while the synthetic bid equals q b × r b . A triangular arbitrage opportunity exists when the actual bid/ask for A/C lies outside this synthetic interval. After deducting basis-point costs, the calculator computes the final capital after each loop via A final = A 0 × q b × r b × 1 s a × ( 1 c ) , where c aggregates per-leg cost factors converted from basis points.

Costs in basis points are converted into multiplicative adjustments via f = 1 < mi=""> 10 ^ 4 . Each leg multiplies the traded amount by this factor to model commissions and slippage. Because costs accumulate, even a seemingly attractive mispricing may vanish after three deductions. The calculator surfaces both the net payoff and the breakeven mispricing—the percentage gap that would reduce your profit to zero.

Worked example

Imagine you monitor EUR/USD (A/B), USD/JPY (B/C), and EUR/JPY (A/C) quotes. EUR/USD trades at 1.06620/1.06626, USD/JPY at 149.52/149.54, and EUR/JPY at 159.35/159.39. You can start with €100,000. Transaction costs are 0.4 bps per leg with expected slippage of 0.2 bps per leg because of fast markets. Feeding these quotes into the calculator shows that Loop 1 (sell EUR for USD, USD for JPY, JPY for EUR) returns approximately €100,018 after costs, a profit of €18 or 1.8 pips. Loop 2 yields a slight loss because the actual cross is inside the synthetic interval for that direction. The tool additionally reports a breakeven gap of 0.00018 (1.8 pips); if the dislocation were any smaller, fees would erase the edge.

The output also includes the synthetic bid/ask interval for EUR/JPY and the percentage mismatch between the actual quote and the implied value. These diagnostics help confirm whether latency or stale quotes caused the opportunity. The net profit is displayed both in currency A and as a percentage of the starting notional, enabling comparisons across trade sizes. If you run the calculator multiple times per day, you can build a log of how often your broker quotes actionable mispricings versus merely theoretical ones.

Comparison of arbitrage conditions

Triangular arbitrage windows vary dramatically depending on spreads and volatility. The table contrasts three common scenarios using the same €100,000 notional. In each case the calculator deducts 0.6 bps in combined costs per leg.

Market state Raw Mispricing (pips) Net Profit (€) Execution comment
Calm Asian session 0.7 -4 Spreads dominate; avoid trade.
Moderate London open 1.8 12 Viable if fills are simultaneous.
Volatile data release 3.6 42 Large edge but higher slippage risk.

Logging these scenarios clarifies whether your infrastructure and cost structure support arbitrage. If most opportunities fall below the breakeven threshold, improving execution speed or negotiating tighter spreads might yield a bigger payoff than chasing more signals.

Interpreting the outputs

The calculator summarizes the direct versus synthetic cross rates, loop profits in both directions, and breakeven gap. You also see the all-in-cost percentage per leg so you can double-check commissions and market-impact assumptions. A warning appears if any calculated rate is non-positive, signaling inconsistent inputs. Because arbitrage requires near-simultaneous execution, the tool emphasizes percentage payoff so you can compare it with latency risk. A 0.02% edge can disappear during a single 100 ms delay.

Beyond immediate trading, the calculator aids in planning. Suppose you run a carry trade and want to hedge currency risk intraday. Evaluating triangular gaps reveals whether hedging is cheaper through direct crosses or synthetic paths. Similarly, algorithm designers can plug in historical spread data to stress-test whether their strategy would have cleared costs.

Staying cautious

Triangular arbitrage is low risk only when all three legs confirm and clear simultaneously. Retail brokers may reject one leg, leaving you with an unintended open position. Use the breakeven gap to set alarms that exceed your minimum fill probability. Consider automating the input feed from your trading platform to minimize manual entry errors. Always test with small notionals before scaling.

With disciplined monitoring, this calculator helps ensure that every arbitrage attempt is deliberate. Combined with AgentCalc’s existing forex suite, you can evaluate trade sizing, financing, margin, and execution quality within a single ecosystem.

Rates should be consistent live quotes: pair A/B expresses units of B per 1 unit of A, and so on. Costs in basis points apply to the notional traded on each leg. Slippage covers fill uncertainty beyond the quoted bid/ask spread.

Enter live bid/ask quotes to analyze direct and synthetic cross rates and the resulting arbitrage gap.

Embed this calculator

Copy and paste the HTML below to add the Forex Triangular Arbitrage Gap Calculator - Cross Rate Profitability to your website.