Binomial options pricing model: Difference between revisions
BOT--Reverting link addition(s) by 188.141.29.113 to revision 741247419 (https://www.youtube.com/watch?v=fgGjItEDdMc&list=PLtlRowSvuTZR4ESJDmYf5oh2yUybjdUU0 [\byoutube\.com]) |
Rescuing 2 sources and tagging 1 as dead. #IABot (v1.2.6) |
||
Line 165: | Line 165: | ||
'''Other tree structures''' |
'''Other tree structures''' |
||
*[http://mspace.lib.umanitoba.ca/handle/1993/3154 Extending and simulating the quantum binomial options pricing model], Keith Meyer |
*[http://mspace.lib.umanitoba.ca/handle/1993/3154 Extending and simulating the quantum binomial options pricing model], Keith Meyer |
||
*[http://www.bus.lsu.edu/academics/finance/faculty/dchance/Research/ASynthesisofBinomialOptionPricingModels.pdf A Synthesis of Binomial Option Pricing Models for Lognormally Distributed Assets], Don M. Chance |
*[http://www.bus.lsu.edu/academics/finance/faculty/dchance/Research/ASynthesisofBinomialOptionPricingModels.pdf A Synthesis of Binomial Option Pricing Models for Lognormally Distributed Assets]{{dead link|date=November 2016 |bot=InternetArchiveBot |fix-attempted=yes }}, Don M. Chance |
||
*[http://www.sitmo.com/article/binomial-and-trinomial-trees Binomial and Trinomial Trees - overview], The Quant Equation Archive, sitmo.com |
*[http://www.sitmo.com/article/binomial-and-trinomial-trees Binomial and Trinomial Trees - overview], The Quant Equation Archive, sitmo.com |
||
Line 171: | Line 171: | ||
*{{PDFlink|[http://www.bus.lsu.edu/academics/finance/faculty/dchance/Instructional/TN97-14.pdf Binomial Pricing of Interest Rate Derivatives]|76.3 KB}}, Don M. Chance |
*{{PDFlink|[http://www.bus.lsu.edu/academics/finance/faculty/dchance/Instructional/TN97-14.pdf Binomial Pricing of Interest Rate Derivatives]|76.3 KB}}, Don M. Chance |
||
*[http://pages.stern.nyu.edu/~dbackus/3176/adlec3.pdf Binomial Models for Fixed Income Analytics], [[David Backus]] and [[Stan Zin]] |
*[http://pages.stern.nyu.edu/~dbackus/3176/adlec3.pdf Binomial Models for Fixed Income Analytics], [[David Backus]] and [[Stan Zin]] |
||
*[http://finance.wharton.upenn.edu/~benninga/mma/MiER73.pdf Binomial Term Structure Models], Simon Benninga and Zvi Wiener |
*[https://web.archive.org/web/20070630071856/http://finance.wharton.upenn.edu/~benninga/mma/MiER73.pdf Binomial Term Structure Models], Simon Benninga and Zvi Wiener |
||
===Computer implementations=== |
===Computer implementations=== |
||
Line 190: | Line 190: | ||
'''Programming languages''' |
'''Programming languages''' |
||
*[http://www.stat.rice.edu/~dobelman/download/bsopm.html Fortran] |
*[http://www.stat.rice.edu/~dobelman/download/bsopm.html Fortran] |
||
*[http://finance.wharton.upenn.edu/~benninga/mma/MiER63.pdf Mathematica] |
*[https://web.archive.org/web/20061027160716/http://finance.wharton.upenn.edu:80/~benninga/mma/MiER63.pdf Mathematica] |
||
*[http://www.stat.rice.edu/~dobelman/download/bsopm.html S-Plus] |
*[http://www.stat.rice.edu/~dobelman/download/bsopm.html S-Plus] |
||
*Python: [https://code.google.com/p/quantandfinancial/source/browse/trunk/quant/options.py implementation], [http://www.quantandfinancial.com/2012/11/cox-ross-rubinstein-option-pricing-model.html article] |
*Python: [https://code.google.com/p/quantandfinancial/source/browse/trunk/quant/options.py implementation], [http://www.quantandfinancial.com/2012/11/cox-ross-rubinstein-option-pricing-model.html article] |
Revision as of 21:04, 2 November 2016
In finance, the binomial options pricing model (BOPM) provides a generalizable numerical method for the valuation of options. The binomial model was first proposed by Cox, Ross and Rubinstein in 1979.[1] Essentially, the model uses a “discrete-time” (lattice based) model of the varying price over time of the underlying financial instrument. In general, Georgiadis showed that binomial options pricing models do not have closed-form solutions.[2]
Use of the model
The Binomial options pricing model approach is widely used since it is able to handle a variety of conditions for which other models cannot easily be applied. This is largely because the BOPM is based on the description of an underlying instrument over a period of time rather than a single point. As a consequence, it is used to value American options that are exercisable at any time in a given interval as well as Bermudan options that are exercisable at specific instances of time. Being relatively simple, the model is readily implementable in computer software (including a spreadsheet).
Although computationally slower than the Black–Scholes formula, it is more accurate, particularly for longer-dated options on securities with dividend payments. For these reasons, various versions of the binomial model are widely used by practitioners in the options markets.[citation needed]
For options with several sources of uncertainty (e.g., real options) and for options with complicated features (e.g., Asian options), binomial methods are less practical due to several difficulties, and Monte Carlo option models are commonly used instead. When simulating a small number of time steps Monte Carlo simulation will be more computationally time-consuming than BOPM (cf. Monte Carlo methods in finance). However, the worst-case runtime of BOPM will be O(2n), where n is the number of time steps in the simulation. Monte Carlo simulations will generally have a polynomial time complexity, and will be faster for large numbers of simulation steps. Monte Carlo simulations are also less susceptible to sampling errors, since binomial techniques use discrete time units. This becomes more true the smaller the discrete units become.
Method
The binomial pricing model traces the evolution of the option's key underlying variables in discrete-time. This is done by means of a binomial lattice (tree), for a number of time steps between the valuation and expiration dates. Each node in the lattice represents a possible price of the underlying at a given point in time.
Valuation is performed iteratively, starting at each of the final nodes (those that may be reached at the time of expiration), and then working backwards through the tree towards the first node (valuation date). The value computed at each stage is the value of the option at that point in time.
Option valuation using this method is, as described, a three-step process:
- price tree generation,
- calculation of option value at each final node,
- sequential calculation of the option value at each preceding node.
STEP 1: Create the binomial price tree
The tree of prices is produced by working forward from valuation date to expiration.
At each step, it is assumed that the underlying instrument will move up or down by a specific factor ( or ) per step of the tree (where, by definition, and ). So, if is the current price, then in the next period the price will either be or .
The up and down factors are calculated using the underlying volatility, , and the time duration of a step, , measured in years (using the day count convention of the underlying instrument). From the condition that the variance of the log of the price is , we have:
Above is the original Cox, Ross, & Rubinstein (CRR) method; there are other techniques for generating the lattice, such as "the equal probabilities" tree. The Trinomial tree is a similar model, allowing for an up, down or stable path.
The CRR method ensures that the tree is recombinant, i.e. if the underlying asset moves up and then down (u,d), the price will be the same as if it had moved down and then up (d,u) — here the two paths merge or recombine. This property reduces the number of tree nodes, and thus accelerates the computation of the option price.
This property also allows that the value of the underlying asset at each node can be calculated directly via formula, and does not require that the tree be built first. The node-value will be:
Where is the number of up ticks and is the number of down ticks.
STEP 2: Find Option value at each final node
At each final node of the tree — i.e. at expiration of the option — the option value is simply its intrinsic, or exercise, value.
- Max [ (), 0 ], for a call option
- Max [ ( – ), 0 ], for a put option:
Where is the strike price and is the spot price of the underlying asset at the period.
STEP 3: Find Option value at earlier nodes
Once the above step is complete, the option value is then found for each node, starting at the penultimate time step, and working back to the first node of the tree (the valuation date) where the calculated result is the value of the option.
In overview: the “binomial value” is found at each node, using the risk neutrality assumption; see Risk neutral valuation. If exercise is permitted at the node, then the model takes the greater of binomial and exercise value at the node.
The steps are as follows:
(1) Under the risk neutrality assumption, today's fair price of a derivative is equal to the expected value of its future payoff discounted by the risk free rate. Therefore, expected value is calculated using the option values from the later two nodes (Option up and Option down) weighted by their respective probabilities—“probability” p of an up move in the underlying, and “probability” (1-p) of a down move. The expected value is then discounted at r, the risk free rate corresponding to the life of the option.
- The following formula to compute the expectation value is applied at each node:
- Binomial Value = [ p × Option up + (1-p) × Option down] × exp (- r × Δt), or
- where
- is the option's value for the node at time ,
- is chosen such that the related binomial distribution simulates the geometric Brownian motion of the underlying stock with parameters r and σ,
- is the dividend yield of the underlying corresponding to the life of the option. It follows that in a risk-neutral world futures price should have an expected growth rate of zero and therefore we can consider for futures.
- Note that for to be in the interval the following condition on has to be satisfied .
- (Note that the alternative valuation approach, arbitrage-free pricing, yields identical results; see “delta-hedging”.)
(2) This result is the “Binomial Value”. It represents the fair price of the derivative at a particular point in time (i.e. at each node), given the evolution in the price of the underlying to that point. It is the value of the option if it were to be held—as opposed to exercised at that point.
(3) Depending on the style of the option, evaluate the possibility of early exercise at each node: if (1) the option can be exercised, and (2) the exercise value exceeds the Binomial Value, then (3) the value at the node is the exercise value.
- For a European option, there is no option of early exercise, and the binomial value applies at all nodes.
- For an American option, since the option may either be held or exercised prior to expiry, the value at each node is: Max (Binomial Value, Exercise Value).
- For a Bermudan option, the value at nodes where early exercise is allowed is: Max (Binomial Value, Exercise Value); at nodes where early exercise is not allowed, only the binomial value applies.
In calculating the value at the next time step calculated—i.e. one step closer to valuation—the model must use the value selected here, for “Option up”/“Option down” as appropriate, in the formula at the node.
The following algorithm demonstrates the approach computing the price of an American put option, although is easily generalized for calls and for European and Bermudan options:
function americanPut(T, S, K, r, sigma, q, n) {
' T... expiration time
' S... stock price
' K... strike price
' q... dividend yield
' n... height of the binomial tree
deltaT := T / n;
up := exp(sigma * sqrt(deltaT));
p0 := (up * exp(-r * deltaT) - exp(-q * deltaT)) * up / (up^2 - 1);
p1 := exp(-r * deltaT) - p0;
' initial values at time T
for i := 0 to n {
p[i] := K - S * up^(2*i - n);
if p[i] < 0 then p[i] := 0;
}
' move to earlier times
for j := n-1 down to 0 {
for i := 0 to j {
p[i] := p0 * p[i] + p1 * p[i+1]; ' binomial value
exercise := K - S * up^(2*i - j); ' exercise value
if p[i] < exercise then p[i] := exercise;
}
}
return americanPut := p[0];
}
Discrete dividends
In practice, the use of continuous dividend yield, , in the formula above can lead to significant mis-pricing of the option near an ex-dividend date. Instead, it is common to model dividends as discrete payments on the anticipated future ex-dividend dates.
To model discrete dividend payments in the binomial model, apply the following rule:
- At each time step, , calculate , for all where is the present value of the -th dividend. Subtract this value from the value of the security price at each node (, ).
Relationship with Black–Scholes
Similar assumptions underpin both the binomial model and the Black–Scholes model, and the binomial model thus provides a discrete time approximation to the continuous process underlying the Black–Scholes model. In fact, for European options without dividends, the binomial model value converges on the Black–Scholes formula value as the number of time steps increases. The binomial model assumes that movements in the price follow a binomial distribution; for many trials, this binomial distribution approaches the lognormal distribution assumed by Black–Scholes.
In addition, when analyzed as a numerical procedure, the CRR binomial method can be viewed as a special case of the explicit finite difference method for the Black–Scholes PDE; see Finite difference methods for option pricing.[citation needed]
In 2011, Georgiadis shows that the binomial options pricing model has a lower bound on complexity that rules out a closed-form solution.[2]
See also
- Trinomial tree, a similar model with three possible paths per node.
- Tree (data structure)
- Black–Scholes, binomial lattices are able to handle a variety of conditions for which Black–Scholes cannot be applied.
- Monte Carlo option model, used in the valuation of options with complicated features that make them difficult to value through other methods.
- Real options analysis, where the BOPM is widely used.
- Quantum finance, quantum binomial pricing model.
- Mathematical finance, which has a list of related articles.
- Employee stock option #Valuation, where the BOPM is widely used.
- Implied binomial tree
- Edgeworth binomial tree
References
- ^ Cox, J. C.; Ross, S. A.; Rubinstein, M. (1979). "Option pricing: A simplified approach". Journal of Financial Economics. 7 (3): 229. doi:10.1016/0304-405X(79)90015-1.
- ^ a b Georgiadis, Evangelos (2011). "Binomial options pricing has no closed-form solution". Algorithmic Finance. 1 (1). IOS Press: 13–16. doi:10.3233/AF-2011-003.
- Richard J. Rendleman, Jr. and Brit J. Bartter. 1979. "Two-State Option Pricing". Journal of Finance 24: 1093-1110. doi:10.2307/2327237
External links
This article's use of external links may not follow Wikipedia's policies or guidelines. (May 2011) |
Discussion
- The Binomial Model for Pricing Options, Prof. Thayer Watkins
- Binomial Option Pricing (PDF), Prof. Robert M. Conroy
- Options pricing using a binomial lattice, The Investment Analysts Society of Southern Africa
- Template:PDFlink, Prof. Don M. Chance
- Binomial Option Pricing Model by Fiona Maclachlan, The Wolfram Demonstrations Project
- On the Irrelevance of Expected Stock Returns in the Pricing of Options in the Binomial Model: A Pedagogical Note by Valeri Zakamouline
Variations
American and Bermudan options
- Pricing Bermudan Options, umanitoba.ca
- Option Pricing: Extending the Basic Binomial Model, Rich Tanenbaum
Other tree structures
- Extending and simulating the quantum binomial options pricing model, Keith Meyer
- A Synthesis of Binomial Option Pricing Models for Lognormally Distributed Assets[permanent dead link], Don M. Chance
- Binomial and Trinomial Trees - overview, The Quant Equation Archive, sitmo.com
Fixed income derivatives
- Template:PDFlink, Don M. Chance
- Binomial Models for Fixed Income Analytics, David Backus and Stan Zin
- Binomial Term Structure Models, Simon Benninga and Zvi Wiener
Computer implementations
Spreadsheets
- American Options - Binomial Method, global-derivatives.com
- European Options - Binomial Method, global-derivatives.com
- Tutorial to create binomial trees in Excel
- Tutorial to simulate stock prices with binomial model in Excel
Desktop pricer
- Fairmat, free-to-use software which implements various binomial trees option pricing through a plug-in.
Online pricer
- Online european and american options pricing - Binomial Methods (Tian, CRR, Risk Neutral), pricing-option.com
- Binomial OptionsCalc Online, fintools.com
- Binomial Calculator, ivolatility.com
Programming languages
- Fortran
- Mathematica
- S-Plus
- Python: implementation, article