Cross-rate arithmetic converts between two currencies through a third. In common forex terminology, crosses are pairs without USD, but the calculation can use any shared currency. Write the units first: they tell you whether to multiply, divide or invert a quote.

A calculation is not two compulsory trades

See major, minor and exotic pairs for the market terminology. Deriving a cross from USD quotes does not mean every direct cross trade is executed as two dollar transactions. Nor does it establish that its spread must exceed those of its component pairs.

Every result needs a direction. EUR/JPY is JPY per EUR; EUR/GBP is GBP per EUR. A reference calculation is different from an executable price for a specified amount.

Multiply when the intermediate units cancel

Use hypothetical rates of EUR/USD = 1.1000 USD per EUR and USD/JPY = 150.00 JPY per USD. Their product is 165.00 JPY per EUR: USD/EUR × JPY/USD = JPY/EUR. That is the implied EUR/JPY rate in a model without spreads.

For a separate GBP/JPY example, 1.2500 USD per GBP × 150.00 JPY per USD gives 187.50 JPY per GBP. These are exercise inputs, not current reference levels or expected trading ranges.

Divide two prices in the same currency

With EUR/USD = 1.1000 and GBP/USD = 1.2500, EUR/GBP is 1.1000 / 1.2500 = 0.8800 GBP per EUR. The units are (USD per EUR) / (USD per GBP). Reversing the division gives EUR per GBP instead.

Check base and quote currencies before applying a mnemonic. If a quote is inverted, its bid and ask also exchange roles: the inverted bid is 1 / original ask, and the inverted ask is 1 / original bid.

Illustrative model · how it works

Division pairs the opposite sides of the quote

You sell euros at the bid and buy pounds at the ask. Buying euros with pounds reverses both operations. Follow the two routes using the same 100 EUR amount.

Scroll sideways to see the full diagram

Division pairs the opposite sides of the quoteHypothetical simultaneous EUR/USD quotes of 1.1000 / 1.1002 and GBP/USD quotes of 1.2500 / 1.2502. Selling 100 EUR yields about 87.9859 GBP; buying 100 EUR costs 88.0160 GBP.Two USD quotes → one GBP quoteEUR/USD · USD per EURbid 1.1000 / ask 1.1002GBP/USD · USD per GBPbid 1.2500 / ask 1.2502Sell 100 EUR for GBP100 × 1.1000 ÷ 1.2502≈ 87.9859 GBPBuy 100 EUR with GBP100 × 1.1002 ÷ 1.2500= 88.0160 GBPDivision uses opposite sides of the quotes.

Hypothetical rates with full execution of both exchanges, no separate fees and no slippage. These are neither live quotes nor evidence of arbitrage. Buying at the ask and selling at the bid: MetaTrader 5; ECB reference rates are for information only.

The synthetic EUR/GBP bid is approximately 0.879859 and the ask is 0.880160. The units cancel as (USD per EUR) ÷ (USD per GBP) = GBP per EUR.

Use the correct bid and ask

For hypothetical EUR/USD 1.1000 / 1.1002 and USD/JPY 150.00 / 150.03, the synthetic EUR/JPY bid is 1.1000 × 150.00 = 165.0000; the ask is 1.1002 × 150.03 = 165.063006. This orientation multiplies bid by bid and ask by ask.

Division uses opposite sides: EUR/GBP bid = EUR/USD bid / GBP/USD ask; EUR/GBP ask = EUR/USD ask / GBP/USD bid. The worked diagram below follows those two conversion routes. A direct quote minus a synthetic midpoint does not measure the provider's exact spread or markup. Its own spread is ask minus bid.

For currency exposure, amounts matter too. At 1.1000, acquiring 100,000 EUR uses 110,000 USD in a deliverable exchange. An offsetting USD/JPY exchange must match that dollar amount, rather than simply use the same base-currency lot count. CFDs require a separate check of contract units, profit currency and financing; see forex basics.

Volatility is measured, not fixed by the ticker

An ATR value depends on the data, timeframe, period and calculation. It is neither a guaranteed future range nor a probability that a stop will be hit. Two pairs with different pip conventions also need a common risk measure before comparing a fixed number of pips.

State the observation period when using ATR. Choose a stop with a defined invalidation and size the position for its planned loss; no universal fraction of ATR guarantees protection from ordinary price movement.

Test an entire arbitrage route

Add a direct EUR/JPY quote of 165.00 / 165.02 to the hypothetical prices above. Buying 1,000 EUR directly costs 165,020 JPY. Selling those euros through USD yields 1,100 USD, then 165,000 JPY. The completed route loses 20 JPY before separate fees, despite a higher synthetic midpoint.

A possible discrepancy requires executable sides, synchronized prices, sufficient size and all costs. Sequential execution can leave an open exposure. A gap on a screen does not establish risk-free profit or prove a central bank intervention.

Five checks before trusting the result

Check units, direction, timestamp, the correct bid or ask, and rounding. Reference rates are for information; they are not an offer to transact at that price. An unexpected result is a reason to recheck the inputs, rather than assume EUR/JPY must always be near a particular level.

Apply the arithmetic to your own contract

Write a small conversion using hypothetical inputs, then compare its unit structure with the contract specification. Keep currency amounts, spread costs and account-currency conversion separate. The guide to risk management helps connect the resulting exposure with the loss you intend to budget.

Explore real source data

250 shared dates in 2025. A reproducible comparison of reference rates, with monthly results and explicit limitations.

USD/PLN reference rates: why NBP and ECB differ on the same date →