Monte Carlo methods

Monte Carlo methods simulate the random behaviour underlying the financial models. So, in a sense they get right to the heart of the problem. Always remember, though, that when pricing you must simulate the risk-neutral random walk(s),

the value of a contract is then the expected present value of all cashflows. When implementing a Monte Carlo method look out for the following:

• Number of dimensions

• Functional form of coefficients

• Boundary/final conditions

• Decision features

• Linear or non-linear.

again!

Number of dimensions

For each random factor you will have to simulate a time series. It will obviously take longer to do this, but the time will only be proportional to number of factors, which isn't so bad. This makes Monte Carlo methods ideal for higher dimensions when the finite-difference methods start to crawl.

Functional form of coefficients

As with the finite-difference methods it doesn't matter too much what the drift and volatility functions are in practice, since you won t be looking for closed-form solutions.

Boundary/final conditions

These play a very similar role as in finite differences. The final condition is the payoff function and the boundary conditions are where we implement trigger levels etc.

Decision features

When you have a contract with embedded decisions the Monte Carlo method becomes cumbersome. This is easily the main drawback for simulation methods. When we use the Monte Carlo method we only find the option value at today s stock price and time. But to correctly price an American option, say, we need to know what the option value would be at every point in stock price-time space. We don't typically find this as part of the Monte Carlo solution.

Linear or non-linear

Simulation methods also cope poorly with non-linear models. Some models just don't have a useful interpretation in terms of probabilities and expectations so you wouldn't expect them to be amenable to solution by methods based on random simulations.

Efficiency

If we want an accuracy of e and we have d underlyings then the calculation time is

It will take longer to price the greeks, but, on the positive side, we can price many options at the same time for almost no extra time cost.

Programme of study

Here is a programme of study for the Monte Carlo path-simulation methods.

• European calls, puts and binaries on a single equity:

Simulate a single stock path, the payoff for an option, or even a portfolio of options, calculate the expected payoff and present value to price the contract.

• Path-dependent option on a single equity: Price a barrier, Asian, lookback, etc.

• Options on many stocks: Price a multi-asset contract by simulating correlated random walks. You'll see how time taken varies with number of dimensions.

• Interest rate derivatives, spot rate model: This is not that much harder than equities. Just remember to present value along each realized path of rates before taking the expectation across all paths.

• HJM model: Slightly more ambitious is the HJM interest rate model. Use a single factor, then two factors, etc.

• BGM model: A discrete version of HJM.

Numerical integration

Occasionally one can write down the solution of an option-pricing problem in the form of a multiple integral. This is because you can interpret the option value as an expectation of a payoff, and an expectation of the payoff is mathematically just the integral of the product of that payoff function and a probability density function. This is only possible in special cases. The option has to be European, the underlying stochastic differential equation must be explicitly integrable (so the lognormal random walk is perfect for this) and the payoff shouldn't usually be path dependent. So if this is possible then pricing is easy... you have a formula. The only difficulty comes in turning this formula into a number. And that s the subject of numerical integration or quadrature. Look out for the following.

• Can you write down the value of an option as an integral?

That s it in a nutshell.

Efficiency

There are several numerical quadrature methods. But the two most common are based on random number generation again. One uses normally distributed numbers and the other uses what are called low-discrepancy sequences. The low-discrepancy numbers are clever in that they appear superficially to be random but don't have the inevitable clustering that truly random numbers have.

Using the simple normal numbers, if you want an accuracy of e and you are pricing M options the time taken will be

If you use the low-discrepancy numbers the time taken will be

You can see that this method is very fast, unfortunately it isn't often applicable.

Programme of study

Here is a programme of study for the numerical quadrature methods.

• European calls, puts and binaries on a single equity using normal numbers: Very simple. You will be evaluating a single integral.

• European calls, puts and binaries on several underlying lognormal equities, using normal numbers: Verysimple again. You will be evaluating a multiple integral.

• Arbitrary European, non-path-dependent payoff, on several underlying lognormal equities, using normal numbers: You'll only have to change a single function.

• Arbitrary European, non-path-dependent payoff, on several underlying lognormal equities, using low-discrepancy numbers: Just change the source of the random numbers in the previous code.

Summary

Table 2.3: Pros and cons of different methods.

 Subject FD MC Quad. Low dimensions Good Inefficient Good High dimensions Slow Excellent Good Path dependent Depends Excellent Not good Greeks Excellent Not good Excellent Portfolio Inefficient Very good Very good Decisions Excellent Poor Very poor Non-linear Excellent Poor Very poor