Skip to content

CFA Level I · CFA Level I Exam

Exchange Rate Calculations: formula sheet

Full chapter guide

Key formulas

Quote convention
P/B = units of price currency per 1 unit of base currency
The currency after the slash is the base. It is always 1 unit.
Inverting a quote
B/P = 1 ÷ (P/B)
Use this to switch base and price currency. Invert the number, then swap the labels.
Direct vs indirect
Indirect quote = 1 ÷ direct quote
Direct means domestic currency per 1 foreign. Which is direct depends on the investor's domestic currency.
Converting an amount
Amount in price currency = amount in base currency × (P/B)
Multiply when you hold base currency. Divide when you hold price currency.
Bid-ask spread (absolute)
Spread = Ask − Bid
Quoted in price-currency units per unit of base currency. One pip is usually 0.0001.
Spread as a percentage
Spread % = (Ask − Bid) ÷ Ask × 100
Some questions divide by the mid price instead. Use the base the question states; if none, use the ask.
Inverting a bid-ask quote
For A/B = Bid - Ask: B/A bid = 1 ÷ Ask(A/B); B/A ask = 1 ÷ Bid(A/B)
Reciprocal and swap. The inverted ask must exceed the inverted bid.
Dealer's side rule
Dealer buys base at the bid; dealer sells base at the ask
You, the client, do the opposite: you sell base at the bid and buy base at the ask.
Cross rate (midpoint, common currency cancels)
B/C = (A/C) ÷ (A/B) or B/C = (B/A) × (A/C)
Quotes are price/base. The common currency A must cancel. Check that the units of your answer are B per 1 C.
Bid-ask cross rate: same price currency (divide)
bid of B/C = bid(A/C) ÷ ask(A/B); ask of B/C = ask(A/C) ÷ bid(A/B)
Lowest numerator over highest denominator gives the bid. Highest numerator over lowest denominator gives the ask.
Bid-ask cross rate: common currency is base in one quote and price in the other (multiply)
bid of B/C = bid(B/A) × bid(A/C); ask of B/C = ask(B/A) × ask(A/C)
A is the base currency in B/A (after the slash) and the price currency in A/C (before the slash), so A cancels and the product is B/C. Bid with bid and ask with ask. If A is not in this position in both quotes, invert one quote first (and swap its bid and ask).
Triangular arbitrage test
Arbitrage if quoted cross bid > implied cross ask, or quoted cross ask < implied cross bid
If the quoted cross rate lies inside the implied bid-ask range, there is no arbitrage.
Inverting a quote
A/B bid = 1 ÷ (B/A ask); A/B ask = 1 ÷ (B/A bid)
Inverting a bid-ask quote swaps the sides. The inverse of the ask becomes the new bid.
Covered interest parity (annual, simple)
F = S × (1 + i_price) ÷ (1 + i_base)
S and F are price currency per 1 base currency. Rates are annual for a 1-year forward.
CIP for a forward shorter than a year
F = S × [1 + i_price × (days ÷ 360)] ÷ [1 + i_base × (days ÷ 360)]
Use the day-count in the question (360 for most money-market rates; some currencies use 365). Use the stated convention.
Forward points
Points = (F − S) × scale
Scale is 10,000 for most pairs and 100 for JPY pairs. So F = S + points ÷ scale.
Forward premium or discount on base currency
(F − S) ÷ S
Positive = base at premium. Negative = base at discount. It is approximately the interest differential (i_price − i_base) over the period.
Direction rule
Higher interest rate currency → forward discount
If i_price > i_base, then F > S, meaning the base trades at a premium and the price currency at a discount.
Quote convention
Quote = price currency / base currency (P/B)
Read USD/EUR = 1.10 as 1 EUR = 1.10 USD. EUR is the base.
Change in base currency
% change in base = (S_new ÷ S_old) − 1
Positive means the base appreciated against the price currency.
Change in price currency
% change in price currency = (S_old ÷ S_new) − 1
Equivalent to −(% change in base) ÷ (1 + % change in base).
Inverting a quote
B/P = 1 ÷ (P/B)
Use this to restate the quote so the currency you are measuring is the base.

Quick revision

  • A quote A/B = x means 1 unit of A (base) costs x units of B (price).
  • To invert a quote, take 1 ÷ x and swap the currency order.
  • Bid is the price at which the dealer buys the base currency; offer (ask) is where the dealer sells it.
  • You, the client, sell the base at the bid and buy the base at the offer.
  • Spread = offer − bid; it is the dealer's compensation and is wider for less liquid pairs.
  • Inverting a bid-ask quote: the new bid is 1 ÷ old offer and the new offer is 1 ÷ old bid.
  • Cross rate: A/C = (A/B) × (B/C); check that the middle currency cancels.
  • Triangular arbitrage exists when the quoted cross rate differs from the implied one after using the correct bid and offer sides.
  • Forward rate (price/base) F = S × (1 + i price × T) ÷ (1 + i base × T), using the same simple-interest convention as the question.
  • Forward points are F − S scaled by the quote's convention (usually 1/10,000, with 1/100 for JPY pairs); convert them back to a decimal correctly before adding to spot.
  • The currency with the higher interest rate trades at a forward discount under covered interest parity.
  • Base currency % change = (new spot ÷ old spot) − 1 for a price/base quote. Price currency % change = (old spot ÷ new spot) − 1 = 1 ÷ (1 + Δbase) − 1, which is not simply the negative of the base change.

Common mistakes

  • Reading USD/EUR as dollars divided by euros and treating USD as the base. Fix: Remember the first currency is the price currency. The second is the base, worth 1 unit. Say 'dollars per euro' aloud.
  • Calling a quote direct or indirect without checking whose domestic currency it is. Fix: Ask which currency is domestic. If it is the price currency, the quote is direct. If it is the base, indirect.
  • Inverting each side in place, so the bid becomes 1 ÷ bid. Fix: Swap as well. New bid = 1 ÷ old ask. New ask = 1 ÷ old bid. Check that the ask exceeds the bid.
  • Using the bid when you are buying the base currency. Fix: Say it aloud: the dealer buys at the bid, sells at the ask. You get the opposite and always the worse price.
  • Using the wrong side (bid or ask) when building the cross rate Fix: For a divide-type cross, pair the bid of the numerator with the ask of the divisor to get the lowest value, and the ask of the numerator with the bid of the divisor for the highest. Then check that bid is below ask.
  • Inverting the answer (getting GBP/EUR instead of EUR/GBP) Fix: Say each quote aloud, such as '1 GBP costs 1.27 USD'. Make the answer's price currency match what the question asks. Use a size check on the result.
  • Putting the interest rates the wrong way round in the formula. Fix: The price currency (the numerator of the quote) goes on top. Then run the direction check: higher price-currency rate means F > S.
  • Using points as if one point is always 0.01. Fix: Use 0.0001 per point for most pairs and 0.01 for JPY quotes. Check the number of decimals in the spot.
  • Reporting the same percentage, with opposite sign, for both currencies. Fix: Percentages use different starting values. Recompute using the inverted quote or the old ÷ new formula.
  • Reading the quote backwards and picking the wrong base currency. Fix: Always read P/B as price currency per one unit of base. The denominator is the base.

Exam tips

  • Always translate the quote into words before doing any arithmetic. It takes five seconds and removes most traps.
  • Wrong options are often the result of multiplying instead of dividing, or of using the unchanged rate. Compute the sensible answer first, then match it.
  • Check the question for the investor's domestic currency before calling a quote direct or indirect.
  • Use the 1/x key for inversion and keep four decimal places until the final answer.
  • Use the sanity check: if 1 EUR costs more than 1 USD (the rate is above 1), EUR is the more valuable currency. A USD amount converts into a smaller EUR amount, and a EUR amount converts into a larger USD amount.
  • Questions are three-option MCQs. A wrong option is often the in-place reciprocal (1 ÷ bid, 1 ÷ ask). Reject any option where the bid exceeds the ask.
  • Read which currency is the base before computing. The same numbers mean different trades if the quote is flipped.
  • In a transaction question, assume you receive the worse price and do not average bid and ask unless the question gives a mid-rate.