The method of Derman and Kani sets up reasonable probabilitiespj;iand positions .Sj;i; ti/of the nodes.j; i/. The grid is designed such that it matches market data.
Assume that a bunch of market prices of options are known. These option data are subjected to a suitable smoothing algorithm as described byFengler(2005), and by Glaser and Heider(2010). Based on this cumbersome preparatory work, the data
Fig. 20.9 The general buildup for node .jC1; iC1/
pj,i
j+1,i+1
j+1,i j,i
S t
ti+1
ti
can be interpolated or approximated such that “market data” are given for any value of strike and maturity.
Suppose all nodes are placed and all probabilities are fixed for the time levelti. That is, the2iC2numbers
S0;i; S1;i; : : : ; Si;i;
0;i; 1;i; : : : ; i;i
are available. For the next time leveltiC1the2iC4numbers S0;iC1; S1;iC1; : : : ; SiC1;iC1;
0;iC1; 1;iC1; : : : ; iC1;iC1
are to be calculated. This requires2iC3equations, because the recursion (20.24), (20.25) for the Arrow-Debreu prices requires onlyiC1probabilities
p0;i; : : : ; pi;i
see Figs.20.8,20.9,20.10. iC1 of the equations are easily set up, requesting as in CRR that the expectation over the time stept matches that of the continuous model (20.4). With the forward priceFj;i
Fj;idef
DSj;ie.rı/t this can be written
pj;iSjC1;iC1C.1pj;i/ Sj;iC1DFj;i (20.27) for0j i. This sets upiC1equations for the probabilities,
pj;iD Fj;iSj;iC1
SjC1;iC1Sj;iC1; (20.28)
. . . pj,i . . . pi,i
S ti+1
ti
i+1,i+1 j+1,i+1
0,i+1 j,i+1
p0,i t
. . .
. . . Sj,i Si,i
S0,i S1,i
Fig. 20.10 All nodes of linestiandtiC1; transition from linetitotiC1
which in turn fix the Arrow-Debreu values via (20.24), (20.25). It remains to set up iC2equations for the unknown grid coordinatesSj;iC1for0j iC1.
At this stage, the market data enter. According to the assumption, (approximate) vanilla put and call prices are available also for the specific choices of the maturity tiC1and theiC1strikesS0;i; : : : ; Si;i. For ease of notation, we denote the market values
Cj;i DVcallmarket.S0;0; 0ISj;i; tiC1/
Pj;i DVputmarket.S0;0; 0ISj;i; tiC1/ (20.29) for0j i. In (20.29), there are onlyiC1independent option values, because put and call are related through the put-call parity.
20.4.2.1 Recursion Based on Call Data
Next we discuss how the call values Cj;i enter; the put values Pj;i will enter analogously. For the strikeSj;i, we apply (20.26), whereM is replaced byi C1. Then, by (20.29), the grid valuesSk;iC1are to be chosen such that
Cj;iD XiC1 kD0
k;iC1.Sk;iC1Sj;i/C; which forSj;iC1< Sj;i< SjC1;iC1can be written
Cj;i D XiC1
kDjC1
k;iC1.Sk;iC1Sj;i/: (20.30)
Substituting the recursion (20.24), (20.25), this is Cj;iDert X
kjC1
Œ k1;ipk1;i C k;i.1pk;i/.Sk;iC1Sj;i/ (20.31)
where the last term of the sum, according to (20.25), consists of one term only. It follows
ertCj;iDŒ j;ipj;iC jC1;i.1pjC1;i/ .SjC1;iC1Sj;i/ CŒ jC1;ipjC1;i C jC2;i.1pjC2;i/ .SjC2;iC1Sj;i/ C: : :CŒ i1;ipi1;i C i;i.1pi;i/ .Si;iC1Sj;i/ CŒ i;ipi;i.SiC1;iC1Sj;i/
D j;ipj;i.SjC1;iC1Sj;i/
C jC1;i.FjC1;i Sj;i/C: : :C i;i.Fi;iSj;i/ D j;ipj;i.SjC1;iC1Sj;i/C Pi
kDjC1 k;i.Fk;iSj;i/
Note that the sum in this expression is completely known from the previous lineti. The known summation term is combined with the data of the smile into the known numbers
Aj;i
defDertCj;i Xi kDjC1
k;i.Fk;iSj;i/:
This gives the relation
Aj;i D j;ipj;i.SjC1;iC1Sj;i/ (20.32) which involves only two unknowns pj;i and SjC1;iC1. We substitute pj;i from (20.28) into (20.32), and solve forSjC1;iC1. The result
SjC1;iC1D Sj;iC1.Aj;iC j;iSj;i/ j;iSj;iFj;i
Sj;iC1 j;iCAj;i j;iFj;i
(20.33) is a recursionSjC1;iC1Df .Sj;iC1/along the linetjC1, fixing a new nodeSjC1;iC1
after the previous nodeSj;iC1was set. The probabilities are then given by (20.28) and (20.24).
20.4.2.2 Starting the Recursion
This raises a new question: Where should the recursion (20.33) start? Recall that we haveiC2unknown nodes on linetjC1, but onlyiC1independent option values in (20.29). That is, there is one degree of freedom. For example, one node can be set freely. FollowingDerman and Kani(1994), we make the center of the tree coincide with the center of the standard CRR tree. This requires to discuss two situations:
Either the linet1C1has an even number of nodes, or an odd number.
The simple situation is the odd number of nodes at line tiC1. Then we set artificially for the center node withj-indexm,
.i odd/ mdefD iC1
2 ; Sm;iC1def
DS0;0: (20.34)
For the upper part of the line (j > m) the recursion (20.33) defines all nodes, starting fromSm;iC1. For the lower part of line (j < m) the corresponding recursion based on put valuesPj;iwill be applied, see (20.40) below.
In the other situation, when the number of nodes at linetiC1andiare even, the center of the tree is straddled by the two nodes withj-indicesmDi=2andmC1.
Recall from CRR withd D 1=u that its logarithmic spacing for the scenario of Fig.20.3amounts to
Sj;iC1DSj;i2 =SjC1;iC1 (20.35)
for anyj; i. We assume this spacing for the center nodes, and substitute (20.35) into (20.33). This gives a quadratic equation for theSjC1;iC1at the center position.
One of the two solutions (Sj;i) is meaningless, because nodes are not separated. The other node is
SjC1;iC1D Sj;i. j;iSj;iCAj;i/
j;iFj;iAj;i :
Note from the previous line, whereiis odd, we haveSm;i DS0;0. So .i even/ mdefD i
2; SmC1;iC1def
D S0;0. m;iS0;0CAm;i/
m;iFm;iAm;i : (20.36) This defines the starting point for the recursion (20.33) [or for (20.40) below].
20.4.2.3 Recursion Based on Put Data
For the put, the recursion is derived in a similar way as done above for the call. We demand for the strikeSj;iand the put dataPj;i
Pj;iD XiC1 kD0
k;iC1.Sj;iSk;iC1/C: Then for an ordered grid withSj;iC1< Sj;i < SjC1;iC1
Pj;iD Xj kD0
k;iC1.Sj;iSk;iC1/: (20.37)
Hence,
ertPj;iD 0;i.1p0;i/ .Sj;iS0;iC1/
CŒ 0;ip0;i C 1;i.1p1;i/ .Sj;iS1;iC1/
CŒ 1;ip1;i C 2;i.1p2;i/ .Sj;iS2;iC1/ C: : :
CŒ j1;ipj1;i C j;i.1pj;i/ .Sj;iSj;iC1/ D j;i.1pj;i/.Sj;iSj;iC1/C
j1
X
kD0
k;i.Fk;iSj;i/ With the well-defined numbers
Bj;i
defDertPj;i
j1
X
kD0
k;i.Fk;iSj;i/ (20.38) we arrive at
Bj;iD j;i.1pj;i/.Sj;iSj;iC1/: (20.39) After substitutingpj;ithe final recursion based on put data is
Sj;iC1D Bj;iSjC1;iC1C j;iSj;i.Fj;iSjC1;iC1/
Bj;iC j;i.Fj;iSjC1;iC1/ (20.40)
This is the recursion for the lower half of the nodes on linetiC1. The starting point is again provided by (20.34), or (20.36).
The pricing of an option works in a backward loop analogously as in the CRR algorithm.
20.4.2.4 Adjustment of Node Spacing
To avoid arbitrage, it is crucial that the probabilitiespj;i must lie between zero and one. From (20.28) we see what a violationpj;i < 0orpj;i > 1would mean. The latter is equivalent toFj;i > SjC1;iC1, the former depends on whetherSjC1;iC1 >
Sj;iC1is guaranteed. Sufficient for0pj;i 1is to demand for allj; i
Fj;i < SjC1;iC1< FjC1;i: (20.41) In addition to (20.41), the ordered-grid condition Sj;i < SjC1;iC1 < SjC1;i
anticipated by Fig.20.9must hold. In case these requirements are not satisfied by the node values provided by (20.33) or (20.40), the values ofSjC1;iC1must be adjusted accordingly.Derman and Kani(1994) suggest to escape to the logarithmic spacing.
The practical work with the above implied grid is not without problems. When the values ofSj;iC1provided by (20.33) and (20.40) are frequently overridden in order to maintain an ordered grid that satisfies (20.41), then the influence of some of the market dataCj;i,Pj;iis cut off. The loss of information caused by many such
repairs deteriorates the quality of the approximation. This happens often for fine grids. Also, the denominators in (20.33) and (20.40) may take unfavorable values (say, close to zero), which can lead to unplausible values of the nodes.