You are on page 1of 12

Options Pricing Using Binomial Trees

Gouthaman S. Balaraman, Ph.D.

Risk-Neutral valuation, Black-Scholes formula, No-Arbitrage hypothesis, European Vanilla
options (with or without dividens), Amercan Vanilla options (with or without dividends), Bi-
section method, Newton-Raphson method, Ito’s lemma, Implied volatility, Implied volatility

1 Overview
The bedrock of options pricing is the risk-neutral valuation principle, which relates the
expected value of a financial product at a future time to its current price. This is consistent
with no-arbitrage hypothesis. Vanilla options have a theoretical price given by the Black-
Scholes formula. We briefly touch upon these two aspects here.
In the next section of this write-up, we make use of risk-neutral valuation in constructing
a binomial model to price European, and American options with and without dividends. To-
wards the end we take up the case of constructing implied volatility tree, which incorporates
volatility smile of the underlying.

1.1 Risk-Neutral Valuation

An important general principle in options pricing is the risk-neutral valuation. According to
this principle, the expected return from a stock at time T , E(ST ), is the risk free value of
the current stock price:
E(ST ) = S0 erT
The continuous compounding risk-free rate is r and the current stock price is S0 . The
principal of risk-neutral valuation can be used to create a binomial model for price movement,
and subsequently a method to value options.

1.2 Black Scholes Formula

Value of a vanilla European call option, struck at K with time T to maturity, can be
derived using the above mentioned risk-neutral valuation principle. The payoff of the call at
maturity on an underlying with price V (at maturity) is max(V − K, 0). The expected value
of this payoff can be found, assuming a geometric brownian motion price movement for the
underlying as, Z ∞
E[max(V − K, 0)] = (V − K)g(V )dV,

where g(V ) is the probability density function of V such that log(V ) is normally distributed
with standard deviation w. Thus the current value of the call is

C = e−rT E[max(V − K, 0)]

which after a lengthy calculation comes out to be

C = S0 N (d1 ) − Ke−rT N (d2 ) (1)

where S0 is the current price of the underlying, the risk free rate is r, the volatility of the
underlying is σ,
ln[S0 /K] + (r + σ 2 /2)T
d1 = √
σ T
ln[S0 /K] + (r − σ 2 /2)T √
d2 = √ = d1 − σ T
σ T
and N (x) is the cumulative distribution function. The put-call parity relates the price of the
put and call prices, and is given as:

C − P = S0 − e−rT K

Put-call parity and Eq. (1) can be used to arrive at put prices.
For the case where the underlying has a continuous payout (dividend) q, the Black-Scholes
formula can be extended to yield,

c = S0 e−qT N (d01 ) − Ke−rT N (d02 )

ln(S0 /K) + (r − q + σ 2 /2)T
d01 = √
σ T

d02 = d01 − σ T

2 Binomial Tree
2.1 One Step Tree
Let us construct a tree whose pricing is given as shown in the figure (1) below, restricting to
time t0 and t1 . Initial price of the stock is S0 at t0 and has the option of moving to S0 u or
S0 d at time t1 . Let p be the probability of the price to rise from S0 to S0 u. Calculating the
expected return from the stock at t1 and making use of risk-neutral valuation,

E(St1 ) = pS0 u + (1 − p)S0 d = S0 er(t1 −t0 )

we get

er(t1 −t0 ) − d
p = (2)
We need to chose appropriate values for the parameters u and d which can be obtained
from equating the variance of the return to σ 2 ∆t. The variance of the stock price return on
the binomial tree is:
pu2 + (1 − p)d2 − [pu + (1 − p)d]2 = σ 2 ∆t
S u2


S0 S0



S0 d2

t0 t1 t2
Figure 1: A sample binomial tree diagram.

On ignoring terms of order higher than ∆t2 and making use of ud = 1, we get
√ √
u = eσ ∆t
d = e−σ ∆t

One can make use of the above construction to value an option. Let f be the current
value of an option on a stock. Let the payoff of the option after one step (time T ) on a
binomial tree be fu and fd for up and down movement respectively of the stock. The value
of the option in this case is given as:

f = e−rT [pfu + (1 − p)fd ].

2.2 Valuing European Options using Binomial Tree

Let us look at the simple example of valuing vanilla European option on an underlying (non-
dividend paying stock) with a current price S0 , strike price K, time to maturity T , risk-free
interest rate r, stock volatility σ. Steps to calculate the value of option:

• Build the basic binomial tree of stock price in future time, starting with S0 at time
t0 . At time t1 , the possible stock price values are (S0 u,S0 d). At time t2 , the possible
values are (S0 d2 , S0 ,S0 u2 ) and so on until time to maturity T . A sample tree is shown
in Fig. (1).

• Calculate the payoff from the option at the time of maturity, which for a European
call is max(ST − K, 0).

• Calculate the value of the option for all nodes at earlier time steps by using risk-neutral
valuation, working backwards until time t0 .

One can follow this procedure to find the value of the option at initial time t0 . Sample
calculation is shown in Fig. (2).







20 40 60 80 100

Figure 2: Plot of the value of a 5-month European call C0 vs. number of time steps n on a
non-dividend paying stock when stock price is $50, strike price is $50, risk free rate is 10%
per annum, and the volatility is is 40% per annum. The calculation is checked against the
Black-Scholes value(red curve).

2.3 Valuing European Options on Dividend-Paying Stock

Here we extend the binomial model for valuing options pricing when the underlying is a div-
idend paying stock. The dividend is paid on an ex-dividend date, and can be a percentage of
the stock price (known dividend yield) or some fixed dollar amount (known dollar dividend).

2.3.1 Known Dividend Yield

Let us start with a simple case where there is just one single dividend, and δ is the known
dividend yield. The prices of stocks for time i∆t prior to the stock going ex-dividend, the
nodes on the tree correspond to stock prices

S0 uj di−j , j = 0, 1, . . . , i

and if the time i∆t is after the stock goes ex-dividend, the nodes correspond to stock prices

S0 ∗ (1 − δ)uj di−j , j = 0, 1, . . . , i

Now, instead of just one dividend yield, if we have many dividend yields during the life of
an option, the nodes at time i∆t correspond to stock prices

S0 (1 − δi )uj di−j

where δi is the total dividend yeild associate with all ex-dividend dates between zero and
time i∆t.

2.3.2 Known Dollar Amount

When the cash dividend payment of a stock is known, the value of European option on such
an underlying is analyzed by assuming that the stock price is the sum of two components:






0 20 40 60 80

Figure 3: Plot of the value of a 5-month European call C0 vs. number of time steps n on a
dividend paying stock when stock price is $52, strike price is $50, risk free rate is 10% per
annum, and the volatility is 40% per annum, dividend is $2.06, and ex-dividend date is three
and a half months. The calculation is checked against the Black-Scholes value(red curve).

riskless component that corresponds to the known dividends during the life of the option
and a risky option. The riskless component at any time, is the present value of the dividends
during the life of the option, discounted from the ex-dividend dates to the present at the
risk-free rate. When the option matures the dividends would have been paid and the riskless
component vanishes. Therefore Black-Scholes formula can be used to price in this case if
the stock price is reduced by the present value of all the dividend during the life of the
options. Discounting in this case should be done from the ex-dividend date at the risk-free
rate. However the volatility for the risky component σ ∗ is not the same as the volatility of
the whole stock price. See Appendix 1 for more details.
A binomial model for this case can be built by making use of the above argument. Let
D be the dividend paid, τ the ex-dividend date, and S the stock price. The stock price of
the risky component S ∗ at time i∆t is given by

S∗ = S i∆t > τ

S ∗ = S − De−r(τ −i∆t) i∆t < τ
Thus using parameters σ ∗ , p, u, and d a tree can be constructed to model S ∗ . By adding to
the stock price the present value of future dividends, a tree representing S ∗ can be converted
to that representing S. At time i∆t < τ , the nodes on this tree correspond to the stock
S0∗ uj di−j + De−r(τ −i∆t) , j = 0, 1, . . . , i
and for i∆t > τ , nodes correspond to

S0∗ uj di−j , j = 0, 1, . . . , i.

Results from a sample calculation is shown in Fig. (3).

2.4 Valuing American Option using Binomial Trees
European option can be exercised only at the time of maturity, but an American option can
be exercised anytime before the maturity. Method used to value American option is very
similar to that of the European option, except that we need to incorporate the fact that the
option could be exercised early. In the case of American option, the value of the option at any
node in the binomial tree is the greater of the value calculated by backward induction (like in
European options), and the payoff from early exercise of option. By arbitrage arguments one
can show that it is never optimal to exercise early, an American call option on a non-dividend
paying stock (Appendix 2), and its value is given by the Black-Scholes formula.
Let us consider an American put option, maturing at time T = 1yr struck at price
K = 100, risk-free interest r = 5%, and volatility of stock σ = 15%. Let us take a simple two-
step binomial model, as shown in Fig (4). One can calculate using Eqns. (2,3), parameters
a) Stock Price b) Option Value

$123.63 $0.00

$111.19 A

$100.00 C $5.00

$89.94 B

$80.89 $24.11

t0 t1 t2 t0 t1 t2

Figure 4: An example of valuing an American put option on a binomial tree. (a) The
standard binomial tree of stock prices. (b) The value of an American put option on this
binomial tree.
u, d, and p, and hence set up the binomial tree for stock prices, as shown in Fig. (4a). In
Fig. (4b) the option value at maturity, has filled in. By backward induction, the value of the
option at nodes A and B are $1.9867 and $12.4694 respectively. For a European option, this
would indeed be the values at these nodes. Since early exercise is allowed for an American
option, the cost of immediate exercise at node B, which is $15.06, is greater than cost of
hedging the option. So the value of the option at node B should indeed be $15.06. Now by
back calculating, the value of the option at C is 7.1322.
In Fig. (5), I calculate the value of the American put option for this example, as a function
of number of iterations. Extending this to incorporate dividend paying stocks can be done
as we did to value European options on dividend paying stocks.

3 Implied Volatility Trees

Options traded in the marked have a price, called the market price. Using the market price
of an option, one can back-calculate the volatility, called the Black-Scholes implied volatility,
associated with the market price of the option. In other words, implied volatility is the value
of volatility along with other parameters, that would yield a Black-Scholes value equal to
the market value. In practice, the implied volatilities for a variety of options (on a given
stock) with different strikes and time until expiration, have different values. This nonconstant
implied volatility questions the following two assumptions that have been assumed in pricing
options so far:
• The underlying follows a geometric Brownian motion with constant volatility.

• There is no arbitrage opportunity in the market.

Here we will see how to compute implied volatility and discuss how this used in con-
structing implied volatility trees that price options consistent with the market value.

3.1 Computing Implied Volatility

The Black-Scholes formula for a call option is given by Eq. (1), which is a function of strike
price K, volatility σ, stock price St , and interest rate r. However this formula cannot be
inverted to get a formula for the volatility in terms of the other parameters and the call
value C. Thus one often resorts to numerical methods, like bisection method, and Newton-
Raphson method. Essentially, we have a function C(σ) with a given value C 0 , and we need
to find the value σ 0 such that C(σ 0 ) = C 0 .

Bisection Method
Bisection method starts with two guesses for the implied volatility σ< and σ> such that
σ< < σ 0 < σ> . In order to arrive at this guess, one makes use of the fact that greater
volatility leads to greater option value, (i.e.) C(σ< ) < C(σ 0 ) = C 0 < C(σ> ).
• Compute σn = (σ< + σ> )/2, and find the value of C(σn ).

• If C(σn ) < C 0 then set the new value for σ< = σn , and if C(σn ) > C 0 then set σ> = σn .


7.10 S0 =$100, K=$105, r = 5%, Σ = 15%, T = 1yr






10 20 30 40 50 60

Figure 5: Plot of American put option on a non-dividend-paying stock, as a function of the

number of iterations in the binomial model.
Bisection Method
n σn C(σn )
1 0.1 8.86916
2 0.05 6.5799
3 0.075 7.65725
4 0.0875 8.253
5 0.09375 8.55901
6 0.096875 8.71361
7 0.0953125 8.63619
8 0.0945313 8.59757
9 0.0949219 8.61687
10 0.0947266 8.60722
11 0.0948242 8.61204
12 0.0947754 8.60963

Newton-Raphson Method
1 0.1 8.86916
2 0.094808 8.61124
3 0.0947829 8.61

Table 1: Table of iterations σn and the correponding C(σn ) for Bisection method and Newton-
Raphson method, calculated to an accuracy  = 10−4 . Parameters considered are S0 = $100,
K = $100, C 0 = $8.61, r = 3% and T = 2yr.

• Repeat steps (1) and (2) until σn satisfies |C(σn ) − C 0 | < , where  is desired the

Newton Raphson Method Let f (σ) = C(σ) − C 0 , and we need to find σ 0 such that
f (σ 0 ) = 0. Let σ0 be our initial guess, such that it is ‘close enough’ to σ 0 . The general
formula for the nth guess is given as

f (σn−1 )
σn = σn−1 −
f 0 (σn−1 )

where f 0 (σn−1 ) = dσ σ=σn−1 . One can continue this iteration process until |C(σn ) − C 0 | < ,

for a given desired accuracy parameter .

Bisection method has a much slower rate of convergence in comparison to Newton-
Raphson method, but the Bisection method is guaranteed to converge while the Newton-
Raphson method is known can have issues with convergence in specific cases. Calculations
from a sample calculation is shown in Table (1).
3.2 Constructing Implied Volatility Trees
We have so far used standard trees which is exactly the same for all options, irrespective
of the strike level or time to expiration. However, as discussed above, the market value of
options vary with different strike price and time to expiration on the same underlying. This
situation cannot be remedied within the framework of standard trees, and hence led to the
development of implied volatility trees. The implied volatility tree is constructed with a given
set of option values as input, and constructed in such a way that the implied volatility tree
always prices the input options consistently with the market price. Hence implied volatility
trees are useful in calculating hedge parameters consistent with the market, and in valuing
non-standard and exotic options. Here I underline the methodology for constructing implied
volatility trees discussed by Derman and Kani [3] for a given set of European option prices
as input.
From a given set of market values for a set of European options for different strike
level, and time to expiration, one can make use of interpolation/extrapolation to construct
implied volatility as a function of the strike and time to expiration, given as σ(K, t). The
implied volatility tree is constructed by method of induction. Let us assume one has already
constructed the prices of the first n time steps that match the implied volatilities of all
options with all strikes out to that time period. Let si and λi be the already known stock
prices and Arrow-Debreu prices1 respectively for the n nodes at time tn . Let r be the risk-
free interest rate for the time step (tn , tn+1 ). Our goal is to fix the stock prices for n + 1
nodes at time tn+1 and n transition probabilities pi for the transition from level n to level
n + 1. To solve for 2n + 1 unknowns, we have n equation for the value of forwards and n
equations for the value of options, all expiring at tn+1 making a total of 2n equations. We
use the additional degree of freedom to fix the value of the center of the tree to coincide with
the spot price S0 , if there are odd number of nodes for a given level; and have the average
of the natural logarithms of the two central nodes’ stock price equal the logarithm of todays
stock price, if there are even number of nodes at a given level.
Forward Price Equation
The n forward prices Fi of the stock one time period ∆t later, at n nodes at time tn is
Fi = si er∆t = pi Si+1 + (1 − pi )Si (4)
Options Price Equation
The n options price C(K, tn+1 ) expiring at tn+1 , one for each strike K equal to si , the known
stock price at tn .
C(K, tn+1 ) = e [λj pj + λj+1 (1 − pj+1 )] max(Sj+1 − K, 0)

which can be rewritten for a strike K equals si in the form of known stock prices si and
forwards Fi
er∆t C(si , tn+1 ) = λi pi (Si+1 − si ) +
λj (Fj − si ) (5)

The Arrow-Debreu price of a node is the probability of reaching that node discounted by a factor
−r(tn −t0 )
e , where tn − t0 represents the time between today and the time where the node is.
On solving Eq. (4,5) for Si+1 and transition probability pi in terms of Si , we get

Si [er∆t C(si , tn+1 ) − Σ] − λi si (Fi − Si )

Si+1 = (6)
[er∆t C(si , tn+1 ) − Σ] − λi (Fi − Si )
Fi − Si
pi = (7)
Si+1 − Si

where Σ = nj=i+1 λj (Fj − si ). If n + 1 is odd, then we can fix the price of the central node

for i = n/2 + 1 equal to S0 , today’s spot price. Then we can calculate the stock price Sj for
nodes j > n/2 + 1 iteratively by using Eq. (6,7). Thus we fix the prices for the upper half
of each level.
On the other hand if n + 1 is even, then we constrain Si and Si+1 for i = (n + 1)/2 to
satisfy Si = S02 /Si+1 . Substituting this relation into Eq. (6) gives,

S0 [er∆t C(S0 , tn+1 ) + λi S0 − Σ]

Si+1 = i = (n + 1)/2 (8)
λi Fi − er∆t C(S0 , tn+1 ) + Σ

Once we have the price for this initial node, we can continue to fix the nodes for the upper
half by making use of Eq. (6). Similarly all the nodes below the central node at a given level
can be known from the put prices P (si , tn+1 ), given by the formula

Si+1 [er∆t P (si , tn+1 ) − Σ0 ] + λi si (Fi − Si+1 )

Si = (9)
[er∆t P (si , tn+1 ) − Σ0 ] + λi (Fi − Si+1 )

Σ0 =
λj (si − Fj ).

Representative results from the calculation for the example given in Ref. [3] is shown in
Table (2).
Note: The prices at every node has to satisfy the condition Fi < Si+1 < Fi+1 , otherwise
riskless arbitrage is allowed. If the above inequality is violated, then the stock price is ignored
and replaced in such a way that the logarithmic spacing between this node and its adjacent
node the same as that between corresponding nodes at the previous level.

Appendix 1
Let S follow geometric Brownian motion given as

dS = µ S dt + σ S dWt .

We define a new stochastic process S ∗ after discounting the future dividend payouts (can be
generalised for more than one dividend payouts as well) as

S ∗ = S − D e−r(τ −t)
t (years) Sj λj t (years) Sj λj
0 100 1 4 58.7514 0.013883
1 90.4837 0.361937 79.2783 0.103719
110.517 0.608508 100 0.255762
2 79.2866 0.114641 120.369 0.323699
100 0.423299 139.169 0.189858
120.301 0.403825 5 54.349 0.00852321
3 71.3336 0.0508735 71.2027 0.0505726
90.4366 0.213965 90.3895 0.148055
110.575 0.380012 110.632 0.253054
130.076 0.26908 130.1 0.26151
147.74 0.138994

Table 2: The stock prices and the Arrow-Debreu prices for zero to five years on an implied
tree. The smile here is given as σ(S) = 15 − 0.05S %. These prices can be compared with
the example shown in Ref. [3].

where D is the dividend paid out at time the ex-dividend date τ . Using Ito’s lemma we can
write down the stochastic differential equation for S ∗ (S, t) as
∂S ∗ ∂S ∗ 1 ∂ 2S ∗ ∂S ∗

dS = + a(S, t) + b(S, t)2 dt + b(S, t) dWt
∂t ∂S 2 ∂S 2 ∂S
if S is given by dS = a(S, t)dt + b(S, t)dWt . In this case we get
dS ∗ = (µS − Drer(τ −t) )dt + σS dWt
which can be rewritten as
dS ∗ = µ0 S ∗ dt + σ 0 S ∗ dWt
µS − Dre−r(τ −t)
µ∗ =
S − De−r(τ −t)
σ∗ =
S − De−r(τ −t)
Thus the Black-Scholes option pricing formula can be modified to handle lumpy dividend
payouts by considering a geometric Brownian motion for the stock with a volatility at time
σS σS
σ∗ = −r(τ −t)

S − De S−D
and a reduced initial price
S ∗ = S − De−r(τ −t)
Chriss ([1] page 160) remarks that the Black-Scholes formula for lumpy dividend payout
can be calculated by plugging in the new (time-dependent) volatility σ ∗ directly into the
Black-Scholes formula, which seems suspect to me as Black-Scholes formula is meant to hold
for constant volatility. However it would be appropriate the to use the approximate value [2]
σ ∗ = σS/(S − D) instead, where it is applicable.
Appendix 2: Early Exercise of American Options
Here we show that, for an American call option on a non-dividend paying stock, it is never
optimal to exercise early. In order to prove this, we start with an American option on a
non-dividend paying stock struck at K maturing at time T . At some arbitrary time t before
maturity, let the option be in the money. Now we consider two cases:

• Exercise the option at the time t.

• Hold the option until its expiration and exercise it.

For the above two situations, we look at the worth of the two investments at the time of
maturity T .
For case one, to fund the exercise of the option at time t, we sell a bond for K maturing
at time T , and invest the proceeds of the sale to buy stock at K. At maturity we have the
stock and owe an amount K er(T −t) , a net worth of ST − K er(T −t)
For the second case, the value of the investment at maturity is max(ST − K, 0), which is
worth more than the case one for positive interest rate r. Thus we always have,

ST − er(T −t) K < max(ST − K, 0)

Thus it is never optimal to exercise early. However, this is no longer true if the underlying
is a dividend-paying stock.

[1] Neil A Chriss, Black-Scholes and Beyond: Option Pricing Models

[2] John C. Hull, Options, Futures, and Other Derivatives

[3] E. Derman and I. Kani, Goldman Sachs Quantitative Strategies Research Notes, 1994