Skip to content

FRM Part I · FRM Exam Part I

Exotic Options: formula sheet

Full chapter guide

Key formulas

Vanilla call payoff
max(S_T − K, 0)
The benchmark. Compare every exotic with this.
Vanilla put payoff
max(K − S_T, 0)
Depends only on the final price.
Asian average-price call payoff
max(S_avg − K, 0)
S_avg is the average of observed prices. Averaging lowers the effective volatility, so the option is usually cheaper than a vanilla call with the same strike, expiry and underlying. This is a statement about premium, not about payoff on every path.
Binary (cash-or-nothing) call payoff
Q if S_T > K, otherwise 0
Q is the fixed cash amount. The payoff is discontinuous.
Gap call payoff
S_T − K₁ if S_T > K₂, otherwise 0
K₂ is the trigger and K₁ the payoff strike. Payoff can be negative if K₁ > K₂.
Barrier in-out parity
Knock-in + knock-out (same strike, barrier, expiry) = vanilla option
Holds when there is no rebate.
Exchange option payoff
max(S₁ − S₂, 0)
The holder swaps asset 2 for asset 1.
Gap call price
c = S0 e^(−qT) N(d1) − K1 e^(−rT) N(d2)
d1 = [ln(S0/K2) + (r − q + σ²/2)T] ÷ (σ√T); d2 = d1 − σ√T. K2 is the trigger and goes in d1 and d2 only.
Gap put price
p = K1 e^(−rT) N(−d2) − S0 e^(−qT) N(−d1)
Same d1 and d2 as the gap call, using K2. Pays K1 − S_T if S_T < K2.
Gap call payoff
S_T − K1 if S_T > K2, otherwise 0
Payoff can be negative if K1 > K2.
Forward start option value
Value today = e^(−qT1) × (value at S0 = 1 of an at-the-money option with life T2 − T1) × S0
Valid for a strike set at the money at T1, constant volatility and a continuous yield q. Value the option with life T2 − T1 using the same r, q and σ. If there are no dividends, q = 0 and the factor e^(−qT1) equals 1.
Chooser option at T1
max(c, p)
Both options have strike K and expiry T2.
Chooser decomposition (no income)
Chooser = c(K, T2) + p(K e^(−r(T2 − T1)), T1)
Call with strike K and expiry T2, plus a put with expiry T1 and strike K e^(−r(T2 − T1)). Uses max(c,p) = c + max(0, p − c) and put-call parity.
In-out parity
Knock-in + Knock-out = Vanilla option
Applies when both have the same type (call or put), strike, expiry and barrier, and the same rebate treatment (no rebate). Holding both gives exactly the vanilla payoff.
Knock-in value from parity
Knock-in = Vanilla − Knock-out
Use this to find one price when you know the other two.
Barrier price bound
Knock-in ≤ Vanilla and Knock-out ≤ Vanilla
Without rebates, barrier options are never worth more than the matching vanilla option, since both values are non-negative.
Payoff of knock-out call (barrier never hit)
max(S_T − K, 0)
If the barrier is hit at any time, payoff is 0 (plus any rebate).
Payoff of knock-in call
max(S_T − K, 0) if barrier hit; otherwise 0
Same logic for puts with max(K − S_T, 0).
Barrier starting position
Down: H < S₀. Up: H > S₀
If the barrier is already breached at the start, a knock-out is worthless and a knock-in is a vanilla option.
Cash-or-nothing call payoff
Payoff = Q if S_T > K; 0 otherwise
The put pays Q if S_T < K. The payoff is fixed and does not depend on how far the option is in the money.
Asset-or-nothing call payoff
Payoff = S_T if S_T > K; 0 otherwise
The put pays S_T if S_T < K.
Cash-or-nothing call price (BSM)
c = Q × e^(-rT) × N(d2)
The put is Q × e^(-rT) × N(-d2). Here d2 = d1 − σ√T.
Asset-or-nothing call price (BSM)
c = S0 × e^(-qT) × N(d1)
The put is S0 × e^(-qT) × N(-d1). Use q = 0 for a non-dividend stock.
Vanilla decomposition
Vanilla call = Asset-or-nothing call − K × Cash-or-nothing call (Q = 1)
For the put: vanilla put = K × cash-or-nothing put (Q = 1) − asset-or-nothing put.
Floating strike lookback payoffs
Call = S_T − S_min; Put = S_max − S_T
Both are always ≥ 0, so they are always exercised at expiry.
Fixed strike lookback payoffs
Call = max(S_max − K, 0); Put = max(K − S_min, 0)
S_max and S_min are the highest and lowest prices over the monitoring period.
Average price call and put payoffs
Call = max(Savg − K, 0); Put = max(K − Savg, 0)
The average replaces the final price. The strike is fixed.
Average strike call and put payoffs
Call = max(ST − Savg, 0); Put = max(Savg − ST, 0)
The average replaces the strike. The final price is still used.
Arithmetic average
Savg = (1/n) × Σ Si
No exact closed-form price. Use moment matching or Monte Carlo.
Exchange option payoff
max(UT − VT, 0)
Right to give up V and receive U.
Margrabe formula
c = U0 × N(d1) − V0 × N(d2); d1 = [ln(U0 ÷ V0) + σ² × T ÷ 2] ÷ (σ × √T); d2 = d1 − σ × √T
Here σ² = σU² + σV² − 2ρ × σU × σV. Ignores the risk-free rate and dividend yields; with yields, replace U0 and V0 by the yield-adjusted values.
Basket payoff
max(Σ wi × Si,T − K, 0)
Weights wi. Value falls as correlation falls, because basket volatility falls.
Two-asset basket volatility
σB² = w1²σ1² + w2²σ2² + 2 × w1 × w2 × ρ × σ1 × σ2
Applies to returns on portfolio weights. Use it for a rough basket volatility.
Variance swap payoff
Payoff = N_var × (σ²_realized − K²_var)
Use consistent units. N_var is the variance notional; σ²_realized and K²_var must be in the same units (decimals or volatility points squared).
Volatility swap payoff
Payoff = N_vol × (σ_realized − K_vol)
N_vol is the notional per one volatility point. Linear in volatility.
Vega notional to variance notional
N_var = N_vega ÷ (2 × K_vol)
Used when volatility points are quoted. K_vol is the volatility strike in volatility points. Gives the variance notional per point of variance.
Realized variance (annualized)
σ²_realized = (252 ÷ n) × Σ rᵢ²
Daily log returns rᵢ, n observations, mean assumed zero in the market convention. Realized volatility is the square root.
Variance replication weights
Option weight at strike K ∝ 1 ÷ K²
Out-of-the-money puts and calls across all strikes. This is why the fair variance strike comes from the option strip.
VIX link
Variance strike ≈ (VIX ÷ 100)²
VIX is quoted in percentage points for a 30-day horizon. It approximates the fair variance strike.

Quick revision

  • Exotics have payoffs that depend on path, barriers, timing, several assets or realized volatility.
  • Barrier parity: with no rebate, knock-in plus knock-out with the same barrier, strike and expiry equals the vanilla option.
  • Without rebates, a knock-in and a knock-out are each worth no more than the matching vanilla option, and their values sum to the vanilla price.
  • Delta and gamma of barrier options can become large and unstable close to the barrier.
  • A binary (cash-or-nothing) option pays a fixed amount if the condition holds; its delta spikes near the strike at expiry.
  • A gap call pays S − K1 if S > K2, where K2 is the trigger and K1 sets the payoff; the payoff is negative when K1 > K2.
  • A floating-strike lookback call pays S_T minus the minimum price over the life, which is never negative. It is worth more than the comparable vanilla European call because it pays S_T minus the lowest price, which is at least as large as any vanilla payoff from buying at the best price in hindsight.
  • An average-price Asian option pays on an average price. The average price has lower volatility than the final price, so the Asian option is cheaper than the comparable vanilla option.
  • An exchange option gives the right to swap one asset for another; its volatility depends on both volatilities and their correlation.
  • A variance swap pays on realized variance minus the strike; a volatility swap pays on volatility, which is not linear in variance.
  • Static replication uses a fixed portfolio of vanilla options and avoids frequent rebalancing; dynamic hedging adjusts as markets move.

Common mistakes

  • Saying all exotic options are cheaper than vanilla options. Fix: Lookbacks and some others cost more. Judge each feature on whether it adds or removes payoff.
  • Treating exotics as exchange-traded. Fix: Remember exotics are mainly OTC and tailored, so liquidity and counterparty risk matter.
  • Using K1 in d1 and d2 for a gap option. Fix: Trigger K2 drives the probabilities in d1 and d2. Strike K1 appears only in the K e^(−rT) N(d2) term.
  • Assuming a gap option payoff is never negative. Fix: If K1 > K2, the gap call pays S_T − K1 when S_T is above K2, which can be negative.
  • Treating a barrier option as alive or dead based only on the final price. Fix: Barrier options are path dependent. Check whether the price touched H at any time before expiry.
  • Confusing 'up' and 'down' with in or out. Fix: Read in order: up/down gives barrier position vs S₀; in/out gives activation or cancellation; then call/put.
  • Using N(d1) for a cash-or-nothing option. Fix: Cash-or-nothing uses N(d2) as the probability of finishing in the money. Asset-or-nothing uses N(d1).
  • Forgetting to discount the cash payoff. Fix: Multiply by Q × e^(-rT). N(d2) alone is a probability, not a price.
  • Mixing up average price and average strike options Fix: Ask where the average sits. In average price, it replaces the asset price. In average strike, it replaces the strike.
  • Saying an arithmetic Asian option has an exact Black-Scholes formula Fix: Only the geometric average gives a lognormal result. Arithmetic needs approximation or simulation.

Exam tips

  • Learn one-line payoffs for each exotic type; many questions reduce to picking the right payoff.
  • Always compare with the vanilla benchmark to judge relative price.
  • Know the hedging difficulty: barriers and binaries have large delta and gamma near the trigger.
  • Expect conceptual wording about OTC, customisation and liquidity; avoid absolute words like always and never.
  • Check in-out parity when a question gives two barrier values.
  • Check which strike goes where in a gap option: trigger in d1 and d2, payoff strike in the discount term.
  • Know the chooser decomposition into a call plus a shorter-dated put and be able to state it.
  • Compound options are usually tested conceptually: four types, two strikes, usually a lower upfront premium than the direct option.