Multi-period Binomial Tree
Options and Futures
Multi-period Binomial Trees
- Consider a call option written on the stock with maturity T
- We split the T into N periods, so each period is \Delta t = T/N
- In each step, the stock price can go up by u and down by d, so that
- S_{u} = S u, \quad S_{d} = S d
- S_{uu} = S u^2, \quad S_{ud} = S u d, \quad S_{dd} = S d^2
- u and d are constant across all periods
Example 1:
Consider the following example in a two-period binomial tree:
- The European call option has a strike price of 100 and a maturity of 6 months, T = 0.5 year, and Δt = 0.25 year
- Stock price is 100 at time 0 and can go up or down by 5\% each quarter
- The risk-free rate is 6\% per year
Representing the Stock Price and Option Price in a Binomial Tree
Price the Call Option:
- Step 1: Calculate the risk-neutral probability
- The risk-neutral probability of moving up is \small q = \frac{e^{rΔt} - d}{u - d} = \frac{e^{0.06 \times 0.25} - 0.95}{1.05 - 0.95} = 0.6511
- The risk-neutral probability of moving down is 1-q = 0.3489
- Because u and d are constant across all periods, the risk-neutral probability is the same at each node
- Step 2: Calculate the option price at the leaves: \small
\begin{aligned}
C_u &= (10.25 * q + 0 * (1-q))e^{-0.06\times 0.25} = 10.25 * 0.6511 * e^{-0.015} = 6.57 \\
C_d &= (0 * q + 0 * (1-q))e^{-0.06\times 0.25} = 0
\end{aligned}
- Step 3: Moving backward in time: \small C = (6.57 * q + 0 * (1-q)) e^{-0.06\times 0.25} = 6.57 * 0.6511 * e^{-0.015} = 4.22
Price the Put Option with the same parameters
- Step 1: Calculate the risk-neutral probability
- Same as before since u and d are the same
- Step 2: Calculate the option price at the leaves: P_u = (0 * q + .25 * (1-q)) e^{-0.06\times 0.25} = 0.08 P_d = (0.25 * q + 9.75 * (1-q)) e^{-0.06\times 0.25} = 3.51
- Step 3: Moving backward in time: P = (0.08 * q + 3.51 * (1-q)) e^{-0.06\times 0.25} = 1.26
Dynamic Hedging
We can also price the option in each node using the dynamic hedging approach
At each node, we compute the quantity of stocks \Delta and the bond B that replicates the option payoff at each node
\left.\begin{align*}\Delta\times S_{u}+B=X_{u}\\
\Delta\times S_{d}+B=X_{d}
\end{align*}
\right\} \implies\left\{ \begin{align*}\Delta & =\frac{X_{u}-X_{d}}{S_{u}-S_{d}}\\
B & =X_{u}-\Delta S_{u}=X_{d}-\Delta S_{d}
\end{align*}
\right.
However, this approach requires us to rebalance the portfolio at each node in response to changing prices, i.e., dynamic hedging
Much more complex than the risk-neutral probability approach for computation
If there is a mispricing, this is the implementation of the arbitrage strategy
Calibrating the parameters to match the real-world data
- We used several parameters to construct the binomial tree:
- maturity T (observable)
- risk-free rate r (observable)
- N and \Delta t = T/N: the larger N the more accurate, but the more complex
- The steps u and d — the only unobserved parameters
- u and d controls how large the stock price can move in a period of \Delta t
- We calibrate the parameter u and d to match the stock volatility
- For a given level of volatility, \sigma, we choose (the Cox-Ross-Rubinstein approach):
u = e^{\sigma \sqrt{\Delta t}} \quad \text{and} \quad d = 1/u = e^{-\sigma \sqrt{\Delta t}}
- Do we need to match the stock’s expected return? No
- The expected return under the physical probability does not matter (under risk-neutral probability, it’s r)
Taking N to infinity: The Black-Scholes Equation
- When we have finer and finer time steps, the time becomes continuous, and the binomial-tree approach converges to the celebrated Black-Scholes equation:
\frac{\partial V_t}{\partial t} + \frac{1}{2}\sigma_t^2 S_t^2 \frac{\partial^2 V_t}{\partial S_t^2} + r_t S_t \frac{\partial V_t}{\partial S_t} - r_t V_t = 0
where V is the price of the option, S is the stock price, \sigma_t is the volatility, r_t is the risk-free rate, and t is the time.
- When \sigma_t and r_t are constant, the formula has a closed-form solution. For a European call option, the price is:
\begin{aligned}
C = S N(d_1) - K e^{-rT} N(d_2) \\
d_1 = \frac{\ln(S/K) + (r + \sigma^2/2)T}{\sigma\sqrt{T}} \quad d_2 = d_1 - \sigma\sqrt{T}
\end{aligned}
- Notice the volatility \sigma is the only unobserved parameter in the formula!
Implied Volatilities
- How do we know the volatility \sigma? We don’t.
- We can use the historical data to get a rough estimate, but it is backward-looking
- Suppose we just enter a major crisis, the historical volatility will definitely underestimate the future volatility
- We need the forward-looking volatility of stocks during the life of the option
- Different approaches to to estimate the volatility ranging from statistical modeling or human judgment
- The implied volatility (IV) is the volatility implied from the market price of the option that is consistent with the option pricing models (the Black-Scholes equation in particular)
- It reflects the market expectation of the future volatility of the stock
- As it is the only parameter that is not directly observable, there is a one-to-one mapping between the price of the option and the implied volatility, given other parameters
- Traders simply quote the implied volatility instead of the price. High implied volatility means more expensive options, and vice versa
- The fear gauge of the (global) market: VIX
- The implied volatility of S&P 500 index options expiring in 30 days
VIX
Time to Practice
- Use this binomial tree calculator to calculate the price of the call option on the S&P 500 index
- The real-time market data on S&P 500 options can be found on the CBOE website. Use the implied volatility here.
- Use the one-year interest rate swap as the risk-free rate
- Try the following and compare the results with the real world data:
- Price a one year at-the-money call option, use N from 2 to 10
- Price a one year out-of-the-money call option, use N starting from 2
- Price a one year in-the-money put option, use N starting from 2