## Simulating Correlated Stochastic Differential Equations (or How to Simulate Heston Stochastic Volatility Model)

I notice that students new to computational finance often make mistakes in simulating correlated Brownian motion paths. Here is a ready reckoner.

Let’s take the example of generating paths for asset prices using the Heston stochastic volatility model:

where is the instantaneous variance of asset returns, and the increment in Brownian motions and are correlated with correlation coefficient , i.e. .

The simplest way to generate paths and is to use the Euler discretization (there are better methods available of course, for Heston in particular) as:

where and are standard Gaussian random variables with correlation .

To generate correlated standard Gaussian random variables, i.e. and , the most popular method is to use what is called the Cholesky decomposition. Given two uncorrelated standard Gaussian random variables and (easily done both in Excel and in R), Cholesky decomposition can be used to generate and as:

If, God forbid, your job requires simulating three correlated stochastic differential equations, say when you are using a Double Heston or a Double Lognormal model, then you would need to simulate three jointly correlated Gaussian random variables.

In that case if the correlation structure is , and , then given three uncorrelated Gaussian random variables , and , one could use Cholesky decomposition to generate generate , and as:

where

and .

## Leave a Reply