SOLUTION NOTES FOR EXERCISES ON FUNCTIONS
4. Code for Standard Deviation of Cash Flows
10.3 THE JR BINOMIAL TREE
In this section, we value an option using a nine-step binomial tree configured according to the Jarrow and Rudd (JR) parameters. The process requires firstly the construction of the share price tree to identify the terminal share values, the calculation of the associ- ated option values and lastly the evaluation of the discounted value of their expectation.
The details of the option are given first, the choice of parameters underlying the tree is discussed next and finally its construction with Excel formulas is described.
We assume that the current share priceSis 100, its volatilityis 20% (on an annualised basis), and that the option is a European call with an exercise price X of 95 and with 0.5 years to maturity. We also assume that the underlying share has a dividend yield of 3% and that the continuously compounded risk-free rate r is 8% (equivalent to an annual interest rate of 8.33%). Since there are nine steps, each time step has length 0.5/9D0.0556 years (υt say). To facilitate comparison of different binomial trees, we will use this same example in later sections of the chapter. The upper part of the JREuro sheet contains these details together with the parameters to generate the tree, as shown in Figure 10.3.
As in the simplified binomial tree, up and down moves in the JR tree are equiprobable, i.e. pD0.5. The individual moves up and down at each step are determined by share price multipliers u and d, chosen such that the mean and variance after n steps match those required for share price returns.
Binomial Trees 171
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
A B C D E F G H I J K
Option1.XLS
JR European Option Value
Share price (S) 100.00 Jarrow & Rudd BS JR
Exercise price (X) 95.00
Int rate-cont (r) 8.00% δt 0.0556 M 4.6202 4.6202
erdt 1.0045 V 0.0200 0.0199
Dividend yield - cont (q) 3.00%
u 1.0500 M1 102.532 102.531
Time now (0, years) 0.00 d 0.9555 M2 10725.1 10724.4
Time maturity (T, years) 0.50 p 0.5000
Option life (τ, years) 0.50 p* 0.5000
Volatility (σ) 20.00%
Steps in tree (n) 9 JR value 9.75
iopt 1
option type Call BS value 9.73
Figure 10.3 Option details and JR parameters for binomial tree (sheet JREuro)
The share price process in the JR tree superimposes a risk-neutral drift term and a second term based on volatility on the simple binomial tree. The drift term chosen by Jarrow and Rudd, combined with equiprobable up and down moves, ensures that the share has an expected rate of return of (rq) when valued in the risk-neutral world. On each step, the expected value of the price multiplier is exp[rqυt], the up move no longer equalling the down move. Since the annual volatility measureis a standard deviation, the volatility termp
υtincorporates the square root of the step size. The second term in the model ensures that the variance on an individual step is2υtand hence afternsteps or over timeT, the variance of log share price is2T. Expressed algebraically, the JR tree parameters are:
lnuDrq0.52υtC p
υt or uDexp[rq0.52υtC p
υt]
lndDrq0.52υt p
υt or dDexp[rq0.52υt p
υt]
For log share prices, the up and down moves (lnuand lnd) are incremented additively, leading to a log price tree. To get a share price tree, each move is incremented multi- plicatively using factorsuanddto scale the previous price up or down.
In Excel, the formula for the ‘up’ share price multiplier u in cell G9 uses the EXP function:
=EXP((D6−D8−0.5∗D13O2)∗G6+D13∗SQRT(G6)) and includes the drift and volatility components for a step.
The ‘down’ price multiplierdin cell G10 has a negative sign instead of a positive sign before the volatility component.
19 20 21 22 23 24 25 26 27 28 29 30
A B C D E F G H I J K
Share
0 1 2 3 4 5 6 7 8 9
9 155.16
8 147.77 141.20
7 140.73 134.47 128.49
6 134.02 128.07 122.37 116.93
5 127.64 121.96 116.54 111.36 106.41
4 121.56 116.15 110.99 106.06 101.34 96.84
3 115.77 110.62 105.70 101.01 96.51 92.22 88.12
2 110.25 105.35 100.67 96.19 91.92 87.83 83.93 80.20
1 105.00 100.33 95.87 91.61 87.54 83.65 79.93 76.38 72.98
0 100.00 95.55 91.31 87.25 83.37 79.66 76.12 72.74 69.50 66.41
Figure 10.4 Nine-step share price tree using JR parameters (sheet JREuro)
In the share price tree of Figure 10.4, rows correspond to the number of ‘up’ moves (denoted by stateiwhereigoes from 0 to 9) and columns to steps (stepjwherejgoes from 0 to 9). Algebraically, the share price for stateiafterjsteps,Si,j, is modelled as a product of the initial share priceS and the up and down share price multipliers for the numbers of up and down moves. For example, starting withS0,0DSD100, one step later the two possible prices are:S0,1 DdS0,0D95.55,S1,1DuS0,0D105.00, etc. Hence afternsteps:
Si,nDuidniS
The formula is essentially recursive, so that at each step the new prices depend only on the previous price and a price multiplier, for example, Si,jC1 DdSi,j. This can be accomplished most efficiently in Excel, by copying the single formula in cell C30, which is set out below:
=IF($A30<C$20,$G$10∗OFFSET(C30,0,−1),IF($A30=C$20,$G$9∗OFFSET (C30,1,−1),“”))
The cell formula is very similar to the formula used in the previous section, except that multipliers G10 (‘down’) and G9 (‘up’)multiply the previous price. The condition on the cell’s position is amplified by adding an additional nested IF statement to allow a third possibility. Cells above the leading diagonal (for which $A30>C$20) are filled with the empty cell formula“”. This cell formula in C30, when copied, generates the rest of the tree (and can be extended to create larger trees). By looking at the share values in the middle cells for an even number of time steps (D29,F28, . . .) you can see that the modal share price drifts up over time in the JR tree. [Strictly, this is only true if (rq0.52) is greater than zero, which it usually is.]
As the call option is European, we are only concerned with the share prices at the end of step 9 in column K. From these terminal prices (Si,9) we derive the call payoffs for each of the 10 prices from the relationship:
Vi,9Dmax[Si,9X,0] for iD0,1, . . . ,9
whereX is the exercise price for the option. These are shown in cells K49 to K58 of the JREuro sheet and range from 60.16 for nine up moves to 0. Note that non-zero payoffs occur when four or more moves are up: with fewer than four, the option is not exercised.
The remaining task is to calculate the expected value of the call payoff and discount it using the risk-free rate. For this, the binomial probabilities of each of the call payoffs are required, and these are identical to those used in the simple binomial tree. They are set out in cell range K35:K44, the general formula in K44 being:
=COMBIN($D$15,A44)∗$G$11O$D$15
where the last two terms give the probability of any sequence of steps (1/29) and the Excel COMBIN function gives the number of paths for each payoff. The 10 terminal payoff values and their probabilities taken from sheet JREuro are set out below:
State 9 8 7 6 5 4 3 2 1 0
Option payoff 60.16 46.20 33.49 21.93 11.41 1.84 0 0 0 0 Probability 0.002 0.018 0.070 0.164 0.246 0.246 0.164 0.070 0.018 0.002 The expected value of the option payoff involves weighting each call payoff with its probability and then discounting back at the risk-free rate to ensure risk-neutral valuation.
Binomial Trees 173 Thus, the formula in cell G15 for the call value after discounting is:
=EXP(−D6∗D12)∗SUMPRODUCT(K35:K44,K49:K58) where EXP(D6ŁD12) is the discount factor for the risk-free rate over 0.5 years.
Thus the nine-step JR tree produces a call value of 9.75 (compared with the Black–Scholes value of 9.73 in cell G17 of Figure 10.3). Hopefully, if the number of steps increases, the tree valuation will converge to the Black–Scholes value. (This topic will be discussed further in section 10.6.) In passing, note that the Black–Scholes value in cell G17 is evaluated from the user-defined VBA function, BSOptionValue, the code being stored in the Module1 sheet. Explanation of the coding is deferred until Chapter 11, where the Black–Scholes formula is discussed in detail.
The JR share price tree that our option valuation is based on consists of the following 10 values, together with the probabilities of each price:
State 9 8 7 6 5 4 3 2 1 0
Share price 155.16 141.20 128.49 116.93 106.41 96.84 88.12 80.20 72.98 66.41 Probability 0.002 0.018 0.070 0.164 0.246 0.246 0.164 0.070 0.018 0.002 The above distribution of share returns is approximately lognormal. Using the table of prices and probabilities, it is easy to calculate the first two moments of the distribution, M1 andM2 (in cells K9 and K10). FromM1 andM2, the mean and variance (MandV) of the associated normal distribution of log share price are obtained from the formulas (in section 7.7). These moments are shown in Figure 10.3, column K.M1 andM2 for the JR tree are derived from the terminal share prices in range K21:K30, andMandVfrom the formulas usingM1 andM2. The JR tree summary values can be compared with the mean and variance of log share price required by the Black–Scholes model. As can be seen, the correspondence between the underlying theoretical values and the values produced by the binomial tree mechanism is good.
You may like to confirm thatM1, the mean share price, has grown fromSD100 by a growth factor of 1.02531, which is equal to exp[rqT].
The JREuro model can also be used to value a put. By entering1 as the value for the ‘iopt’ parameter in cell D16 (in Figure 10.3), the call can be changed into a put. The share price tree is the same as for the call. However, the option payoffs have non-zero values only when the share price falls below the exercise price X. By incorporating a further parameter (ioptD1 for a call,1 for a put), we can use the general relationship for payoffs for puts or calls:
Vi,9Dmax[ioptŁSi,9X,0] for iD0,1, . . . ,9 The JR tree is discussed in Wilmott et al. (1996).