A
AcadiFi
FI
FinModelingPro2026-04-02
frmPart IQuantitative Analysis

How does Cholesky decomposition generate correlated random variables for Monte Carlo simulation?

I understand that Monte Carlo simulation generates independent random numbers, but real assets are correlated. My FRM textbook mentions Cholesky decomposition as the standard method for introducing correlation. Can someone explain the mechanics with a two-asset example?

121 upvotes
AcadiFi TeamVerified Expert
AcadiFi Certified Professional

Cholesky decomposition is the workhorse method for converting independent random variables into correlated ones. It works by decomposing a correlation (or covariance) matrix into a lower triangular matrix.

The Key Idea:

If C is a correlation matrix, Cholesky finds a lower triangular matrix L such that:

C = L x L^T

Then if Z is a vector of independent standard normals, the product L x Z gives correlated normals with the desired correlation structure.

Two-Asset Example:

Suppose Ashford Risk Analytics wants to simulate correlated returns for two assets with correlation rho = 0.6.

Correlation matrix:

C = | 1.0 0.6 |

Cholesky decomposition:

L = | 1.0 0 |

(Where 0.8 = sqrt(1 - 0.6^2) = sqrt(0.64))

Generating Correlated Returns:

  1. Draw two independent standard normals: Z1 = 0.75, Z2 = -1.20
  2. Apply Cholesky:
  • Correlated variable 1: X1 = 1.0 x Z1 + 0 x Z2 = 0.75
  • Correlated variable 2: X2 = 0.6 x Z1 + 0.8 x Z2 = 0.6(0.75) + 0.8(-1.20) = 0.45 - 0.96 = -0.51
  1. Convert to returns: R_i = mu_i + sigma_i x X_i

The beautiful thing: X1 and X2 will have correlation exactly equal to 0.6 across many simulations.

Loading diagram...

Three or More Assets:

For n assets, the Cholesky matrix is n x n lower triangular. Each row builds on previous variables:

  • Asset 1: uses only Z1
  • Asset 2: uses Z1 and Z2 (to be correlated with Asset 1)
  • Asset 3: uses Z1, Z2, and Z3 (to be correlated with both)

Important Requirements:

  • The correlation matrix must be positive semi-definite (all eigenvalues >= 0)
  • If it's not (e.g., from mixing different estimation windows), Cholesky fails and you need to fix the matrix first
  • For very large portfolios (1000+ assets), computational efficiency matters — Cholesky is O(n^3)

FRM Exam Tips:

  • Know the 2x2 case cold: L[2,1] = rho, L[2,2] = sqrt(1-rho^2)
  • Understand that Cholesky preserves the Normal distribution — if inputs are Normal, outputs are multivariate Normal
  • For non-normal returns, Cholesky + copula methods are needed

Practice simulation problems in our FRM Part I question bank.

🛡️

Master Part I with our FRM Course

64 lessons · 120+ hours· Expert instruction

#cholesky-decomposition#monte-carlo#correlated-simulation#correlation-matrix