Monte Carlo Simulation

What Is a Monte Carlo Simulation?

A Monte Carlo simulation is used to model the probability of different outcomes in a process that cannot easily be predicted due to the intervention of random variables. It is a technique used to understand the impact of risk and uncertainty.

A Monte Carlo simulation is used to tackle a range of problems in many fields including investing, business, physics, and engineering.

It is also referred to as a multiple probability simulation.

Key Takeaways

  • A Monte Carlo simulation is a model used to predict the probability of a variety of outcomes when the potential for random variables is present.
  • Monte Carlo simulations help to explain the impact of risk and uncertainty in prediction and forecasting models.
  • A Monte Carlo simulation requires assigning multiple values to an uncertain variable to achieve multiple results and then averaging the results to obtain an estimate.
  • Monte Carlo simulations assume perfectly efficient markets.
1:28

Monte Carlo Simulation

Understanding the Monte Carlo Simulation

When faced with significant uncertainty in making a forecast or estimate, some methods replace the uncertain variable with a single average number. The Monte Carlo Simulation instead uses multiple values and then averages the results.

Monte Carlo simulations have a vast array of applications in fields that are plagued by random variables, notably business and investing. They are used to estimate the probability of cost overruns in large projects and the likelihood that an asset price will move in a certain way.

Telecoms use them to assess network performance in various scenarios, which helps them to optimize their networks. Financial analysts use them to assess the risk that an entity will default, and to analyze derivatives such as options. Insurers and oil well drillers also use them to measure risk.

Monte Carlo simulations have many applications outside of business and finance, such as in meteorology, astronomy, and particle physics.

Monte Carlo Simulation History

The Monte Carlo simulation was named after the gambling destination in Monaco because chance and random outcomes are central to this modeling technique, as they are to games like roulette, dice, and slot machines.

The technique was initially developed by Stanislaw Ulam, a mathematician who worked on the Manhattan Project, the secret effort to create the first atomic weapon. He shared his idea with John Von Neumann, a colleague at the Manhattan Project, and the two collaborated to refine the Monte Carlo simulation.

How Does the Monte Carlo Simulation Method Work?

The Monte Carlo method acknowledges an issue for any simulation technique: the probability of varying outcomes cannot be firmly pinpointed because of random variable interference. Therefore, a Monte Carlo simulation focuses on constantly repeating random samples.

A Monte Carlo simulation takes the variable that has uncertainty and assigns it a random value. The model is then run and a result is provided. This process is repeated again and again while assigning many different values to the variable in question. Once the simulation is complete, the results are averaged to arrive at an estimate.

Monte Carlo Simulation Steps

Microsoft Excel or a similar program can be used to create a Monte Carlo simulation that estimates the probable price movements of stocks or other assets.

There are two components to an asset's price movement: drift, which is its constant directional movement, and a random input, which represents market volatility.

By analyzing historical price data, you can determine the drift, standard deviation, variance, and average price movement of a security. These are the building blocks of a Monte Carlo simulation.

The 4 Steps in a Monte Carlo Simulation

Step 1: To project one possible price trajectory, use the historical price data of the asset to generate a series of periodic daily returns using the natural logarithm (note that this equation differs from the usual percentage change formula):

Periodic Daily Return = l n ( Day’s Price Previous Day’s Price ) \begin{aligned} &\text{Periodic Daily Return} = ln \left ( \frac{ \text{Day's Price} }{ \text{Previous Day's Price} } \right ) \\ \end{aligned} Periodic Daily Return=ln(Previous Day’s PriceDay’s Price)

Step 2: Next use the AVERAGE, STDEV.P, and VAR.P functions on the entire resulting series to obtain the average daily return, standard deviation, and variance inputs, respectively. The drift is equal to:

Drift = Average Daily Return Variance 2 where: Average Daily Return = Produced from Excel’s AVERAGE function from periodic daily returns series Variance = Produced from Excel’s VAR.P function from periodic daily returns series \begin{aligned} &\text{Drift} = \text{Average Daily Return} - \frac{ \text{Variance} }{ 2 } \\ &\textbf{where:} \\ &\text{Average Daily Return} = \text{Produced from Excel's} \\ &\text{AVERAGE function from periodic daily returns series} \\ &\text{Variance} = \text{Produced from Excel's} \\ &\text{VAR.P function from periodic daily returns series} \\ \end{aligned} Drift=Average Daily Return2Variancewhere:Average Daily Return=Produced from Excel’sAVERAGE function from periodic daily returns seriesVariance=Produced from Excel’sVAR.P function from periodic daily returns series

Alternatively, drift can be set to 0; this choice reflects a certain theoretical orientation, but the difference will not be huge, at least for shorter time frames.

Step 3: Next, obtain a random input:

Random Value = σ × NORMSINV(RAND()) where: σ = Standard deviation, produced from Excel’s STDEV.P function from periodic daily returns series NORMSINV and RAND = Excel functions \begin{aligned} &\text{Random Value} = \sigma \times \text{NORMSINV(RAND())} \\ &\textbf{where:} \\ &\sigma = \text{Standard deviation, produced from Excel's} \\ &\text{STDEV.P function from periodic daily returns series} \\ &\text{NORMSINV and RAND} = \text{Excel functions} \\ \end{aligned} Random Value=σ×NORMSINV(RAND())where:σ=Standard deviation, produced from Excel’sSTDEV.P function from periodic daily returns seriesNORMSINV and RAND=Excel functions

The equation for the following day's price is:

Next Day’s Price = Today’s Price × e ( Drift + Random Value ) \begin{aligned} &\text{Next Day's Price} = \text{Today's Price} \times e^{ ( \text{Drift} + \text{Random Value} ) }\\ \end{aligned} Next Day’s Price=Today’s Price×e(Drift+Random Value)


Step 4: To take e to a given power in Excel, use the EXP function: EXP(x). Repeat this calculation the desired number of times. (Each repetition represents one day.) The result is a simulation of the asset's future price movement.

By generating an arbitrary number of simulations, you can assess the probability that a security's price will follow a given trajectory.

Monte Carlo Simulation Results Explained

The frequencies of different outcomes generated by this simulation will form a normal distribution, that is, a bell curve. The most likely return is in the middle of the curve, meaning there is an equal chance that the actual return will be higher or lower.

The probability that the actual return will be within one standard deviation of the most probable ("expected") rate is 68%. The probability that it will be within two standard deviations is 95%, and that it will be within three standard deviations 99.7%. 

Still, there is no guarantee that the most expected outcome will occur, or that actual movements will not exceed the wildest projections.

Crucially, a Monte Carlo simulation ignores everything that is not built into the price movement such as macro trends, a company's leadership, market hype, and cyclical factors).

In other words, it assumes a perfectly efficient market.

Advantages and Disadvantages of a Monte Carlo Simulation

The Monte Carlo method is used to help an investor estimate the likelihood of a gain or a loss on a certain investment. Other methods have the same aim.

The Monte Carlo simulation was created to overcome a perceived disadvantage of other methods of estimating a probable outcome.

No simulation can pinpoint an inevitable outcome. The Monte Carlo method aims at a sounder estimate of the probability that an outcome will differ from a projection.

The difference is that the Monte Carlo method tests a number of random variables and then averages them, rather than starting out with an average.

Like any financial simulation, the Monte Carlo method uses historical price data as the basis for a projection of future price data. It then disrupts the pattern by introducing random variables, represented by numbers. Finally, it averages those numbers to arrive at an estimate of the risk that the pattern will be disrupted in real life.

How Is the Monte Carlo Simulation Used in Finance Applications?

The Monte Carlo simulation is used to estimate the probability of a certain income. As such, it is widely used by investors and financial analysts to evaluate the probable success of investments they're considering. Some common uses include:

  • Pricing stock options. The potential price movements of the underlying asset are tracked given every possible variable. The results are averaged and then discounted to the asset's current price. This is intended to indicate the probable payoff of the options.
  • Portfolio valuation. A number of alternative portfolios can be tested using the Monte Carlo simulation in order to arrive at a measure of their comparative risk.
  • Fixed income investments. The short rate is the random variable here. The simulation is used to calculate the probable impact of movements in the short rate on fixed rate investments.


What Professions Use the Monte Carlo Simulation?

It may be best known for its financial applications, but the Monte Carlo simulation is used in virtually every profession that must measure risks and prepare to meet them.

For example, a telecom may build its network to sustain all of its users all of the time. In order to do that, it must consider all of the possible variations in demand for the service. It must determine whether the system will stand the strain of peak hours and peak seasons.

A Monte Carlo simulation may help the telecom decide whether its service is likely to stand the strain of Super Bowl Sunday as well as an average Sunday in August.

What Factors Are Evaluated in a Monte Carlo Simulation?

A Monte Carlo simulation in investing is based on historical price data on the asset or assets being evaluated.

The building blocks of the simulation, derived from the historical data, are drift, standard deviation, variance, and average price movement.

Article Sources
Investopedia requires writers to use primary sources to support their work. These include white papers, government data, original reporting, and interviews with industry experts. We also reference original research from other reputable publishers where appropriate. You can learn more about the standards we follow in producing accurate, unbiased content in our editorial policy.
  1. Virginia Polytechnic Institute. "Monte Carlo Simulation."

  2. Corporate Finance Institute. "Monte Carlo Simulation"