New — Implied Vol, Strategies & Binomial Trees just shipped · What’s next →
Lessons/Binomial Trees
Lesson 10 of 10

Binomial Trees

The discrete-time approach to option pricing · 18 min

Why Binomial Trees?

Black-Scholes is elegant but brittle. It assumes continuous trading, no jumps, constant volatility, and — critically — European exercise (the option can only be exercised at expiration). For American options, which can be exercised at any time before expiry, there is no closed-form formula. Binomial trees handle American options naturally and provide the foundation for modern numerical options pricing.

The key idea: instead of modeling stock prices as continuous Brownian motion, approximate the process as a discrete tree. At each time step, the stock can move up by factor u or down by factor d. With enough steps, the discrete tree converges to the continuous Black-Scholes model. But at each node, you can check whether early exercise is optimal — something Black-Scholes cannot do.

The One-Period Model

Start with the simplest case: one time step of length T. The stock is at S today and moves to either Su (up) or Sd (down) at expiration. We want to price a call option with strike K.

Define:

  • u = up factor (e.g., u = eσ√T in the Cox-Ross-Rubinstein model)
  • d = down factor (e.g., d = 1/u = e−σ√T)
  • Cu = max(Su − K, 0) = option value if stock goes up
  • Cd = max(Sd − K, 0) = option value if stock goes down

The option price is the expected payoff under the risk-neutral measure, discounted at the risk-free rate:

C = e−rT · [p · Cu + (1 − p) · Cd]

where the risk-neutral probability p is chosen so the stock earns the risk-free rate:

p = (erT − d) / (u − d)

This is not the real-world probability of an up move — it's the probability that makes the expected return equal to r. The same risk-neutral substitution we saw in Black-Scholes.

The Cox-Ross-Rubinstein (CRR) Parameterization

The most common choice of u and d, introduced by Cox, Ross, and Rubinstein in 1979, is:

u = eσ√(T/N),   d = e−σ√(T/N) = 1/u

where N is the number of time steps and Δt = T/N. With this parameterization, as N → ∞, the binomial tree converges to the geometric Brownian motion of Black-Scholes. For N = 100 steps, binomial prices typically match Black-Scholes to 3–4 decimal places.

The risk-neutral probability becomes:

p = (erΔt − d) / (u − d)

Multi-Step Backward Induction

With N steps, the stock has 2N terminal values — but because the tree recombines (an up-move followed by a down-move reaches the same node as down then up), there are only N+1 distinct terminal prices:

Sj = S · uj · dN−j, for j = 0, 1, ..., N

The algorithm is backward induction:

  1. Terminal layer: Compute option values at expiry for all N+1 nodes: VjN = max(Sj − K, 0) for a call.
  2. Backward step: For each earlier layer n = N−1, N−2, ..., 0, compute the "continuation value" (expected discounted future value) at each node.
  3. American check: At each node, compare the continuation value to the immediate exercise value. Take the maximum. For a call: Vjn = max(Sjn − K, continuation).
  4. Root: V00 is the option price today.

Step 3 is what makes binomial trees powerful for American options. At each node you ask: "Is it better to exercise now or wait?" Black-Scholes cannot answer this question.

When Is Early Exercise Optimal?

A key result from binomial tree analysis:

  • American calls on non-dividend stocks: Never optimal to exercise early. An American call has the same price as a European call when there are no dividends. Reason: selling the call in the market always yields more than exercising it early (you lose the remaining time value).
  • American calls on dividend-paying stocks: Sometimes optimal to exercise just before the ex-dividend date, to capture the dividend. Binomial trees handle this automatically.
  • American puts: Deep ITM puts can be worth exercising early, especially when interest rates are high. Holding the put instead of exercising means you forgo the interest on K. When the interest earned on K exceeds the remaining time value, early exercise is optimal. This is a uniquely American option feature.

Convergence to Black-Scholes

For a European option (no early exercise), the binomial tree price converges to the Black-Scholes formula as N → ∞. In practice:

  • N = 10: rough approximation (~1–2% error)
  • N = 50: good approximation (~0.1–0.3% error)
  • N = 200: excellent (~0.01% error, often sub-penny)

The convergence is not perfectly monotone — it oscillates as N increases. This is because the odd/even step structure of the tree alternately puts the strike between nodes and exactly on a node. Techniques like the "smooth" binomial or using N and N+1 averaged results eliminate this oscillation.

Beyond Binomial: Monte Carlo and Finite Difference

For more complex payoffs (barrier options, Asian options, multi-asset options), other numerical methods take over. Monte Carlo simulation simulates thousands of stock price paths and averages the payoffs — it scales well to high dimensions but is slow for American options (which require knowing the optimal exercise boundary). Finite difference methods (like Crank-Nicolson) solve the Black-Scholes PDE on a grid — highly accurate, fast, and the method of choice for most derivatives desks. Binomial trees are the conceptual foundation for all of these.

Coding ExercisePython · runs in browser
+100 XP
Implement `binomial_european(S, K, T, r, sigma, N, option_type)` — price a European option using an N-step CRR binomial tree.
Write your solution, then run