Multiple Periods

Binomial Trees with Multiple Periods

The power of binomial trees becomes apparent when we combine one-period trees to build larger trees, as the next example suggests.

Example 1 (Two-Period Binomial Tree) The current stock price is $100. Each period, the asset can go up or down by 5% with probability \(p\) and \(1 - p,\) respectively.

There are now three possible values for the stock price at the end of the tree, but note that there are four possible histories for the stock price. Indeed, the stock price can reach $99.75 at the end of the tree if the stock price goes first up and then down, or if the stock price goes first fown and then up.

Sometimes we will avoid explicitly writing down the probabilities to alleviate the notation.

Example 2 (Four-Period Binomial Tree) The current stock price is $100. Each period the asset can go up or down by 2.5%.

After four periods there are five possible values for the stock.

An interesting fact in the previous examples is that going up and then down yields the same as going down and then up. When this happens we say that the tree recombines.

This type of binomial tree is very useful in modeling the stochastic behavior of financial assets because the number of nodes increases linearly with the number of periods, i.e after \(n\) periods there are \(n+1\) possible nodes. Although the number of possible histories grows exponentially with the number of periods. If the tree does not recombine then the number of nodes increases exponentially, i.e. after \(n\) periods there are \(2^{n+1}\) possible nodes.

A sufficient condition for the tree to recombine is that the percentage increase and decrease of the stock price at each node are kept constant throughout the tree. As the following example shows, in a recombinant tree \(u\) need not be equal to \(d\).

Example 3 Is it the same for an asset to go up by 80% and then down by 30%, compared to first go down by 30% and then go up by 80%? Consider an asset whose current price is $100.

The tree recombines because of the associative property of multiplication: \[ S_{ud} = 100 \times 1.80 \times 0.70 = 100 \times 0.70 \times 1.80 = S_{du} \] In words, this says that gaining 80% and then loosing 30% is the same as first loosing 30% and then gaining 80%.

The Two Period Binomial Model

We now extend the economy to two periods. We would like to price a European call option with strike price \(K,\) expiring at time \(T\) and written on a non-dividend paying stock. The figure below shows the different values that we need to compute for both the stock1 and the call option.

1 Each period, the stock price goes up or down by by \(u\) or \(d,\) respectively. Therefore, at the end of the first period we have that \[ S_{u} = S \times u, \, S_{d} = S \times d. \] At the end of the second period the possible values are given by \[ S_{uu} = S_{u} \times u, \, S_{ud} = S_{u} \times d, \, S_{dd} = S_{d} \times d. \] Finally, because the tree recombines, we must have that \(S_{ud} = S_{u} \times d = S_{d} \times u = S_{du}.\)

We assume that the length of each period is the same and given by \(\Delta T = T/2.\) Note that this is not required, but makes our computations consistent with keeping the volatility constant throughout the tree. Therefore, the risk-neutral probability of an up-move in the first period is \[ p = \frac{S e^{r \Delta t} - S d}{S u - S d} = \frac{e^{r \Delta t} - d}{u - d}. \] Note that the risk-neutral probability of the stock going up is the same in all nodes of the tree.

The idea now is to work backwards from the end of the tree for the call option, and work our way up to the beginning. The price of the call at expiration is just the intrinsic value of the option: \[ \begin{align*} C_{uu} & = \max(S_{uu} - K, 0), \\ C_{ud} & = \max(S_{ud} - K, 0), \\ C_{dd} & = \max(S_{dd} - K, 0). \end{align*} \] If the stock price goes up during the first period, the call price at that point must be equal to: \[ C_{u} = \left( p C_{uu} + (1 - p) C_{ud} \right) e^{-r \Delta t}. \] Similarly, if the stock price goes down during the first period we have that: \[ C_{d} = \left( p C_{du} + (1 - p) C_{dd} \right) e^{-r \Delta t}. \] Finally, the value of the option at the beginning of the tree must be equal to the expected price under the risk-neutral probabilities, discounted at the risk-free rate. Indeed, an investor that buys the call today could sell it a period later at the price observed at that point. Thus, \[ C = \left( p C_{u} + (1 - p) C_{d} \right) e^{-r \Delta t}. \]

Example 4 (Pricing a European Call Option) Let’s price a European call option written on a non-dividend paying stock using a two-step binomial model. The current stock price is $100, and it can go up or down by 5% each period for two periods. Each period represents 3-months, i.e. \(\Delta t = 3/12 = 0.25\). The risk-free rate is 6% per year (continuously compounded). we will price a European call option with maturity 6 months and strike $100.

The risk-neutral probability of an up-move is then: \[ p = \frac{e^{r \Delta t} - d}{u - d} = \frac{e^{0.06 \times 0.25} - 0.95}{1.05 - 0.95} = 0.6511. \]

The risk-neutral probability of a down-move is just \(1 - p = 0.3489\). We can then compute: \[ \begin{align*} C_{u} & = \left( 10.25 \times p + 0 \times (1 - p) \right) e^{-0.06 \times 0.25} = \$6.57 \\ C_{d} & = \left( 0 \times p + 0 \times (1 - p) \right) e^{-0.06 \times 0.25} = \$0 \\ C & = \left( 6.57 \times p + 0 \times (1 - p) \right) e^{-0.06 \times 0.25} = \$4.22 \end{align*} \] Therefore, the value of the European call is $4.22.

Example 5 (Pricing a European Put Option) We can use the risk-neutral probabilities in Example 4 to price a European put with the same characteristics. \[ \begin{align*} P_{u} & = \left( 0 \times p + 0.25 \times (1 - p) \right) e^{-0.06 \times 0.25} = \$0.08 \\ P_{d} & = \left( 0.25 \times p + 9.75 \times (1 - p) \right) e^{-0.06 \times 0.25} = \$3.51 \\ P & = \left( 0.08 \times p + 3.51 \times (1 - p) \right) e^{-0.06 \times 0.25} = \$1.26 \end{align*} \]

The value of the European put can also be obtained using put-call parity. Indeed, the put is equal to a call plus a short forward: \[ \begin{align*} P & = C - S + K e^{-r T} \\ & = 4.22 + 100 - 100 e^{-0.06 \times 0.5} \\ & = \$1.26. \\ \end{align*} \] Note that we discount the strike price using the maturity of the option which is 6 months.

Making the Tree Consistent with Observed Volatility

A great advantage of the binomial model is that is possible to relate the up and down movements to the risk-neutral volatility observed in the market. Over a small interval \(\Delta t\), the choice \(u = e^{\sigma \sqrt{\Delta t}}\) and \(d = 1 / u\) produces a binomial model consistent with the Black-Scholes model of a Geometric Brownian Motion (GBM).2

2 Note that in this case \(u \times d = 1\), so the tree on average does not have a drift. The risk-neutral drift, however, is incorporated into the risk-neutral probabilities.

In other words, for small \(\Delta t\) we have that the variance of stock returns is \(V \approx \sigma^{2} \Delta t.\) Therefore, at each node the percentage change in the stock price is on average at \(r \Delta t\) with variance \(\sigma^{2} \Delta t.\)

Proof

Let’s see how this modification works in a 1-period tree.

The binomial process for the stock implies that the gross return next period is either \(u\) or \(d\) with risk-neutral probability \(p\) or \(1 - p,\) respectively. Remember that the risk-neutral probability of the stock price going up is given by: \[ \begin{align*} p = \frac{e^{r \Delta t} - d}{u - d}. \end{align*} \] The variance of the returns over the period can then be computed as: \[ \begin{align*} V & = p (u - (p u + (1 - p) d))^{2} + (1 - p) (d - (p u + (1 - p) d))^{2} \\ & = p (1 - p)^{2} (u - d)^{2} + (1 - p) p^{2} (u - d)^{2} \\ & = p (1 - p) (u - d)^{2} \\ & = \left( \frac{e^{r \Delta t} - d}{u - d} \right) \left( 1 - \frac{e^{r \Delta t} - d}{u - d} \right) (u - d)^{2} \\ & = (e^{r \Delta t} - d) (u - e^{r \Delta t}) \\ & = (e^{r \Delta t} - e^{-\sigma \sqrt{\Delta t}}) (e^{\sigma \sqrt{\Delta t}} - e^{r \Delta t}). \\ \end{align*} \] Therefore, \[ \begin{align*} \lim_{\Delta t \rightarrow 0} \frac{V}{\Delta t} & = \lim_{\Delta t \rightarrow 0} \left( \frac{e^{r \Delta t} - e^{-\sigma \sqrt{\Delta t}}}{\sqrt{\Delta t}} \right) \left( \frac{e^{\sigma \sqrt{\Delta t}} - e^{r \Delta t}}{\sqrt{\Delta t}} \right) \\ & = \lim_{\Delta t \rightarrow 0} \frac{e^{r \Delta t} - e^{-\sigma \sqrt{\Delta t}}}{\sqrt{\Delta t}} \lim_{\Delta t \rightarrow 0} \frac{e^{\sigma \sqrt{\Delta t}} - e^{r \Delta t}}{\sqrt{\Delta t}} \\ & = \sigma ^{2}. \end{align*} \]

An Arbitrary Number of Periods

We now have all the tools we need to extend the binomial model to an arbitrary number of periods while making sure that the volatility of stock returns in the binomial tree is consistent with the historical or implied volatility of the options.

Example 6 (Pricing a European Call Option Using Five Periods) In this example we will price a 6-month European call option with strike price $135 written on a non-dividend paying stock that currently trades at $132 and whose volatility of stock returns is 35% per year. We will use an interest rate of 3% per year with continuous compounding.

We will use a 5-period binomial tree. Therefore, we have that \(T = 6/12 = 0.5\) and \(\Delta t = T / 5 = 0.1,\) so that \(u = e^{0.35 \sqrt{0.1}} = 1.1170\) and \(d = 1/1.1170 = 0.8952.\) The table below describes the binomial tree for the stock. Note that for convenience I wrote the tree as a lower triangle. The horizontal line describes the path where the stock price increases every period whereas the lower diagonal describes the path where the stock price goes down every period.

Time 0 0.1 0.2 0.3 0.4 0.5
Stock 132 147.45 164.71 183.98 205.52 229.57
118.17 132.00 147.45 164.71 183.98
105.79 118.17 132.00 147.45
94.70 105.79 118.17
84.78 94.70
75.90

The risk-neutral probability of an up-move is given by: \[ \begin{align*} p = \frac{e^{0.03 \times 0.1} - 0.8952}{1.1170 - 0.8952} = 0.4859. \end{align*} \] We can now price the call as follows.

Time 0 0.1 0.2 0.3 0.4 0.5
Call 13.16 21.23 33.18 49.79 70.92 94.57
5.60 10.06 17.68 30.11 48.98
1.42 2.92 6.03 12.45
0.00 0.00 0.00
0.00 0.00
0.00

In the table above, the last columns contains the payoffs of the call at maturity. For example, if the stock price at maturity is 229.57, then the payoff of the call is \(229.57 - 135 = 94.57\) which is the first number on the last column. On the other hand, if the stock price at maturity 94.70, then the call is out-of-the-money and the payoff is 0.

We work backwards on the tree by computing expected payoffs using the risk-neutral probabilities and discounting at the risk-free rate for 0.1 years. For example, the first number in the before last column is computed as \(70.92 = (94.57 p + 48.98 (1 - p)) e^{- 0.03 \times 0.1}\) where \(p\) is the risk-neutral probability computed above. We keep doing this for all nodes until we reach the beginning of the tree. The price of the call is then $13.16.

A spreadsheet that shows the computations can be found here.

A Shortcut for European Options

In the case of European options it is possible to price a European call or put without having to work the intermediate steps. In the case of American options, however, it is necessary to check whether it is worth to exercise the option at each node of the tree. We will learn later how to handle the American option case.

Take for example a two period binomial tree for example. In this case we could use the final payoffs of the call directly to compute: \[ C = \left( \Pi_{uu} C_{uu} + \Pi_{ud} C_{ud} + \Pi_{dd} C_{dd} \right) e^{-r T}, \] where \(\Pi_{uu} = p^{2}\), \(\Pi_{ud} = 2 p (1 - p)\), and \(\Pi_{dd} = (1 - p)^{2}\). The \(\Pi\)’s represent the total risk-neutral probabilities of each final node.

We can generalize the method for an arbitrary number of periods \(n,\) which means that \(\Delta t = T / n.\) Since at each node the stock \(S\) can go up or down to \(S_{u} = S \times u\) and \(S_{d} = S \times d\), we have that the stock price at time \(T\) can take on \(n + 1\) different values: \[ S_{T} = \left( \begin{array}{c} S_{T}(0) \\ S_{T}(1) \\ S_{T}(2) \\ \vdots \\ S_{T}(n - 2) \\ S_{T}(n - 1) \\ S_{T}(n) \end{array} \right) = \left( \begin{array}{c} S u ^ {n} \\ S u ^ {n - 1} d \\ S u ^ {n - 2} d ^ {2} \\ \vdots \\ S u ^ {2} d ^ {n - 2} \\ S u d ^ {n - 1} \\ S d ^ {n} \end{array} \right) \] The risk-neutral probability of an up-move is given by: \[ p = \frac{e^{r \Delta t} - d}{u - d}. \] The total risk-neutral probability at node \(i = 0, \ldots, n\) is: \[ \Pi(i) = \binom{n}{i} p^{i} (1 - p)^{n - i}, \] where \(\binom{n}{i} = \frac{n!}{(n - i)! i!}\) is a binomial coefficient. The price of European call and put options are given by: \[ \begin{align*} C & = e^{-r T} \sum_{i = 0}^{n}{\Pi(i) \max(S_{T}(i) - K, 0)} \\ P & = e^{-r T} \sum_{i = 0}^{n}{\Pi(i) \max(K - S_{T}(i), 0)} \end{align*} \]

Practice Problems

Exercise 1 A non-dividend stock trades for $100. Over each of the next two 6-month periods it is expected to go up or down by 10%. The risk-free interest rate is 8% per annum with continuous compounding.

  1. What is the value of a 1-year European call option with a strike price of $100?
  2. What is the value of a 1-year European put option with a strike price of $100?
Solution
  1. The binomial trees for the stock and the European call are as follows:

    The risk-neutral probability of an up move is: \[ p = \frac{e^{0.08 \times 6/12} - 0.90}{1.10 - 0.90} = 0.7041. \] We can then compute: \[ \begin{align*} C_{u} & = (21 p + 0 (1 - p)) e^{-0.08 \times 6/12} = 14.21 \\ C_{d} & = (0 p + 0 (1 - p)) e^{-0.08 \times 6/12} = 0 \\ C & = (14.21 p + 0 (1 - p)) e^{-0.08 \times 6/12} = 9.61 \end{align*} \]

  2. The binomial tree for the European put is:

    Therefore: \[ \begin{align*} P_{u} & = (0 p + 1 (1 - p)) e^{-0.08 \times 6/12} = 0.28 \\ P_{d} & = (1 p + 19 (1 - p)) e^{-0.08 \times 6/12} = 6.08 \\ P & = (0.28 p + 6.08 (1 - p)) e^{-0.08 \times 6/12} = 1.92 \end{align*} \]

Exercise 2 The current price of a non-dividend paying stock is $100. Every three months, it is expected to go up or down by 4% or 6%, respectively. The risk-free rate is 8% per year with continuous compounding. Compute the price of a European call option with strike price $98 and maturity six months written on the stock.

Solution

We have that \(\Delta t = 3/12\), \(u = 1.04\) and \(d = 0.94\). The binomial trees for the stock and the European call are as follows:

The risk-neutral probability of an up move is: \[ \begin{align*} p = \frac{e^{0.08 \times 3/12} - 0.94}{1.04 - 0.94} = 0.8020. \end{align*} \] We can then compute: \[ \begin{align*} C_{u} & = (10.16 p + 0 (1 - p)) e^{-0.08 \times 3/12} = 7.99 \\ C_{d} & = (0 p + 0 (1 - p)) e^{-0.08 \times 3/12} = 0 \\ C & = (7.99 p + 0 (1 - p)) e^{-0.08 \times 3/12} = 6.28 \end{align*} \]

Exercise 3 A non-dividend paying stock costs $50. Analysts estimate that there is a 50% chance that the stock trades for $60 next year if the company succeeds in developing an important vaccine. Otherwise, the stock could fall to $40. The risk-free rate is 5% per year with continuous compounding. What should be the price of a security that pays $100 next year if the stock goes up, and $0 otherwise?

Solution The risk-neutral probability of the stock going up is: \[ p = \frac{50 e^{0.05} - 40}{60 - 40} \] The price of the security then is \((100 p + 0 (1 - p)) e^{-0.05} = \$59.75.\)

Exercise 4 Consider a non-dividend paying asset for which you have the following information: \(S_{0} = 100\), \(r = 4\%\) per year with continuous compounding, and\(\sigma = 20\%\) per year. Using a standard binomial model with four periods in which \(u = e^{\sigma \sqrt{\Delta t}}\) and \(d = 1/u\), compute the price of an at-the-money European call option expiring in 6 months.

Solution

We start by noting that \(\Delta t = 0.5 / 4 = 0.125\), so that \(u = e^{0.20 \sqrt{0.125}} = 1.0733\) and \(d = 1 / 1.0733 = 0.9317\).

The tree for the stock is:

Period 0 1 2 3 4
100.00 107.33 115.19 123.63 132.69
93.17 100.00 107.33 115.19
86.81 93.17 100.00
80.89 86.81
75.36

The risk-neutral probability of an up-move is \[ p = \frac{e^{0.04 \times 0.125} - 0.9317}{1.0733 - 0.9317} = 0.5177 \]

Therefore, the tree for the call is:

Period 0 1 2 3 4
6.29 10.27 16.19 24.13 32.69
2.08 4.03 7.83 15.19
0.00 0.00 0.00
0.00 0.00
0.00
The call is worth $6.29.