Monte Carlo methods in finance
1358940
219754996
2008-06-16T19:08:24Z
Fintor
69488
/* Overview */ [[Deterministic system (mathematics)|deterministic]]
In the fields of [[finance]] and [[mathematical finance]], '''[[Monte Carlo method]]s''' are used to value and analyze basic financial models through to complex [[financial instrument|instrument]]s, [[portfolio (finance)|portfolio]]s and [[investment]]s by [[simulation|simulating]] the various sources of uncertainty affecting their value, and then determining their average value over the range of resultant outcomes [http://www.puc-rio.br/marco.ind/monte-carlo.html]. The advantage of Monte Carlo methods over other techniques increases as the dimensions (sources of uncertainty) of the problem increase.
Monte Carlo methods were first introduced to finance in [[1964]] by [[David B. Hertz]] in [http://harvardbusinessonline.hbsp.harvard.edu/b02/en/common/item_detail.jhtml;jsessionid=STHKLK0DPSGZQAKRGWDR5VQBKE0YIISW?id=79504&referral=7855 "Risk Analysis in Capital Investment"] (''[[Harvard Business Review]]''), discussing their application in [[Corporate Finance]]. In [[1977]], [[Phelim Boyle]] pioneered the use of simulation in [[Derivative (finance)|derivative valuation]] in his seminal paper [http://ideas.repec.org/a/eee/jfinec/v4y1977i3p323-338.html "Options: A Monte Carlo Approach"] (''[[Journal of Financial Economics]]'').
This article discusses typical financial problems in which Monte Carlo methods are used. It also touches on the use of so-called "quasi-random" methods such as the use of [[Sobol sequence]]s.
==Overview==
The Monte Carlo Method encompasses any technique of statistical sampling employed to approximate solutions to quantitative problems [http://www.global-derivatives.com/index.php?option=com_content&task=view&id=21]. Essentially, the Monte Carlo method solves a problem by directly simulating the underlying physical process and then calculating the (average) result of the process [http://www.puc-rio.br/marco.ind/monte-carlo.html]. This very general approach is valid in areas such as [[physics]], [[chemistry]], [[computer science]] etc.
In [[finance]], the Monte Carlo method is used to simulate the various sources of uncertainty that affect the value of the [[financial instrument|instrument]], [[portfolio (finance)|portfolio]] or [[investment]] in question, and to then calculate a representative value given these possible values of the underlying inputs [http://www.puc-rio.br/marco.ind/monte-carlo.html].
Some examples:
*In [[Corporate Finance]] [http://www.investmentscience.com/Content/howtoArticles/simulation.pdf], [[project finance]] [http://papers.ssrn.com/sol3/papers.cfm?abstract_id=265905] and [[real options analysis]] [http://www.puc-rio.br/marco.ind/monte-carlo.html], Monte Carlo Methods are used by [[financial analyst]]s who wish to construct "[[stochastic]]" or [[probabilistic]] financial models as opposed to the traditional static and [[Deterministic system (mathematics)|deterministic]] models. Here, in order to analyze the characteristics of a project’s [[net present value]] (NPV), the cash flow components that are (heavily [http://www.investmentscience.com/Content/howtoArticles/simulation.pdf]) impacted by [[uncertainty]] are modeled, mathematically reflecting their "random characteristics". Then, as above, the average NPV of the potential investment - as well as its [[volatility]] and other sensitivities - is observed from the resultant [[histogram]] of project NPV; this histogram is effectively the project's [[probability distribution]]. (Typically, analysts use an [[add-in]] such as [[Crystal Ball Software|Crystal Ball ]] to run Monte Carlo simulations in a [[spreadsheet]] environment.) See [[Corporate_finance#Quantifying_uncertainty|further]] under Corporate finance.
*In valuing an [[option (finance)|option on equity]], the simulation generates several thousand possible (but random) price paths for the underlying share, with the associated [[Exercise (options)|exercise]] [[Option_time_value#Intrinsic_value|value]] (i.e. "payoff") of the option for each path. These payoffs are then averaged and [[present value|discounted]] to today, and this result is the value of the option today [http://www.bus.lsu.edu/academics/finance/faculty/dchance/Instructional/TN96-03.pdf]; see [[Monte Carlo option model]] for discussion as to further - and more [[complexity|complex]] - option modelling.
*To value [[bond (finance)|bonds]] - and [[bond option]]s [http://www.math.nyu.edu/research/carrp/papers/pdf/hjm.pdf] - the underlying source of uncertainty which is simulated is the (annualized) [[interest rate]] at which an entity can borrow money for a short period of time (i.e. the [[Short-rate_model#The_short_rate|short rate]]). For each possible evolution of the [[interest rate]] we observe a different resultant bond price. These bond prices are then averaged, or are then the input for the valuation of the bond option. A similar approach is used in valuing [[swap (finance)|swaps]] and [[swaption]]s [http://www.fea.com/resources/pdf/swaptions.pdf].
*Monte Carlo Methods are used for [[Portfolio (finance)|portfolio]] evaluation [http://www.columbia.edu/~mh2078/MCS04/MCS_framework_FEegs.pdf]. Here, for each simulation, the ([[correlation|correlated]]) behaviour of the factors impacting the component instruments is simulated over time, the values of the instruments are calculated, and the portfolio value is then observed. The various portfolio values are then combined in a [[histogram]] (i.e. the portfolio's [[probability distribution]]), and the [[Descriptive statistics|statistical characteristics]] of the portfolio are then observed. A similar approach is used in calculating [[Value_at_risk#Common_VaR_calculation_models|value at risk]] [http://www.riskglossary.com/link/monte_carlo_transformation.htm][http://www.investopedia.com/articles/04/092904.asp].
* Monte Carlo Methods are used for [[personal financial planning]] [http://www.businessweek.com/2001/01_04/b3716156.htm]. For instance, by simulating the overall market, the chances of a [[401(k)]] allowing for [[retirement]] on a target income can be calculated. As appropriate, the worker in question can then take greater risks with the retirement portfolio or start saving more money.
Although Monte Carlo methods provide flexibility, and can handle multiple sources of uncertainty, the use of these techniques is nevertheless not always appropriate. In general, simulation methods are preferred to other valuation techniques only when there are several state variables (i.e. several sources of uncertainty) [http://www.puc-rio.br/marco.ind/monte-carlo.html]. These techniques are also of limited use in valuing American style derivatives. See below.
==Applicability==
===Level of complexity===
Many problems in [[mathematical finance]] entail the computation of a particular [[integral]] (for instance the problem of finding the arbitrage-free value of a particular [[derivative (finance)|derivative]]). In many cases these integrals can be valued [[analytic solution| analytically]], and in still more cases they can be valued using [[numerical integration]], or computed using a [[partial differential equation]] (PDE). However when the number of dimensions (or degrees of freedom) in the problem is large, PDEs and numerical integrals become intractable, and in these cases '''[[Monte Carlo method]]s''' often give better results.
For more than three or four state variables, formulae such as [[Black Scholes]] (i.e. [[analytic solution]]s) do not exist, while other standard approaches (i.e. [[numerical method]]s) such as the [[Binomial options pricing model]] and [[Finite difference method]]s face several difficulties and are not practical. In these cases, Monte Carlo methods converge to the solution more quickly than numerical methods, require less memory and are easier to program. For simpler situations, however, simulation is not the better solution because it is very time-consuming and computationally intensive.
=== American Options ===
Monte-Carlo methods are harder to use with [[Option_style|American option]]s. This is because, in contrast to a [[partial differential equation]], the Monte Carlo method really only estimates the option value assuming a given starting point and time.
However, for early exercise, we would also need to know the option value at the intermediate times between the simulation start time and the option expiry time. In the [[Black-Scholes]] PDE approach these prices are easily obtained, because the simulation runs backwards from the expiry date. In Monte-Carlo this information is harder to obtain, but it can be done for example using the [[Least_squares|Least Squares]] algorithm of Carriere (see link to original paper) which was made popular a few years later by Longstaff and Schwartz (see link to original paper).
== Monte Carlo methods ==
===Mathematically===
The [[fundamental theorem of arbitrage-free pricing]] states that the value of a derivative is equal to the discounted expected value of the derivative payoff where the [[expected value|expectation]] is taken under the [[risk-neutral measure]] <sup>[1]</sup>. An expectation is, in the language of [[pure mathematics]], simply an integral with respect to the measure. Monte Carlo methods are ideally suited to evaluating difficult integrals (see also [[Monte Carlo method]]).
Thus if we suppose that our risk-neutral probability space is <math>\mathbb{P}</math> and that we have a derivative H that depends on a set of [[underlying instruments]] <math>S_1,...,S_n</math>. Then given a sample <math>\omega</math> from the probability space the value of the derivative is <math>H( S_1(\omega),S_2(\omega),..., S_n(\omega) =: H(\omega) </math>. Today's value of the derivative is found by taking the expectation over all possible samples and discounting at the risk-free rate. I.e. the derivative has value:
:<math> H_0 = {df}_T \int_{\omega} H(\omega) d\mathbb{P}(\omega) </math>
where <math>{df}_T</math> is the [[discount factor]] corresponding to the risk-free rate to the final maturity date T years into the future.
Now suppose the integral is hard to compute. We can approximate the integral by generating sample paths and then taking an average. Suppose we generate N samples then
:<math> H_0 \approx {df}_T \frac{1}{N} \sum_{\omega\in SampleSet} H(\omega)</math>
which is much easier to compute.
=== Sample paths for standard models ===
In finance underlying random variables (such as an underlying stock price) are usually assumed to follow a path that is a function of a [[Brownian motion]] <sup>2</sup>. For example in the standard [[Black-Scholes model]], the stock price evolves as
:<math> dS = \mu S dt + \sigma S dW_t </math>.
To sample a path following this distribution from time 0 to T, we chop the time interval into M units of length <math>\delta t</math>, and approximate the Brownian motion over the interval <math>dt</math> by a single normal variable of mean 0 and variance <math>\delta t</math>. This leads to a sample path of
:<math> S( k\delta t) = S(0) \exp( \sum_{i=1}^{k} [(\mu - \frac{\sigma^2}{2})\delta t + \sigma\varepsilon_i\sqrt{\delta t}] )</math>
for each k between 1 and M. Here each <math>\varepsilon_i</math> is a draw from a standard normal distribution.
Let us suppose that a derivative H pays the average value of S between 0 and T then a sample path <math>\omega</math> corresponds to a set <math>\{\varepsilon_1,...,\varepsilon_M\}</math> and
:<math> H(\omega) = \frac1{M+1} \sum_{k=0}^{M} S( k \delta t)</math>.
We obtain the Monte-Carlo value of this derivative by generating N lots of M normal variables, creating N sample paths and so N values of H, and then taking the average.
Commonly the derivative will depend on two or more (possibly correlated) underlyings. The method here can be extended to generate sample paths of several variables, where the normal variables building up the sample paths are appropriately correlated.
It follows from the [[Central Limit Theorem]] that quadrupling the number of sample paths approximately halves the error in the simulated price (i.e. the error has order <math>\sqrt{N}</math> convergence).
In practice Monte Carlo methods are used for European-style derivatives involving at least three variables (more direct methods involving numerical integration can usually be used for those problems with only one or two underlyings. ''See'' [[Monte Carlo option model]].
=== Greeks ===
Estimates for the "[[The Greeks|Greeks]]" of an option i.e. the (mathematical) derivatives of option value with respect to input parameters, can be obtained by numerical differentiation. This can be a time-consuming process (an entire Monte Carlo run must be performed for each "bump" or small change in input parameters). Further, taking numerical derivatives tends to emphasize the error (or noise) in the Monte Carlo value - making it necessary to simulate with a large number of sample paths. Practitioners regard these points as a key problem with using Monte Carlo methods.
=== Variance reduction ===
Square root convergence is slow, and so using the naive approach described above requires using a very large number of sample paths (1 million, say, for a typical problem) in order to obtain an accurate result. This state of affairs can be mitigated by variance reduction techniques. A simple technique is, for every sample path obtained, to take its antithetic path - that is given a path <math>\{\epsilon_1,...,\epsilon_M\}</math> to also take <math>\{-\epsilon_1,...,-\epsilon_M\}</math>. Not only does this reduce the number of normal samples to be taken to generate N paths, but also reduces the variance of the sample paths, improving the accuracy.
Secondly it is also natural to use a [[control variate]]. Let us suppose that we wish to obtain the Monte Carlo value of a derivative H, but know the value analytically of a similar derivative I. Then H* = (Value of H according to Monte Carlo) + (Value of I analytically) - (Value of I according to same Monte Carlo paths) is a better estimate.
=== Quasi-random (low-discrepancy) methods ===
Instead of generating sample paths randomly, it is possible to systematically (and in fact completely deterministically, despite the "quasi-random" in the name) select points in a probability spaces so as to optimally "fill up" the space. The selection of points is a [[low-discrepancy sequence]] such as a [[Sobol sequence]]. Taking averages of derivative payoffs at points in a low-discrepancy sequence is often more efficient than taking averages of payoffs at random points.
== Notes ==
# Frequently it is more practical to take expectations under different measures, however these are still fundamentally integrals, and so the same approach can be applied.
# More general processes, such as [[Levy process]]es, are also sometimes used. These may also be simulated.
== References ==
* {{cite book | title = Options, futures and other derivatives (4th ed.) | author = John C. Hull | year = 2000 | publisher = Prentice Hall | id = ISBN 0-13-015822-4 }}
* {{cite book | title = Monte Carlo methods in finance | author = Peter Jäckel | year = 2002 | publisher = John Wiley and Sons | id = ISBN 0-471-49741-X }}
* {{cite book | title = Monte Carlo methods in financial engineering | author = Paul Glasserman | year = 2003 | publisher = Springer-Verlag | id = ISBN 0-387-00451-3 }}
==External links==
'''General'''
*[http://www.global-derivatives.com/maths/k-o.php MonteCarlo Simulation in Finance], global-derivatives.com
*[http://www.riskglossary.com/link/monte_carlo_method.htm Monte Carlo Method], riskglossary.com
*[http://www.columbia.edu/~mh2078/MCS04/MCS_framework_FEegs.pdf The Monte Carlo Framework, Examples from Finance], Martin Haugh, [[Columbia University]]
*[http://homepages.nyu.edu/~sl1544/articles.html Monte Carlo techniques applied to finance], Simon Leger
'''Derivative valuation'''
*[http://www.bus.lsu.edu/academics/finance/faculty/dchance/Instructional/TN96-03.pdf Monte Carlo Simulation], Prof. Don M. Chance, [[Louisiana State University]]
*[http://finance-old.bi.no/~bernt/gcc_prog/recipes/recipes/node12.html Option pricing by simulation], Bernt Arne Ødegaard, [[Norwegian School of Management]]
*[http://www.smartquant.com/references/MonteCarlo/mc6.pdf Applications of Monte Carlo Methods in Finance: Option Pricing], Y. Lai and J. Spanier, [[Claremont Graduate University]]
* [http://spears.okstate.edu/home/tlk/legacy/fin5883/notes6_s05.doc Monte Carlo Derivative valuation], [http://spears.okstate.edu/home/tlk/legacy/fin5883/notes7_s05.doc contd.], Timothy L. Krehbiel, [[Oklahoma State University–Stillwater]]
*[http://www.quantnotes.com/publications/papers/Fink-montecarlo.pdf Pricing complex options using a simple Monte Carlo Simulation], Peter Fink - reprint at quantnotes.com
*[http://ideas.repec.org/a/eee/insuma/v19y1996i1p19-30.html Least-Squares Monte-Carlo for American options by Carriere, 1996], ideas.repec.org
*[http://repositories.cdlib.org/anderson/fin/1-01/ Least-Squares Monte-Carlo for American options by Longstaff and Schwartz, 2001], repositories.cdlib.org
*[http://www.crystalball.com/articles/download/charnes-options.pdf Using simulation for option pricing], John Charnes
'''Corporate Finance'''
*[http://www.puc-rio.br/marco.ind/monte-carlo.html Real Options with Monte Carlo Simulation], Marco Dias, [[Pontifícia Universidade Católica do Rio de Janeiro]]
*[http://www.investmentscience.com/Content/howtoArticles/simulation.pdf Using simulation to calculate the NPV of a project], investmentscience.com
*[http://pages.stern.nyu.edu/~adamodar/pdfiles/papers/probabilistic.pdf Simulations, Decision Trees and Scenario Analysis in Valuation] Prof. [[Aswath Damodaran]], [[Stern School of Business]]
*[http://www.ulb.ac.be/cours/solvay/farber/Teaching%20Notes/Monte%20Carlo.pdf The Monte Carlo method in Excel] Prof. André Farber [[Solvay Business School]]
*[http://www.vertex42.com/ExcelArticles/mc/SalesForecast.html Sales Forecasting], vertex42.com
'''Value at Risk and portfolio analysis'''
*[http://www.riskglossary.com/link/monte_carlo_transformation.htm Monte Carlo Value-at-Risk], riskglossary.com
'''Personal finance'''
*[http://www.businessweek.com/2001/01_04/b3716156.htm A Better Way to Size Up Your Nest Egg], Businessweek Online: January 22, 2001
*[http://www.flexibleretirementplanner.com Online Monte Carlo retirement planner with source code], Jim Richmond, 2006
[[Category:Monte Carlo methods]]
[[Category:Mathematical finance]]
[[vi:Monte Carlo cho tài chính]]