FRM Part I · FRM Exam Part I
The Black-Scholes-Merton Model: formula sheet
Key formulas
- Stock price process (GBM)
- dS = μS dt + σS dz
- μ is expected return, σ is volatility, dz ~ Normal(0, dt). Percentage change dS/S is normal.
- Log price process
- d(ln S) = (μ − σ²/2) dt + σ dz
- Follows from Ito's lemma. The drift of ln S is μ − σ²/2, not μ.
- Distribution of ln S_T
- ln S_T ~ Normal( ln S₀ + (μ − σ²/2)T , σ²T )
- So S_T is lognormal. Standard deviation of ln S_T is σ√T.
- Expected future price
- E(S_T) = S₀ e^(μT)
- Mean of the lognormal variable. Under risk-neutral valuation use r in place of μ.
- Variance of S_T
- Var(S_T) = S₀² e^(2μT) (e^(σ²T) − 1)
- Standard lognormal result.
- BSM differential equation
- ∂f/∂t + r S ∂f/∂S + ½σ²S² ∂²f/∂S² = r f
- Holds for any derivative on a non-dividend-paying stock. μ does not appear.
- Riskless hedge portfolio
- Π = −f + (∂f/∂S) S
- Short one derivative, long ∂f/∂S shares. The portfolio is riskless only for a short interval and must be rebalanced.
- Risk-neutral valuation
- f = e^(−rT) E*[payoff]
- E* assumes the stock drifts at r, so E*(S_T) = S₀ e^(rT).
- European call price
- c = S₀ N(d1) − K e^(−rT) N(d2)
- Non-dividend-paying stock. r is the continuously compounded risk-free rate.
- European put price
- p = K e^(−rT) N(−d2) − S₀ N(−d1)
- Uses N(−d) = 1 − N(d).
- d1
- d1 = [ln(S₀ ÷ K) + (r + σ²÷2) T] ÷ (σ √T)
- Use σ as a decimal (0.20, not 20).
- d2
- d2 = d1 − σ √T
- Equals [ln(S₀ ÷ K) + (r − σ²÷2) T] ÷ (σ √T).
- Put-call parity
- c + K e^(−rT) = p + S₀
- European options, same strike and expiry, no dividends.
- Interpretation of N(d)
- N(d2) = risk-neutral P(S_T > K); N(d1) = call delta
- Put delta is N(d1) − 1, and N(−d2) = risk-neutral P(S_T < K).
- Log (continuously compounded) return
- uᵢ = ln(Sᵢ ÷ Sᵢ₋₁)
- Use this for historical volatility. Ignore dividends unless the question says to adjust for them.
- Sample standard deviation of returns
- s = √[ Σ(uᵢ − ū)² ÷ (n − 1) ]
- n is the number of returns, which is one fewer than the number of prices. Many questions set ū ≈ 0, which gives s = √[Σuᵢ² ÷ n]. Read the question to see which version is intended.
- Annualizing volatility
- σ per year = s × √252
- Use the number of periods per year stated in the question. 252 trading days is the usual default, 12 for monthly returns, 52 for weekly.
- Volatility over a horizon
- Standard deviation over T years = σ × √T
- Volatility scales with the square root of time, variance scales with time.
- Standard error of a volatility estimate
- Standard error ≈ σ̂ ÷ √(2n)
- Approximate, for n observations. More data gives a tighter estimate.
- Implied volatility condition
- c_BSM(S, K, r, q, T, σ_imp) = c_market
- Solve for σ_imp numerically. Same for puts: p_BSM(σ_imp) = p_market.
- Newton-Raphson update
- σ_new = σ_old − (c_BSM(σ_old) − c_market) ÷ Vega
- Vega is the derivative of the option price with respect to σ.
- VIX (variance form)
- σ² = (2 ÷ T) Σ [ΔKᵢ ÷ Kᵢ²] e^(RT) Q(Kᵢ) − (1 ÷ T)(F ÷ K₀ − 1)²; VIX = 100 × σ
- Q(Kᵢ) is the mid-quote of the out-of-the-money option at strike Kᵢ. K₀ is the first strike below the forward F. T is about 30 days. Know the structure, you are unlikely to compute it in full.
- Merton call (continuous yield q)
- c = S0e^(-qT)N(d1) - Ke^(-rT)N(d2)
- Use for stock indices, and for stocks with a continuous yield. For a currency, q = rf. For a futures option, S0e^(-qT) becomes F0e^(-rT).
- Merton put (continuous yield q)
- p = Ke^(-rT)N(-d2) - S0e^(-qT)N(-d1)
- Mirror image of the call. Note the signs on d1 and d2.
- d1 and d2 with yield q
- d1 = [ln(S0 / K) + (r - q + σ²/2)T] ÷ (σ√T); d2 = d1 - σ√T
- The only change from plain BSM is r - q in place of r. Rates and σ are annual and continuously compounded.
- Known discrete dividends
- Use S* = S0 - PV(dividends) in place of S0, with q = 0
- Discount each dividend at the risk-free rate from its payment date to today. Only dividends paid before expiry count. Volatility is that of S*, the stock price net of the dividends.
- Currency options (Garman-Kohlhagen)
- c = S0e^(-rf T)N(d1) - Ke^(-r T)N(d2), with d1 = [ln(S0 / K) + (r - rf + σ²/2)T] ÷ (σ√T)
- S0 is the spot rate in domestic currency per unit of foreign currency. r is the domestic rate and rf the foreign rate.
- Black's model for futures options
- c = e^(-rT)[F0N(d1) - KN(d2)]; p = e^(-rT)[KN(-d2) - F0N(-d1)]; d1 = [ln(F0 / K) + σ²T/2] ÷ (σ√T)
- F0 is the futures price today. The option expires at T, and the formula assumes the futures matures at or after T. σ is the volatility of the futures price.
- Put-call parity with yield q
- c + Ke^(-rT) = p + S0e^(-qT)
- For futures options, c + Ke^(-rT) = p + F0e^(-rT). For discrete dividends, replace S0e^(-qT) with S0 - PV(dividends).
- Forward price link
- F0 = S0e^((r - q)T)
- Substituting this shows that q = r gives Black's model with F0 as the underlying price.
- Dilution factor
- Dilution factor = N ÷ (N + M)
- N = existing shares, M = new shares created if all warrants or options are exercised. Always between 0 and 1.
- Warrant value
- Warrant value = [N ÷ (N + M)] × c
- c is the Black-Scholes-Merton value of an otherwise identical ordinary European call, using the current stock price S0 as the input.
- Share price after exercise
- S after = (N × S + M × K) ÷ (N + M)
- S is the pre-exercise price per share. The firm receives M × K in cash and issues M new shares.
- Warrant payoff at exercise
- Payoff = N × (S − K) ÷ (N + M), if S > K
- Equals S after − K. Zero if S ≤ K.
- BSM call value
- c = S0 × N(d1) − K × e^(−rT) × N(d2); d1 = [ln(S0 ÷ K) + (r + σ²÷2) × T] ÷ (σ × √T); d2 = d1 − σ × √T
- For ESOs, set T equal to expected life, not contractual life.
- Total cost of an option grant
- Total cost = number of options × fair value per option
- If dilution is to be reflected, use the diluted per-option value.
- American vs European value
- C ≥ c and P ≥ p
- The early exercise right can only add value. It is never negative.
- No-dividend call
- C = c
- Never optimal to exercise early when the stock pays no dividend and r ≥ 0. Strictly, c > S − K when r > 0.
- Lower bound for a European call, no dividends
- c ≥ max(S − K·e^(−rT), 0)
- This bound is above S − K, which proves early exercise is not optimal.
- Lower bound for a European put, no dividends
- p ≥ max(K·e^(−rT) − S, 0)
- The American put can be worth K − S, which can exceed this bound. That is why early exercise may pay.
- American put-call bounds, no dividends
- S − K ≤ C − P ≤ S − K·e^(−rT)
- Parity is an inequality for American options, not an equality.
- Bounds with dividends
- S − D − K ≤ C − P ≤ S − K·e^(−rT), where D is the present value of dividends
- Use this form when the stock pays known dividends during the option life.
- Dividend-adjusted European call
- Use S* = S − PV(dividends) in the Black-Scholes-Merton formula
- Applies to European options with known discrete dividends.
- Early exercise of a call before ex-dividend date
- Exercise if D > K·(1 − e^(−r·Δt)) for the last ex-dividend date, roughly
- A common rule: the dividend must exceed the interest earned on K until expiry. Treat it as a rule of thumb, since time value also matters.
Quick revision
- The model assumes the stock price follows geometric Brownian motion, so returns are normal and prices are lognormal.
- Volatility and the risk-free rate are assumed constant, and the model ignores transaction costs.
- d1 = [ln(S0 ÷ K) + (r + σ²÷2)T] ÷ (σ√T), and d2 = d1 − σ√T.
- European call: c = S0 N(d1) − K e^(−rT) N(d2).
- European put: p = K e^(−rT) N(−d2) − S0 N(−d1).
- Put-call parity for European options: c + K e^(−rT) = p + S0 for a non-dividend stock.
- Implied volatility is the volatility that makes the model price equal the market price, and it is found by iteration.
- Historical volatility is estimated from past returns, and it assumes the past is a guide to the future.
- For a stock with known dividends, subtract the present value of the dividends from S0 before using the formula.
- For options on indices and currencies, replace the dividend adjustment with a continuous yield or the foreign interest rate.
- Warrants and employee options create new shares when exercised, which dilutes existing shareholders.
- An American call on a non-dividend stock is never optimally exercised early, but an American put may be.
Common mistakes
- Using μ as the mean of ln S_T. Fix: Always subtract σ²/2: the mean of ln S_T minus ln S₀ is (μ − σ²/2)T.
- Saying the stock price is normally distributed. Fix: The log price is normal, so the price is lognormal. It is skewed and always positive.
- Treating N(d2) as the real-world probability of finishing in the money. Fix: N(d2) is a risk-neutral probability, using drift r. Say risk-neutral whenever you interpret it.
- Forgetting to discount the strike, using K instead of Ke^(−rT). Fix: Always compute Ke^(−rT) as its own step before combining terms.
- Annualizing with √365 instead of √252, or multiplying by 252 instead of √252. Fix: Variance scales with time, volatility scales with its square root. Use the number of periods the question states, and 252 for daily data if none is given.
- Dividing by n instead of n − 1, or using prices instead of returns. Fix: With n + 1 prices you have n returns. Use n − 1 in the sample variance unless the question tells you to assume a zero mean.
- Using r - q in d1 but forgetting to multiply S0 by e^(-qT) in the price formula (or the reverse). Fix: q appears in two places: in d1 as r - q, and in the price as S0e^(-qT). Check both before you finish.
- Applying F0 = S0e^((r - q)T) again to a futures price that is already given, or leaving out the e^(-rT) factor in Black's formula. Fix: In Black's model, F0 is already a forward price. Use it directly in d1 and discount the whole bracket by e^(-rT).
- Using M ÷ (N + M) as the dilution factor. Fix: The factor scales the call value down to the holder's share of the gain. It is N ÷ (N + M), and it is always close to 1 when M is small.
- Valuing an ESO using its full contractual life. Fix: ESOs are exercised early and forfeited on leaving. Use the expected life as T, or a tree with early exercise.
Exam tips
- Expect a numeric question on the mean and standard deviation of ln S_T, then a normal probability. Remember μ − σ²/2 and σ√T.
- Watch the wording: 'expected price' uses μ, 'expected log price' uses μ − σ²/2, and 'risk-neutral' uses r.
- Conceptual questions often ask what is absent from the BSM equation. The answer is μ, and any risk preference.
- Know the list of assumptions and which real-world features violate them: jumps, stochastic volatility, dividends, transaction costs, discrete trading.
- Use a financial calculator or scientific mode for e^x and ln. Write each intermediate value to avoid rounding drift.
- Expect numerical questions where you must compute d1, d2 and the price, often with N(d) values supplied. Practise the arithmetic until it is automatic.
- Interpretation questions are common: N(d2) is the risk-neutral probability of exercise, N(d1) is the call delta, and N(−d2) applies to the put.
- Use put-call parity to cross-check answers or to find a missing option price. It can save you two table lookups.