CFA Level II Exam · Valuation of Contingent Claims
Black-Scholes-Merton Model for CFA Level II
Updated 7 October 2026 · Fact-checked
The Black-Scholes-Merton model prices a European option from five inputs: stock price, strike, risk-free rate, volatility and time, with an optional dividend yield. Compute d1, then d2 = d1 − σ√T, look up N(d1) and N(d2), and plug them into the call or put formula. Discount the strike at the risk-free rate.
Understand Black-Scholes-Merton Model
The model values a European option by building a replicating portfolio of the stock and a risk-free bond. Because the option can be replicated, its price does not depend on investor risk preferences. That is why the risk-free rate appears and the stock's expected return does not.
The call value has two parts. The first is the stock leg: the stock price (adjusted for dividends) times N(d1). The second is the bond leg: the present value of the strike times N(d2). The call is a leveraged long position in the stock financed by borrowing. N(d1) is the delta of the call (for a non-dividend stock). N(d2) is the risk-neutral probability that the call finishes in the money.
The key assumptions are these: the stock follows geometric Brownian motion, so continuously compounded returns are normal and prices are lognormal. Volatility and the risk-free rate are constant and known. There are no transaction costs or taxes. Trading is continuous and short selling is allowed. The option is European, so no early exercise. Dividends are a known continuous yield, or none.
The limitations follow from the assumptions. Real volatility is not constant, which produces the volatility smile. Prices can jump, so returns have fat tails. Trading is not frictionless. American options need adjustments or other models. The model is usually not suited to options on bonds, because bond prices converge to par and rates are not constant.
In the vignette you will usually be given the inputs and a table of N(x) values. Your job is to compute d1 and d2 accurately, choose the right table entries, and apply the formula with the correct dividend adjustment.
Key formulas to remember
- d1
- d1 = [ln(S₀ ÷ X) + (r − δ + σ² ÷ 2) × T] ÷ (σ × √T)
- r is the continuously compounded risk-free rate, δ the continuous dividend yield (0 if none), σ the annual volatility, T in years.
- d2
- d2 = d1 − σ × √T
- Always subtract σ√T from d1, not from the numerator.
- European call
- c = S₀ × e^(−δT) × N(d1) − X × e^(−rT) × N(d2)
- With no dividends, e^(−δT) = 1.
- European put
- p = X × e^(−rT) × N(−d2) − S₀ × e^(−δT) × N(−d1)
- Use N(−d) = 1 − N(d).
- Put-call parity check
- c − p = S₀ × e^(−δT) − X × e^(−rT)
- A quick way to verify your call and put values.
- Option deltas
- Call delta = e^(−δT) × N(d1); Put delta = e^(−δT) × [N(d1) − 1]
- Call delta lies between 0 and 1; put delta between −1 and 0.
How to solve Black-Scholes-Merton Model questions
Use the same sequence for every Black-Scholes-Merton question. Write each intermediate value down to avoid errors.
- 1List the inputs from the vignette: S₀, X, r, δ, σ, T. Convert T to years and make sure r and δ are continuously compounded (if quoted as discrete rates, convert with ln(1 + rate)).
- 2Compute ln(S₀ ÷ X).
- 3Compute the drift term (r − δ + σ² ÷ 2) × T and add it to the log term.
- 4Divide by σ√T to get d1, then subtract σ√T to get d2.
- 5Find N(d1) and N(d2) from the table or from values given. For negative d, use N(−d) = 1 − N(d).
- 6Compute the discount factors e^(−δT) and e^(−rT).
- 7Apply the call or put formula. For a put, you can price the call and use put-call parity.
- 8Sanity check: the call must be at least max(0, S₀e^(−δT) − Xe^(−rT)) and the put value must be positive.
Quickest way: Use parity and delta shortcuts
When to use it: When the item set asks for both a call and a put, or asks for delta or a hedge, rather than a full recalculation.
- Calculate d1, d2 and the call value once.
- Get the put from c − p = S₀e^(−δT) − Xe^(−rT) instead of recomputing N(−d) terms.
- Read call delta straight from e^(−δT) × N(d1); put delta is the call delta minus e^(−δT).
- For direction questions, remember that a higher S₀, σ, T or r raises a call, and a higher δ lowers it. Answer without calculating.
- Eliminate options that break bounds, such as a call above the stock price.
Common mistakes in Black-Scholes-Merton Model
Using the stock's expected return instead of the risk-free rate in d1.
Other models, such as CAPM, use expected return, so it feels natural.
Fix: The BSM model uses only r. Expected return is irrelevant because the option is priced by replication.
Computing d2 as d1 − σ² × T or d1 − σ instead of d1 − σ√T.
The pieces σ, σ² and √T are easy to mix up under time pressure.
Fix: Compute σ√T once, use it as the denominator of d1, and subtract that same number to get d2.
Forgetting to adjust for dividends, or adjusting only d1.
Students memorise the no-dividend formula.
Fix: Subtract δ in the drift term of d1, and multiply S₀ by e^(−δT) in the price formula. Both are required.
Using N(d) for a put instead of N(−d).
The call and put formulas look similar.
Fix: Puts use N(−d2) and N(−d1). Compute them as 1 − N(d2) and 1 − N(d1).
Treating N(d2) as the probability of exercise in the real world.
The word probability is attached without its qualifier.
Fix: N(d2) is the risk-neutral probability that the call ends in the money, not a real-world forecast.
Entering T in months or using a discrete rate in the exponent.
Vignettes quote 6 months or a percentage per year.
Fix: Convert months to years (6 months = 0.5). Use e^(−rT) with the continuous rate given, or convert a discrete rate first.
Worked examples
Example 1
A stock trades at ₹100 (treat as 100 units). A European call has a strike of 95, 6 months to expiry. The continuously compounded risk-free rate is 5%, volatility is 20%, and the stock pays no dividends. Given N(0.61) = 0.7291 and N(0.47) ≈ 0.6805 (use these for N(d1) and N(d2) after rounding). Q1: What are d1 and d2? Q2: What is the call value? Q3: What is the call's delta?
Show the solution
- Q1: ln(100 ÷ 95) = 0.0513. Drift term = (0.05 + 0.20² ÷ 2) × 0.5 = (0.05 + 0.02) × 0.5 = 0.035.
- Numerator = 0.0513 + 0.035 = 0.0863. σ√T = 0.20 × √0.5 = 0.1414.
- d1 = 0.0863 ÷ 0.1414 = 0.61. d2 = 0.61 − 0.1414 = 0.47 (about 0.4688 unrounded).
- Q2: e^(−0.05 × 0.5) = e^(−0.025) = 0.97531. Stock leg = 100 × 0.7291 = 72.91.
- Bond leg = 95 × 0.97531 × 0.6805 = 92.6545 × 0.6805 = 63.05.
- Call = 72.91 − 63.05 = 9.86.
- Q3: With no dividends, call delta = N(d1) = 0.7291.
Answer: d1 ≈ 0.61 and d2 ≈ 0.47; the call is worth about 9.86; its delta is about 0.73, so a 1-unit rise in the stock raises the call by about 0.73.
Example 2
A stock is priced at 50. A 1-year European option has a strike of 50. The continuously compounded risk-free rate is 4%, the continuous dividend yield is 2%, and volatility is 25%. Given N(0.205) = 0.5813 and N(−0.045) = 0.4820. Q1: What is the call value? Q2: What is the put value? Q3: What is the call delta?
Show the solution
- Drift term: (0.04 − 0.02 + 0.25² ÷ 2) × 1 = (0.02 + 0.03125) = 0.05125. ln(50 ÷ 50) = 0.
- d1 = 0.05125 ÷ 0.25 = 0.205. d2 = 0.205 − 0.25 = −0.045.
- N(d1) = 0.5813 and N(d2) = 0.4820. So N(−d1) = 0.4187 and N(−d2) = 0.5180.
- Discount factors: e^(−0.02) = 0.98020 and e^(−0.04) = 0.96079.
- Q1: Call = 50 × 0.98020 × 0.5813 − 50 × 0.96079 × 0.4820 = 28.49 − 23.16 = 5.33.
- Q2: Put = 50 × 0.96079 × 0.5180 − 50 × 0.98020 × 0.4187 = 24.88 − 20.52 = 4.36.
- Parity check: c − p = 5.33 − 4.36 = 0.97, and 49.01 − 48.04 = 0.97. It matches.
- Q3: Call delta = e^(−0.02) × 0.5813 = 0.98020 × 0.5813 = 0.570.
Answer: The call is worth about 5.33, the put about 4.36, and the call delta is about 0.57.
Exam tips
- Most questions give N(x) values or a table. Check which argument each given value belongs to before using it.
- Dividend questions are the common trap. Confirm that δ appears in d1 and in the S₀e^(−δT) term.
- Many items ask for direction, such as what happens to a call if volatility rises. Answer from the model's logic and skip the calculation.
- Use put-call parity to get the put or to check your answer. It saves time and catches errors.
- Know the limitations, as they are tested conceptually: constant volatility, lognormal prices, no jumps and European exercise.
Black-Scholes-Merton Model in other exams
The same ground in other exams, if you are preparing for more than one or want another angle on it.
Black-Scholes-Merton Model: frequently asked questions
How do I calculate d1 and d2 in Black-Scholes?
Compute d1 = [ln(S₀ ÷ X) + (r − δ + σ² ÷ 2)T] ÷ (σ√T). Then d2 = d1 − σ√T. Use δ = 0 if there are no dividends.
What are the main assumptions of the Black-Scholes-Merton model?
Stock prices are lognormal, with continuously compounded returns that are normal. Volatility and the risk-free rate are constant, and there are no transaction costs or taxes. Trading is continuous, short selling is allowed, and the option is European. Dividends are a known continuous yield or zero.
How does the model change when the stock pays a dividend yield?
Replace S₀ with S₀e^(−δT) in the price formula and subtract δ from r in the drift term of d1. A higher dividend yield lowers call values and raises put values.
What do N(d1) and N(d2) mean?
N(d1) is the delta of the call, adjusted by e^(−δT) when there are dividends. N(d2) is the risk-neutral probability that a call finishes in the money. Both come from the standard normal cumulative distribution.