Skip to content

Simulating the Heston Process

Fourier inversion prices European options under Heston in milliseconds, but exotic payoffs — barriers, cliquets, path-dependent structures — require Monte Carlo simulation of the full (St,vt)(S_t, v_t) path. Simulating the Heston variance process is non-trivial: the CIR dynamics dvt=κ(θ−vt) dt+ηvt dWtvdv_t = \kappa(\theta - v_t)\,dt + \eta\sqrt{v_t}\,dW_t^v have non-Lipschitz diffusion coefficient vt\sqrt{v_t}, which causes the naive Euler scheme to produce negative variance values even when the Feller condition is satisfied (because the discrete step can overshoot zero).
This note covers three schemes of increasing sophistication: the naive Euler (for context only), the full-truncation Euler (the standard practical fix), the Milstein scheme (one order of convergence higher), and the exact Broadie-Kaya scheme for the joint distribution of (vt,vT,∫tTvs ds)(v_t, v_T, \int_t^T v_s\,ds) when an exact sample is feasible.
Learning objectives. By the end of this note you should be able to:
  • explain why the naive Euler fails for CIR variance and what fix full-truncation applies;
  • implement the Milstein scheme for Heston and state its strong convergence order;
  • describe when the Broadie-Kaya exact scheme is worth the overhead;
  • price a barrier option under Heston Monte Carlo with a full-truncation Milstein scheme.

In this lesson

  1. 5.1 Why Euler fails for CIR
  2. 5.2 Milstein scheme
  3. 5.3 The exact Broadie-Kaya scheme

Before you start

The full lesson, with worked examples and exercise solutions, is for members.

Read the full lesson

New to SelfMadeQuant.com? See membership options or browse the Advanced Derivatives and Exotic Options syllabus.