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 ud 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 ud 1 2 r t t u e 2 1 2 r t t 2 d e p e r t d ud 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 ud 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.