The Binomial-tree Option Calculator

advertisement
The Binomial-tree Option Calculator
This is a short documentation of how to use the php-programs;


Binomial-tree Option Calculator and
Binomial-tree Iteration Analyser
for using the binomial methods for calculations on options. The methods used in the
calculations are the well-known Cox-Ross-Rubinstein's binomial model and a few
others. The results are compared with the Black-Scholes value if the calculations are
made for European options of American call options.
The output called Probability is the probability that the option will have a positive
value at the time for maturity.
Input data
First of all you have to fill in the form with the needed input data. This is:






The underlying asset price,
The option strike price,
Time to maturity,
The risk free interest rate,
The volatility and
The number of binomial steps (minimum and maximum value for the Iteration
Analysor).
If you want to calculate the implied volatility for a given option, you also have to
give:

The simulated option price.
When all the input data is given you must select:



The option exercise style,
The option type and
The type of binomial tree to use.
Calculate (with the calculator)
Now, you can start the calculation by pressing Calculate. With the selected metod the
following output is given:







Option price
Delta
Gamma
Theta
Vega and
Rho
Probability to reach strike price at maturity.
If the option is of European type or an American call option, the values are compared
with the values given by Black-Scholes.
The probability is calculated by the Black-Scholes formula since we only calculate the
probability to reach the strike at the end date.
If you want to Save the calculated data, you have to give the filenames for each of the
values you like to save. If you save the results you can use these results to compare
different options in graphs. This is explained below. You can use the radio buttons to
select if you want to save the result as function of time or as function of the
underlying asset price.
During the calculation you can also save the binomial trees. The trees are saved on
files if the checkbox for “Save the tree on file” are checked. See below for comments
on the trees.
The button Clear, clears all the input data and let you start from the beginning.
Numerical Methods
A great advantages of this program, is that you easily can change the type of tree to
use in the calculations. This gives you the possibility to investigate the different
results given by the models. You can also create plots to examine and compare how
the tree-models converge. The graphical possibilities are described below.
The trees
You can select between the following trees:








CRR – Cox, Ross Rubenstein [1979] tree,
CRR 2 – Cox, Ross Rubenstein tree, (a modified CRR model)
JR
– Jarrow Rudd [1983] tree,
TIAN – Tian [1993] tree,
TRG – Trigeorgis [1991] tree,
LR
– Leisen Reimer[1995] tree,
LRRE – The Leisen Reimer tree with Richardson extrapolation,
TRI – Trinomial tree and
NEW!! I have also added some new calculation strategies. They are called, e.g.
CRR++ and CRR++RE etc, and they need an explanation. In the ++ strategies I
replace the value of the option in some of the nodes, closest to maturity with the value
given by Black-Scholes. This strategy will remove much of the oscillations in the
convergence when the number of nodes increases. With ++RE I also use Richardson
extrapolation on the “++” result. This is possible because we have removed the
oscillations.
Since this is NOT a document with the aim to give a full description of the binomial
method, I refer the reader to the literature. I give some of my references in the end of
this document. But, I will give a shot description of the parameters used in the trees.
All trees are built from four parameters (u, d, p and q). The parameters u and d tell
how much the underlying will go up or down in each discrete time, and the
parameters p and q is the probabilities for the price to go up and down respectively.
Therefore p + q = 1.
CRR model
  t

u  e

 

d  1/ u  e
p
t
e r t  d
ud
CRR-2 model
2

a 2  b 2  1  a 2  b 2  1  4a 2

u 
2a

 d  1/ u
 a  er t

 2
2
 2 t
1
b  a  e


p
JR model
e r t  d
ud


 1 2

 r   t   t
u  e 2 

 1 2
 r   t   t

 2 
d

e

p
e r t  d
ud
TIAN model
M V

 u  2

d  M V

2
V  1  V 2  2V  3 


V  1  V 2  2V  3 


 M  e r t

 2 t
 V  e
p
e r t  d
ud
TRG model
In the TRG model the logarithm of the price (instead of the price itself) is used to
build the tree. Therefore, when the tree is build we add u = dx and subtract by d = dx.
2

1 2
2

2
dx   t   r      t 

2 


1 1
1 2  dx

 p  2  2  r  2   t



LR model
This model differs from the other methods in a common sense. The model converges
much faster than the other ones and do not oscillate. The reason for the fast
convergence is the choice of parameters. With the LR-parameters the strike price is
centred in the tree and the probabilities are given by De Moivre-Laplace theorem,
which is an approximation of the normal distribution. For the reader I suggest the
article by Leisen and Reimer (see references). But a short explanation is given here:
a  er t
1 

ln( S / K )   r   2   T  t 
2 

d1 
 T t
d 2  d1   T  t
p  B(d 2, N )
p  B(d 2    T  t , N )
Where B is the inverse of the binomial distribution and N the number of refinements.
We use the Peizer-Pratt method [case: j + ½ = n – (j + ½), n = 2j + 1]:
1
2

 
 2

1 1 1
1  
  z  
p
  exp 
  n   
1
2 4 4
6 


n


 
3



Then we have

p
u  a 
p


 d  a  1 p

1 p
TRI model
In the TRI model we calculate three new nodes in each time-step. This means the
price can go up with u, down with d or stay the same, with the probabilities pu, pd and
pm:




2
2
1   t   r  0.5    t 
pu 
2
r  0.5   2  t
 2  t 
 t
pm  1 
2
 2  t   r  0.5   2   t 
 2  t




2
2
1   t   r  0.5    t 
pd 
2
r  0.5   2  t
2
  t 
 t
2
2
  t

u  e

 

d  1/ u  e
t
Graphics
The most important functions in the program are the graphical possibilities. Below the
input/output form there are a number of buttons that will give you a number of graphs.






Price Curves
Delta
Gamma
Theta
Vega
Rho
Each of these buttons creates three different graphs; the given variable as function of
the underlying value, as function of time and as function of the volatility. If the
checkbox “Print input data in the plots” is checked, a box with the input values is
presented in the upper right corner.
With the Avista – button you can also plot the implied stock price as function of time
that keeps the option value constant. This is a very important plot because the timevalue of an option “eats” the option value during the option lifetime. This curve
shows how much the underlying stock price, have to increase to compensate for the
loss of the time value.
With the Iteration Analysor you can plot how the option price for different binominal
method converges. If you o this for an European option or an American call option,
the convergence is compared with the value given by the Black-Scholes method.
More Graphics
If you give filenames for the output variables, the data is saved on the server. With a
program on http://janroman.dhis.org/DataGraph.php you can give the same filename
and plot the data. With this option you can compare graphs for e.g., different strikes
or different times to maturity.
A printable result
With the button Printable you get a printable version of the calculation result. This
can be printed or copied and pasted into a document etc.
References
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
Cox, J., Ross, S.A., Rubenstein M. (1979): “Option Pricing: A simplified
Approach”, Journal of Financial Economics 7, 1979, pp. 145-166.
Hull J. “Option Futures and other Derivatives” Prentice-Hall, New Jersey.
Jarrow, R. Rudd A.(1983): “Option Pricing”. Homewood, Illinois 1983,
pp. 183-188.
Pratt, J. W. (1968): “A Normal Approximation for Binomial, F, Beta, and
Other Common, Related Tail Probabilities, II”, The Journal of the American
Statistical Association, Bd. 63. 1968, pp. 1457-1483.
Tian, Y. (1993): “A Modified Lattice Approach to Option Pricing”, Journal
of Futures Markets, Vol 13, No. 5, pp. 564-577.
Trigeorgis, Lenos (1991): “A Log-transformed Binomial Numerical Analysis
for Valuing Complex Multi-Option Investments”, Journal of Financial and
Quantitative Analysis 26, No. 3, September 1991, pp. 309-326.
Leisen, D., Reimer, M. (1996): ”Binomial Models for Option Valuation –
Examine and Improving Convergence”. Applied Mathematical Finance, vol. 3
1996, pp. 319-346.
Leisen, D., (1998): “Pricing the American put option: A detailed convergence
analysis for binomial models”. Journal of Economic Dynamics and Control.
22 (1998), pp. 1419-1444.
Download