In Section 10.4 we discussed the use of binomial lattice methods for valuing both European and American options. The lattice methods we described have the advan- tage that they are fairly easy to implement and can value simple options, such as vanilla puts and calls, reasonablyaccurately. The use of up and down jump prob- abilities at the lattice nodes is also an appealing feature, since they are directly related to the stochastic process which is being modelled. However, lattice techniques have the following drawbacks:
. They require small time steps to ensure numerical stability.
. There is little control over where the lattice nodes are located. This can lead to very poor accuracy when valuing certain types of options; for example those with barriers at particular asset prices.
Numeric methods and single asset American options 177
//SYS21///INTEGRAS/ELS/PAGINATION/ELSEVIER UK/CMF/3B2/FINALS_21-11-03/CH010.3D–178– [116–220/105]
21.11.2003 4:27PM
One method of avoiding these limitations is through the use of finite-difference grids. Although this approach no longer has the probabilistic interpretation of the binomial lattice it has the following advantages:
. Fewer time steps are required to ensure numerical stability, see Appendix L for a discussion of stability.
. There is complete control over the placement of grid lines, and their associated grid nodes.
10.6.2 Uniform grids
The Black–Scholes equation for the value of an option,fis given by:
@f
@tþ ðrqÞS@f
@Sþ1
22S2@2f
@S2¼rf ð10:138Þ
We want to solve this equation over the duration of the option, that is from the current timetto the maturity of the option at timetþ. To do this we will use a grid in which the asset price S takes ns uniformly spaced values, Sj¼jS, j¼0,. . .,ns1, whereSis the spacing between grid points. IfSmaxis the maximum asset value we want to represent then the grid spacing,S , can be simply calculated as:
S ¼ Smax
ðns1Þ ð10:139Þ
However, since we would like to solve the option values and Greeks at the current asset priceS0we would also like an asset grid line to coincide with the current asset price, see Andersen and Brotherton-Ratcliffe (1998). This avoids the use of inter- polation which is necessary when the asset value does not correspond to a grid line.
The method by which we achieve this is outlined in Code excerpt 10.12. Here the user supplies the functionopt_gfdwith values forSmax andns1 from whichS is computed using Equation 10.139. We then find the integer,n1, that is just below (or equal to) the valueSo=S , and use this to obtain a new grid spacingS¼So=n1. This leads to the new asset price discretization Sj¼jS j¼0,. . .,ns1, where we have now ensured thatSn1¼So.
The user also supplies the functionopt_gfdwith the number of time intervals for the grid. When there arent time intervals the grid hasntþ1 uniformly spaced time instants,ti¼it,i¼0,. . .,nt, and the time step is simply:
t¼
nt ð10:140Þ
As with the binomial lattice methods of Sections 10.4 and 10.5 we will solve the equation backwards in time from maturity (at timetþ) to the present (timet). So as we solve the equation the time index will start ati¼nt(timetþ) and decrease to i¼0 (current timet).
Here we discuss the grid method of solving the Black–Scholes equation in terms of:
. The finite-difference approximation.
. The boundary conditions.
178 Pricing Assets
//SYS21///INTEGRAS/ELS/PAGINATION/ELSEVIER UK/CMF/3B2/FINALS_21-11-03/CH010.3D–179– [116–220/105]
21.11.2003 4:27PM
. Computation of the option values at a given time instant.
. Backwards iteration and early exercise.
Each of these aspects will now be considered in turn.
The finite-difference approximation
The option value corresponding to the grid node at which ti¼it and Sj¼jS will be denoted byfi,j. We will approximate the partial derivative offi,j w.r.t. time simply as:
@f
@t¼fiþ1;jfi;j
t ð10:141Þ
For the other terms in Equation 10.138 we will use the weighted,m, method. This technique involves selecting an appropriate choice formin the range 0m1 so that thecontributionfrom node (i,j) is a weighted sum involving the values at nodes (i,j) and (iþ1,j). For instance the termrfji,jin Equation 10.138 is approximated as:
rfji;j¼ r mfiþ1;jþ ð1mÞfi;j
ð10:142Þ
and the term@f=@Sji,j in Equation 10.138 is approximated as:
@f
@S
i;j¼ m
@f
@S
iþ1;jþ ð1mÞ@f
@S i;j
( )
ð10:143Þ Using this method we thus obtain, at node (i,j), the following discretized version of Equation 10.138:
fiþ1;jfi;j
t þ ðrqÞSjnmfiþ1;j0 þmfi;j0 o þ1
22Sj2nmfiþ1;j00 þmfi;00jo
¼r mfiþ1;jþmfi;j
ð10:144Þ where for compactness we have written m¼1m, and denote the partial deri- vatives w.r.t.Sat node (i,j) as:fi,0j¼@f=@Sji,jandfi,j00 ¼ @2f=@S2i,j.
Finite-difference approximations for these derivatives can be obtained by con- sidering a Taylor expansion about the pointfi,j. We proceed as follows:
fi;jþ1¼fi;jþfi;j0 Sþ1
2fi;j00ðSÞ2 ð10:145Þ fi;j1¼fi;jfi;j0 Sþ1
2fi;j00ðSÞ2 ð10:146Þ Subtracting Equations 10.145 and 10.146 we obtain:
fi;jþ1fi;j1¼2fi;0jS and so
fi;0j¼fi;jþ1fi;j1
2S ð10:147Þ
Numeric methods and single asset American options 179
//SYS21///INTEGRAS/ELS/PAGINATION/ELSEVIER UK/CMF/3B2/FINALS_21-11-03/CH010.3D–180– [116–220/105]
21.11.2003 4:27PM
Adding Equations 10.145 and 10.146 we obtain:
fi;jþ1þfi;j1¼2fi;jþfi;j00S2 which gives:
fi;00j¼fi;jþ12fi;jþfi;j1
S2 ð10:148Þ
The complete finite-difference approximation to the Black–Scholes equation can then be found by substituting the approximations for the first and second partial derivatives, given in Equations 10.147 and 10.148, into Equation 10.144. We thus obtain:
rt mfiþ1;jþmfi;j
¼fiþ1;jfi;jþðrqÞjtA1
2 þ2j2tA2
2 ð10:149Þ where we have used the fact that Sj¼jS, and for compactness have defined the terms:
A1¼mfiþ1;jþ1mfiþ1;j1þmfi;jþ1mfi;j1
and
A2¼mfiþ1;jþ1þmfiþ1;j12mfiþ1;jþmfi;jþ1þmfi;j12mfi;j
Collecting like terms infi,j,fiþ1,j, etc. results in:
B1fi;j1þ B2fi;jþ B3fi;jþ1þ C1fiþ1;j1þ C2fiþ1;jþ C3fiþ1;jþ1¼0 ð10:150Þ where
B1¼mðrqÞjt
2 þm2j2t 2 B2¼1rtmm2j2t B3¼mðrqÞjt
2 þm2j2t 2 C1¼m2j2t
2 mðrqÞjt 2 C2¼1rtmm2j2t C3¼mðrqÞjt
2 þm2j2t 2
Since we are solving the equation backwards in time we want to determine the option values at time index i from the known option values (fiþ1,jþ1,fiþ1,j and 180 Pricing Assets
//SYS21///INTEGRAS/ELS/PAGINATION/ELSEVIER UK/CMF/3B2/FINALS_21-11-03/CH010.3D–181– [116–220/105]
21.11.2003 4:27PM
fiþ1,j1) at time index iþ1. This can be achieved by rearranging Equation 10.150 as follows:
Finite-difference scheme for a uniform grid
ajfi;j1þbjfi;jþcjfi;jþ1¼Riþ1;j ð10:151Þ
where the right hand side,Riþ1,j, is:
Riþ1;j¼aajfiþ1;j1þbbjfiþ1;jþccjfiþ1;jþ1 ð10:152Þ
The six coefficients are:
aj¼ ð1mÞt
2 ðrqÞj2j2
ð10:153Þ bj¼1þ ð1mÞt rþ2j2
ð10:154Þ cj¼ ð1mÞt
2 ðrqÞjþ2j2
ð10:155Þ
a
aj¼ mt
2 ðrqÞj2j2
ð10:156Þ b
bj¼1mt rþ2j2
ð10:157Þ
ccj¼mt
2 ðrqÞjþ2j2
ð10:158Þ
For each value ofjEquation 10.151 gives us a relationship between three option values,fiþ1,j1, fiþ1,j,fiþ1,jþ1 at time index iþ1, and three option valuesfi,j1, fi,j, fi,jþ1 at time indexi.
This situation is shown in Figure 10.9 where we have labelled the grid nodes that contribute to the option valuef5,5at grid node E. These are the known option values node A:f6,6, node B:f6,5and node C:f6,4 and the unknown option values, node D:
f5,6, node E:f5,5 and node F:f5,4.
Before we solve Equation 10.151 we will briefly consider its characteristics for different values of the weight parameterm.
Whenm¼1 the values of the coefficients in Equation 10.151 areaj¼cj¼0 and bj¼1. This means that Equation 10.151 reduces to:
fi;j¼aajfiþ1;j1þbbjfiþ1;jþccjfiþ1;jþ1
This is termed the explicit method, and it can be seen that the unknown option valuefi,j, at the grid node (i,j) is just a weighted sum of the (known) option values fiþ1,j1, fiþ1,j, fiþ1,jþ1. This is the simplest situation to deal with and actu- ally corresponds to a trinomial lattice. However, it has poor numerical proper- ties and usually requires a very small step size to obtain accurate results, see Smith (1985).
When m6¼1, the unknown option value fi,j depends not only on the known option valuesfiþ1,j1,fiþ1,j,fiþ1,jþ1(as in the explicit method above), but also on the Numeric methods and single asset American options 181
//SYS21///INTEGRAS/ELS/PAGINATION/ELSEVIER UK/CMF/3B2/FINALS_21-11-03/CH010.3D–182– [116–220/105]
21.11.2003 4:27PM
neighbouringunknownoption valuesfi,j1andfi,jþ1. It is now necessary to solve a set of simultaneous in order to compute the valuefi,j. This is therefore called animplicit method, see Smith (1985).
The implicit methodm¼0 is also called thefully implicit method, since now the unknown value fi,j only depends on the neighbouring values fi,j1, fi,jþ1 and its previous value,fiþ1,j, at time step iþ1. This can be shown by substituting m¼0 in Equations 10.153 to 10.158. We then obtainaaj¼ccj¼0 andbbj¼1, which means that Equation 10.151 reduces to:
ajfi;j1þbjfi;jþcjfi;jþ1¼fiþ1;j
The implicit method m¼0:5, is also termed the Crank–Nicolson method. This method, first used by Crank and Nicolson in 1946, see Crank and Nicolson (1947), computes fi,j by giving equal weight to the contributions from time step iþ1 and
Time (in units of ∆t) 0
0
2 4 6 8 10
10 15 20 25 30 35 40 45 50
12 14 16 18 20
5
A B C F E D
0,f10,10 0,f10,9 0,f10,8 0,f10,7 0,f10,6 0,f10,5 5,f10,4 10,f10,3 15,f10,2 20,f10,1 25,f10,0
Asset price
Figure 10.9 An example uniform grid, which could be used to estimate the value of a vanilla option which matures in two years time. The grid parameters are:ns¼nt¼10,t¼0:2,S¼5, andSmax¼50. The option parameters areE¼25,So¼20, and¼2:0. As usual we denote the grid node option values byfi,j, whereiis the time index andjis the asset index. The option values of the grid nodes at maturity for a vanilla put are thus labelled asval,f10,j,j¼0,. . .,10, wherevalis the value of the option at the node; these are shown on the right hand grid boundary. SinceE¼25 only those nodes withj<5 have nonzero option values
182 Pricing Assets
//SYS21///INTEGRAS/ELS/PAGINATION/ELSEVIER UK/CMF/3B2/FINALS_21-11-03/CH010.3D–183– [116–220/105]
21.11.2003 4:27PM
time step i. Substituting m¼0:5 in Equations 10.153 to 10.149 we obtain the following Crank–Nicolson coefficients:
aj¼ aaj¼t
4 ðrqÞj2j2 bj¼1þt
2 rþ2j2 b
bj¼1t
2 rþ2j2 cj¼ ccj¼ t
4 ðrqÞjþ2j2
We notice that since we are solving backwards in time, but index time in the forward direction, our values ofm corresponding to implicit and explicit are different from those normally used. For example in Smith (1985)m¼0 is the explicit method and m¼1 is the implicit method; the Crank–Nicolson method is stillm¼0:5.
The boundary conditions
In order to solve Equation 10.151 at time instant itwe need to obtain the option values at the upper asset boundary, the lower asset boundary and theinitial values that are specified at option maturity.
Here we calculate the boundary values by using the time independent payoff,pj, at thejth asset index within the grid. IfEis the strike price then vanilla call options have payoffs
pj¼maxðjSE; 0Þ;j¼0;. . .;ns1
and vanilla put options have payoffs pj¼maxðEjS; 0Þ;j¼0;. . .;ns1
Upper asset boundary values. At the upper boundaryj¼ns1, and (ns1)S¼ Smax; where we note that for the grid to be useful we require Smax>E. Here we assume thatSmax>Eand so for call options
pns1¼SmaxE and for put options
pns1¼0
The option value at the upper boundary, denoted byfBU, is set topns1, and we have fi,ns1 ¼fBU,i¼0,. . .,nt.
Lower asset boundary values. At the lower boundaryj¼0, and the value ofjS is zero. So for call options
p0¼0
Numeric methods and single asset American options 183
//SYS21///INTEGRAS/ELS/PAGINATION/ELSEVIER UK/CMF/3B2/FINALS_21-11-03/CH010.3D–184– [116–220/105]
21.11.2003 4:27PM
and for put options p0¼E
The option value at the lower boundary, denoted by fBL, is set top0, and we have fi, 0¼fBL,i¼0,. . .,nt.
Boundary values at option maturity. At option maturity (i¼nt) the initial option (boundary) values are the previously mentioned payouts. IfEis the strike price then for vanilla call options
fnt;j¼maxðjSE; 0Þ; j¼0;. . .; ns1 and for vanilla put options
fnt;j¼maxðEjS; 0Þ; j¼0;. . .; ns1
This is illustrated in Figure 10.9 for a vanilla put option with current asset value S0¼20, strike,E¼25 and maturity ¼2. The grid asset price spacing isS¼5, and the time increment ist¼0:2. At option maturity, corresponding to time index i¼10, the value of the put option is zero for all asset indicesj5.
Computation of the option values at a given time instant
Having found the option boundary values we are now in a position to solve Equation 10.151 at time instantti¼it.
First we note that sincefi,0¼fBLandfi,ns1 ¼fBU, Equation 10.151 only needs to be solved for values of the asset indexjin the rangej¼1 toj¼ns2. We now deal with the following situations:
. CASE 1:j¼1, the asset grid line just above the lower boundary.
. CASE 2:j¼ns2, the asset grid line just below the upper boundary.
. CASE 3: all other asset grid lines not included inCASE 1orCASE 2.
and consider the form that Equation 10.151 takes under each condition.
CASE 1:j¼1
Substitutingj¼1, into Equation 10.151 we obtain:
a1fi;0þb1fi;1þc1fi;2¼aa1fiþ1;0þbb1fiþ1;1þcc1fiþ1;2 Now, sincefi,0¼fBL, this becomes:
b1fi;1þc1fi;2¼ ðaa1a1ÞfBLþbb1fiþ1;1þcc1fiþ1;2 or equivalently:
b1fi;1þc1fi;2¼Riþ1;1 ð10:159Þ
where
Riþ1;1¼ ðaa1a1ÞfBLþbb1fiþ1;1þcc1fiþ1;2 ð10:160Þ
184 Pricing Assets