FX Options Calculator

European currency options via the Garman-Kohlhagen (1983) model. Prices calls and puts on FX pairs using both domestic and foreign interest rates. Full Greeks plus implied volatility solver.

FX Option Inputs

EUR/USD: Spot = how many USD per 1 EUR. Call = right to buy EUR (pay USD).
Units of base currency
Quote per 1 Base
Same units as spot
FX options settle T+2 typically. 30 ≈ 1-month; 90 = 3-month.
%
G10 pairs: 5–12%. EM pairs (IDR, TRY, ZAR): 8–20%. Stress: 20%+
%
Quote currency risk-free rate
%
Base currency risk-free rate
F = S × exp((rd − rf)·T). Interest rate parity.
Call Option Premium
USD per 1 EUR
Premium (notional)
Premium %
Delta
Gamma
Vega (per 1%)
Theta (per day)
Rhod (per 1%)
Rhof (per 1%)

Implied Volatility

3D Greek Surface

Drag to rotate · Scroll to zoom · X = Spot · Y = Days to Expiry · Strike marked with dashed line

The Garman-Kohlhagen Model

Mark Garman and Steven Kohlhagen published their FX option pricing model in 1983, generalising Black-Scholes to currency options by treating the foreign currency as a continuously dividend-paying asset with yield equal to the foreign interest rate rf. The formula:

Call = S·e−rf·T·N(d₁) − X·e−rd·T·N(d₂)
Put = X·e−rd·T·N(−d₂) − S·e−rf·T·N(−d₁)

d₁ = [ln(S/X) + (rd − rf + σ²/2)T] / (σ√T), d₂ = d₁ − σ√T

In the generalised BSM framework, this is simply the cost-of-carry form with b = rd − rf. The interest rate differential IS the cost of carry in FX.

Quote Convention — Base/Quote

Every FX pair is written BASE/QUOTE. The spot price tells you how many units of QUOTE currency equal 1 unit of BASE currency:

  • EUR/USD = 1.0850 → 1 EUR = 1.0850 USD. Base = EUR, Quote = USD.
  • USD/JPY = 150.00 → 1 USD = 150 JPY. Base = USD, Quote = JPY.
  • USD/IDR = 16,500 → 1 USD = 16,500 IDR. Base = USD, Quote = IDR.

In Garman-Kohlhagen, "domestic" always means the quote currency, and "foreign" always means the base currency. So for EUR/USD: rd = USD rate (e.g., Fed funds), rf = EUR rate (e.g., ECB depo). Getting this inverted is the #1 mistake in FX options.

What Does "Call on EUR/USD" Mean?

A call on the base currency (EUR in EUR/USD) is the right to BUY the base and PAY the quote at strike. If EUR/USD is 1.08 spot and you own a 1.10 call, you profit if EUR/USD rises above 1.10 at expiry.

A put on the base is the right to SELL the base and RECEIVE the quote at strike. Critically:

A call on EUR/USD is exactly equivalent to a put on USD/EUR (with inverted strike). This is why interbank traders always agree which currency is base first.

Interest Rate Parity & the Forward

The forward rate is pinned by no-arbitrage to the interest rate differential:

F = S · e(rd − rf)·T

If the base currency has a higher rate than the quote (e.g., AUD vs USD historically), then rf > rd, so F < S — the base currency trades at a forward discount. Long-dated AUD/USD calls are therefore cheaper relative to puts, all else equal. This is the rate differential effect on option pricing — ignoring it is a classic pricing error.

Greeks in FX Context

Delta — traded in FX as "% of base notional". A 25-delta call on €10M EUR/USD has a spot delta of 25% × 10M = €2.5M equivalent.

Gamma — similarly normalised. High gamma means the delta hedge needs frequent re-balancing.

Vega — biggest risk in FX options given vol surfaces are actively traded. Typical G10 1-month ATM vega is 0.03-0.05 per 1% vol move on a notional of 1.

Theta — time decay is faster in FX than equity because FX vols are usually lower → shorter effective duration.

Rhod and Rhof — unlike equity, FX options have TWO rate sensitivities. Rhod = dPrice/drd (quote rate). Rhof = dPrice/drf (base rate). For a call, Rhod is positive and Rhof is negative.

Worked Example — EUR/USD 1-month ATM Call

EUR/USD = 1.0850, 1-month ATM call (X = 1.0850), USD rate 5.25%, EUR rate 3.50%, vol 7%.

  • Premium ≈ 0.0085 USD per 1 EUR (0.78% of spot)
  • Delta ≈ 0.54 (slightly above 0.5 because forward is above spot)
  • Vega ≈ 0.0012 per 1% vol — a vol move from 7% → 8% adds ~0.00012 USD/EUR
  • Theta ≈ −0.00015 per day — premium bleeds 15 pips/day

For €10M notional, premium ≈ $85,000, vega ≈ $12,000 per vol point, daily theta ≈ −$1,500.

Emerging Market FX Options (IDR, TRY, ZAR)

EM FX options have higher vols (10–30%+) and larger rate differentials, which skew forwards dramatically:

  • USD/IDR: IDR rates ~6%, USD rates ~5% → modest forward premium; vol 6–12%
  • USD/TRY: TRY rates 40%+, USD rates 5% → massive forward premium → TRY puts expensive
  • USD/ZAR: ZAR rates ~8%, USD rates 5% → moderate premium; vol 14–18%

Always verify rates against current interbank curves before using this model in live trading.

Model Limitations

  • Constant vol — real FX surfaces have smile and skew. Use market-quoted vol for the specific delta/strike you're pricing.
  • No counterparty / NDF risk — for restricted currencies (CNY, BRL, INR), NDF quirks matter.
  • Constant rates — for long-dated FX options, stochastic rates matter; use HJM or LMM.
  • Continuous hedging — FX markets trade 24/5 but still have gaps at weekly open.

For FX exposure at portfolio level, see VaRisk Kancil's multi-currency VaR engine.

Related Tools