7.1 Implied Binomial Trees

A well known model for financial option pricing is a GBM with constant volatility, it has a log-normal price distribution with density,

$\displaystyle p(S_{t},S_{T},r, \tau, \sigma)=\frac{1}{S_{T}\sqrt{2\pi\sigma^{2}...
...S_{t}}\right)-(r-\frac{\sigma^{2}}{2})\tau\right\}^2} {2\sigma^{2}\tau}\right],$ (7.1)

at any option expiration $ T$, where $ S_{t}$ is the stock price at time $ t$, $ r$ is the riskless interest rate, $ \tau=T-t$ is time to maturity, and $ \sigma$ the volatility. The model also has the characteristic that all options on the underlying must have the same BS implied volatility.

However, the market implied volatilities of stock index options often show "the volatility smile", which decreases with the strike level, and increases with the time to maturity $ \tau$. There are various proposed extensions of this GBM model to account for "the volatility smile". One approach is to incorporate a stochastic volatility factor, Hull and White (1987); another allows for discontinuous jumps in the stock price, Merton (1976). However, these extensions cause several practical difficulties. For example, they violate the risk-neutral condition. The IBT technique proposed by Rubinstein (1994), Derman and Kani (1994), Dupire (1994), and Barle and Cakici (1998) account for this phenomenon. These papers assume the stock prices in the future are generated by a modified random walk where the underlying asset has a variable volatility that depends on both stock price and time. Since the implied binomial trees allow for non-constant volatility $ \sigma=\sigma(S_{t},t)$, they are in fact modifications of the original Cox, Ross and Rubinstein (1979) binomial trees. The IBT construction uses the observable market option prices in order to estimate the implied distribution. It is therefore nonparametric in nature. Alternative approaches may be based on the kernel method, Aït-Sahalia, and Lo (1998), nonparametric constrained least squares, Härdle and Yatchew (2001), and curve-fitting methods, Jackwerth and Rubinstein (1996).

The CRR binomial tree is the discrete implementation of the GBM process

$\displaystyle \frac{dS_{t}}{S_{t}}=\mu dt+\sigma dZ_{t},$ (7.2)

where $ Z_t$ is a standard Wiener process, and $ \mu$ and $ \sigma$ are constants. Similarly, the IBT can be viewed as a discretization of the following model in which the generalized volatility parameter is allowed to be a function of time and the underlying price,

$\displaystyle \frac{dS_{t}}{S_{t}}=\mu_{t} dt+\sigma(S_{t},t)dZ_{t},$ (7.3)

where $ \sigma(S_{t},t)$ is the instantaneous local volatility function. The aim of the IBT is to construct a discrete approximation of the model on the basis of the observed option prices yielding the variable volatility $ \sigma(S_{t},t)$. In addition, the IBT may reflect a non-constant drift $ \mu_{t}$.


7.1.1 The Derman and Kani (D & K) algorithm

In the implied binomial tree framework, stock prices, transition probabilities, and Arrow-Debreu prices (discounted risk-neutral probabilities, see Chapter 8) at each node are calculated iteratively level by level.

Suppose we want to build an IBT on the time interval $ [0,T]$ with equally spaced levels, $ \triangle t$ apart. At $ t=0, S_{0}=S$, is the current price of the underlying, and there are $ n$ nodes at the $ n$th level of the tree. Let $ s_{n,i}$ be the stock price of the $ i$th node at the $ n$th level, $ s_{1,1}=S$ and $ F_{n,i}=e^{r\triangle
t}s_{n,i}$ the forward price at level $ n+1$ of $ s_{n,i}$ at level $ n$, and $ p_{n,i}$ the transition probability of making a transition from node $ (n,i)$ to node $ (n+1, i+1)$. Figure 7.1 illustrates the construction of an IBT.

Figure 7.1: Construction of an implied binomial tree
\includegraphics[width=0.7\defpicwidth]{illustration.ps}

We assume the forward price $ F_{n,i}$ satisfies the risk-neutral condition:

$\displaystyle F_{n,i}=p_{n,i}s_{n+1,i+1}+(1-p_{n,i})s_{n+1,i}.$ (7.4)

Thus the transition probability can be obtained from the following equation:

$\displaystyle p_{n,i} = \frac{F_{n,i}-s_{n+1,i}}{s_{n+1,i+1}-s_{n+1,i}}.$ (7.5)

The Arrow-Debreu price $ \lambda_{n,i}$, is the price of an option that pays 1 unit payoff in one and only one state $ i$ at $ n$th level, and otherwise pays 0. In general, Arrow-Debreu prices can be obtained by the iterative formula, where $ \lambda_{1,1}=1$ as a definition.

\begin{displaymath}\begin{cases}\lambda_{n+1,1} = & {e^{-r\triangle t}}\left\{(1...
...triangle t}}\left\{\lambda_{n,n}p_{n,n}\right\}.\cr \end{cases}\end{displaymath} (7.6)

We give an example to illustrate the calculation of Arrow-Debreu prices in a CRR Binomial tree. Suppose that the current value of the underlying $ S=100$, time to maturity $ T=2$ years, $ \triangle
t=1$ year, constant volatility $ \sigma=10\%$, and riskless interest rate $ r=0.03$, and $ \tau=T$. The Arrow-Debreu price tree can be calculated from the stock price tree:

stock price
                    122.15
           110.52
  100.00            100.00
            90.48
                     81.88


Arrow-Debreu price

                0.37
         0.61
  1.00          0.44
         0.36
                0.13
For example, using the CRR method, $ s_{2,1}=s_{1,1}e^{-\sigma
\,\triangle t}=100\times e^{-0.1}=90.48$, and $ s_{2,2}=s_{1,1}e^{\sigma \,\triangle t}=110.52$, the transition probability $ p_{1,1}=0.61$ is obtained by the formula (7.5), then according to the formula (7.6), $ \lambda_{2,1}=e^{-r \,\triangle t}(1-p_{1,1})=0.36$. At the third level, calculate the stock prices according to the corresponding nodes at the second level, For example, $ s_{3,1}=s_{2,1}\cdot
e^{-\sigma \,\triangle t} = 122.15$, $ s_{3,2} = s_{1,1} = 100$.

Option prices in the Black-Scholes framework are given by:

$\displaystyle C(K,\tau)$ $\displaystyle =$ $\displaystyle e^{-r\tau}\int_{0}^{+\infty}\max(S_{T}-K,
0)\,p(S_{t},S_{T},r,
\tau)dS_{T},$ (7.7)
$\displaystyle P(K, \tau)$ $\displaystyle =$ $\displaystyle e^{-r\tau}\int_{0}^{+\infty}\max(K-S_{T}, 0)\,p(S_{t},S_{T},r,
\tau)dS_{T},$ (7.8)

where $ C(K, \tau)$ and $ P(K, \tau)$ are call option price and put option price respectively, and $ K$ is the strike price. In the IBT, option prices are calculated analogously for $ \tau= n
\triangle t$,
$\displaystyle C(K,n\triangle t)$ $\displaystyle =$ $\displaystyle \sum_{i=1}^{n+1}\lambda_{n+1,i}\max(s_{n+1,i}-K,
0),$ (7.9)
$\displaystyle P(K,n\triangle t)$ $\displaystyle =$ $\displaystyle \sum_{i=1}^{n+1}\lambda_{n+1,i}\max(K-s_{n+1,i},
0).$ (7.10)

Using the risk-neutral condition (7.4) and the discrete option price calculation from (7.9) or (7.10), one obtains the iteration formulae for constructing the IBT.

There are $ (2n+1)$ parameters which define the transition from the $ n$th to the $ (n+1)$th level of the tree, i.e., $ (n+1)$ stock prices of the nodes at the $ (n+1)$th level, and $ n$ transition probabilities. Suppose $ (2n-1)$ parameters corresponding to the $ n$th level are known, the $ s_{n+1,i}$ and $ p_{n,i}$ corresponding to the $ (n+1)$th level can be calculated depending on the following principles:

We always start from the center nodes in one level, if $ n$ is even, define $ s_{n+1,i}=s_{1,1}=S$, for $ i=n/2+1$, and if $ n$ is odd, start from the two central nodes $ s_{n+1,i}$ and $ s_{n+1,i+1}$ for $ i=(n+1)/2$, and suppose $ s_{n+1,i}=s_{n,i}^{2}/s_{n+1,i+1}=S^{2}/s_{n+1,i+1}$, which adjusts the logarithmic spacing between $ s_{n,i}$ and $ s_{n+1,i+1}$ to be the same as that between $ s_{n,i}$ and $ s_{n+1,i}$. This principle yields the calculation formula of $ s_{n+1,i+1}$, see Derman and Kani (1994),

$\displaystyle s_{n+1,i+1}=\frac{S\{ e^{r\triangle t} C(S,n\triangle t)+\lambda_...
...e^{r\triangle t}C(S,n\triangle t)+\rho_{u}}\,\quad \mathrm{for}\quad i=(n+1)/2.$ (7.11)

Here $ \rho_{u}$ denotes the following summation term

$\displaystyle \rho_{u}=\sum_{j=i+1}^{n}\lambda_{n,j}(F_{n,j}-s_{n,i}),$ (7.12)

$ C(K, \tau)$ is the interpolated value for a call struck today at strike price $ K$ and time to maturity $ \tau$. In the D & K construction, the interpolated option price entering (7.11) is based on a CRR binomial tree with constant parameters $ \sigma=\sigma_{imp}(K, \tau)$, where the BS implied volatility $ \sigma_{imp}(K, \tau)$ can be calculated from the known market option prices. Calculating interpolated option prices by the CRR method has a drawback, it is computational intensive.

Once we have the initial nodes' stock prices, according to the relationships among the different parameters, we can continue to calculate those at higher nodes $ (n+1,j),\;j=i+2,\ldots n+1$ and transition probabilities one by one using the formula:

$\displaystyle s_{n+1,i+1} = \frac{s_{n,i}\{ e^{r\triangle t} C(s_{n,i},n\triang...
...riangle t}C(s_{n,i},n\triangle t)-\rho_{u}\}-\lambda_{n,i}(F_{n,i}-s_{n+1,i})},$ (7.13)

where the definition of $ \rho_{u}$ is the same as (7.12).


Similarly, we are able to continue to calculate the parameters at lower nodes $ (n+1,j),\;j=i-1,\ldots, 1$ according to the following recursion:

$\displaystyle s_{n+1,i}=\frac{s_{n,i+1}\{ e^{r\triangle t} P(s_{n,i},n\triangle...
...angle t}P(s_{n,i},n\triangle t)-\rho_{l}\}+\lambda_{n,i}(F_{n,i}-s_{n+1,i+1})},$ (7.14)

where $ \rho_{l}$ denotes the sum $ \sum_{j=1}^{i-1}\lambda_{n,j}(s_{n,i}-F_{n,j})$, and $ P(K, \tau)$ is similar to $ C(K, \tau)$, again these option prices are obtained by the CRR binomial tree generated from market options prices.


7.1.2 Compensation

In order to avoid arbitrage, the transition probability $ p_{n,i}$ at any node should lie between 0 and 1, it makes therefore sense to limit the estimated stock prices

$\displaystyle F_{n,i}<s_{n+1,i+1}<F_{n,i+1}.$ (7.15)

If the stock price at any node does not satisfy the above inequality, we redefine it by assuming that the difference of the logarithm of the stock prices between this node and its adjacent node is equal to the corresponding two nodes at the previous level, i.e.,

$\displaystyle \log(s_{n+1,i+1}/s_{n+1,i})=\log(s_{n,i}/s_{n,i-1}).$

Sometimes, the obtained price still does not satisfy inequality (7.15), then we choose the average of $ F_{n,i}$ and $ F_{n,i+1}$ as a proxy for $ s_{n+1,i+1}$.

In fact, the product of the Arrow-Debreu prices $ \lambda_{n,i}$ at the $ n$th level with the influence of interest rate $ e^{r(n-1)\triangle\,t}$ can be considered as a discrete estimation of the implied distribution, the SPD, $ p(S_{T},S_{t}, r, \tau)$ at $ \tau=(n-1)\triangle\,t$. In the case of the GBM model with constant volatility, this density is corresponding to (7.1).

After the construction of an IBT, we know all stock prices, transition probabilities, and Arrow-Debreu prices at any node in the tree. We are thus able to calculate the implied local volatility $ \sigma_{loc}(s_{n,i},m\triangle t)$ (which describes the structure of the second moment of the underlying process) at any level $ m$ as a discrete estimation of the following conditional variance at $ s=s_{n,i},\, \tau =
m\triangle t$. Under the risk-neutral assumption

$\displaystyle \sigma^{2}_{loc}(s,\tau)$ $\displaystyle =$ $\displaystyle \textrm{Var}(\log S_{t+\tau}\vert S_{t}=s)$  
  $\displaystyle =$ $\displaystyle \int( \log S_{t+\tau}- \textrm{E}\log
S_{t+\tau})^{2}p(S_{t+\tau}\vert S_{t}=s)\,dS_{t+\tau}$  
  $\displaystyle =$ $\displaystyle \int( \log S_{t+\tau}- \textrm{E}\log S_{t+\tau})^{2}p(S_{t},
S_{t+\tau} r, \tau )\,dS_{t+\tau}.$ (7.16)

In the IBT construction, the discrete estimation can be calculated as:

$\displaystyle \sigma_{loc}(s_{n,i},\triangle t)=\sqrt{p_{n,i}(1-p_{n,i})}\left\vert\log
\frac{s_{n+1,i+1}}{s_{n+1,i}}\right\vert.$

Analogously, we can calculate the implied local volatility at different times. In general, if we have calculated the transition probabilities $ p_{j},\,j=1,\ldots, m$ from the node $ (n,i)$ to the nodes $ (n+m,i+j),\,j=i,\ldots, m$, then with

$\displaystyle mean = \textrm{E}(log(S_{(n+m-1)\triangle t})\vert S_{(n-1)\triangle t}=s_{n,i}) = \sum_{j=1}^{m}p_{j}\log(s_{n+m,i+j}),$      
$\displaystyle \sigma_{loc}(s_{n,i},m\triangle t) =
\sqrt{\sum_{j=1}^{m}p_{j}\left(\log(s_{n+m,i+j})-mean)\right)^{2}}.$     (7.17)

Notice that the instantaneous volatility function used in (7.3) is different from the BS implied volatility function defined in (7.16), but in the GBM they are identical.

If we choose $ \triangle t$ small enough, we obtain the estimated SPD at fixed time to maturity, and the distribution of implied local volatility $ \sigma_{loc}
(s,\tau)$. Notice that the BS implied volatility $ \sigma_{imp}(K, \tau)$ (which assumes Black-Scholes model is established (at least locally)) and implied local volatility $ \sigma_{loc}
(s,\tau)$ is different, they have different parameters, and describe different characteristics of the second moment.


7.1.3 Barle and Cakici (B & C) algorithm

Barle and Cakici (1998) proposed an improvement of the Derman and Kani construction. The major modification is the choice of the stock price of the central nodes in the tree: their algorithm takes the riskless interest rate into account. If $ (n+1)$ is odd, then $ s_{n+1,i}=s_{1,1}e^{r\,n\triangle t}=Se^{r\,n\triangle t}$ for $ i=n/2+1$, if $ (n+1)$ is even, then start from the two central nodes $ s_{n+1,i}$ and $ s_{n+1,i+1}$ for $ i=(n+1)/2$, and suppose $ s_{n+1,i}=F_{n,i}^{2}/s_{n+1,i+1}$. Thus $ s_{n+1,i}$ can be calculated as:

$\displaystyle s_{n+1,i}=F_{n,i}\frac{\lambda_{n,i}F_{n,i}-\{ e^{r\triangle t} C...
...ngle t} C(F_{n,i},n\triangle t)-\rho_{u}\}}\,\quad \mathrm{for}\quad i=(n+1)/2,$ (7.18)

where $ C(K, \tau)$ is defined as in the Derman and Kani algorithm, and the $ \rho_{u}$ is

$\displaystyle \rho_{u}=\sum_{j=i+1}^{n}\lambda_{n,j}(F_{n,j}-F_{n,i}).$ (7.19)

After stock prices of the initial nodes are obtained, then continue to calculate those at higher nodes $ (n+1,j),\;j=i+2,\ldots n+1$ and transition probabilities one by one using the following recursion:

$\displaystyle s_{n+1,i+1}=\frac{s_{n+1,i}\{ e^{r\triangle t} C(F_{n,i},n\triang...
...riangle t}C(F_{n,i},n\triangle t)-\rho_{u}\}-\lambda_{n,i}(F_{n,i}-s_{n+1,i})},$ (7.20)

where $ \rho_{u}$ is as in (7.19), $ p_{n,i}$ is defined as in (7.5).


Similarly, continue to calculate the parameters iteratively at lower nodes $ (n+1,j),\;j=i-1,\ldots 1$.

$\displaystyle s_{n+1,i}=\frac{\lambda_{n,i}F_{n,i}(s_{n+1,i+1}-F_{n,i})-s_{n+1,...
...}(s_{n+1,i+1}-F_{n,i})-\{ e^{r\triangle t} P(F_{n,i},n\triangle t)-\rho_{l}\}},$ (7.21)

where $ \rho_{l}$ denotes the sum $ \sum_{j=1}^{i-1}\lambda_{n,j}(F_{n,i}-F_{n,j})$. Notice that in (7.13) and (7.14), $ C(K, \tau)$ and $ P(K, \tau)$ denote the Black-Scholes call and put option prices, this construction makes the calculation faster than the interpolation technique based on the CRR method.

The balancing inequality (7.15) and a redefinition are still used in the Barle and Cakici algorithm for avoiding arbitrage: the algorithm uses the average of $ F_{n,i}$ and $ F_{n,i+1}$ as the re-estimation of $ s_{n+1,i+1}$.