Learn

Heston stochastic volatility

Let the volatility move, and a smile appears on its own.

Why one volatility is not enough

Black-Scholes needs one number for volatility, but the market quotes a different implied volatility at every strike and maturity: the smile and the term structure. Inside Black-Scholes that is a contradiction. The way out is to stop treating volatility as a constant and give it dynamics of its own.

The model

Heston (1993) makes the variance \(v_t\) a second random process, mean-reverting and correlated with the spot:

$$ dS_t = (r - q)\, S_t\, dt + \sqrt{v_t}\, S_t\, dW^{(1)}_t, \qquad dv_t = \kappa(\theta - v_t)\, dt + \sigma \sqrt{v_t}\, dW^{(2)}_t, \qquad dW^{(1)}_t\, dW^{(2)}_t = \rho\, dt $$
  • \(v_0\): today's variance, the square of today's volatility.
  • \(\theta\): the long-run variance the process is pulled towards.
  • \(\kappa\): how fast it is pulled. A half-life of \(\ln 2 / \kappa\) years.
  • \(\sigma\): the volatility of variance. Zero recovers Black-Scholes with volatility \(\sqrt{v_0}\) when \(v_0 = \theta\).
  • \(\rho\): the correlation between spot and variance shocks. Negative in equity markets: prices fall and volatility rises together.

The square root in the variance equation keeps \(v_t\) non-negative. If \(2\kappa\theta > \sigma^2\), the Feller condition, the variance never actually reaches zero.

Where the smile comes from

With \(\sigma > 0\) the distribution of the spot at expiry is no longer lognormal. Randomness in the variance fattens both tails, which lifts the wings of the smile. Correlation tilts it: with \(\rho \lt 0\), crashes come with high volatility, so the left tail is fatter than the right and low strikes carry higher implied volatility. The five parameters therefore shape a whole surface at once, which is what makes the model useful for calibration.

Pricing

There is no closed form like Black-Scholes, but there is a closed form for the characteristic function of \(\ln S_T\), and from it the price of a European call follows by one numerical integral for each of two probabilities:

$$ C = S e^{-qT} P_1 - K e^{-rT} P_2, \qquad P_j = \tfrac{1}{2} + \frac{1}{\pi} \int_0^{\infty} \operatorname{Re}\!\left[ \frac{e^{-i\phi \ln K} f_j(\phi)}{i\phi} \right] d\phi $$

\(P_2\) is the risk-neutral probability of finishing in the money, the counterpart of \(N(d_2)\), and \(P_1\) plays the role of \(N(d_1)\). The integrand involves a complex square root and logarithm, and the branch has to be chosen carefully or the integral jumps for long maturities; the calculator uses the formulation of Albrecher and colleagues that avoids this "Heston trap". Puts come from put-call parity, which holds exactly.

Simulation

The simulator discretises both equations with an Euler step, drawing two correlated normals per step. A naive step can push the variance negative; the calculator uses full truncation, replacing \(v\) by \(\max(v, 0)\) inside the drift and diffusion, which is simple and only slightly biased. Production code would use the quadratic-exponential scheme of Andersen, which is exact in distribution for the variance.

American exercise

There is no characteristic-function shortcut for American options, so the calculator prices them by least-squares Monte Carlo on the model's own paths. The continuation value is regressed on the spot, the variance and their product: an American put in a high-variance state is worth holding, because the variance will fall and so will the option's chance of a big payoff later. Compare the early-exercise premium with the Black-Scholes tree's at the same starting volatility to see what stochastic variance does to the exercise decision.

Calibration and limits

In practice the parameters are found by fitting the model's implied volatilities to the market's surface, a five-dimensional least-squares problem run thousands of times a day on a desk. Heston fits index smiles well for medium maturities but struggles with very short-dated skew, which is why extensions add jumps (Bates) or make the parameters time-dependent. It remains the reference model for stochastic volatility because it is rich enough to produce a realistic surface and cheap enough to price by integration rather than by simulation.

Try it. On the calculator, set \(\sigma\) close to zero and \(\sqrt{\theta}\) equal to \(\sqrt{v_0}\): the Heston price matches Black-Scholes and the smile is flat. Then raise \(\sigma\) and watch the wings lift, and make \(\rho\) negative and watch the smile tilt.
Open the Heston calculator
Check your understanding

4 questions. Pick an answer for each, then check. Nothing leaves your browser session.

1. In the Heston model, what happens to the variance over time?

2. A negative correlation ρ between spot and variance produces

3. The Feller condition 2κθ > σ² guarantees that

4. Heston is priced in the calculator by

Answer every question to check.
An unhandled error has occurred. Reload ๐Ÿ—™

Reconnecting…

Your connection to Derivatives Lab dropped, probably a Wi-Fi blip. Hold on while it reconnects. Your inputs are kept.

The connection could not be restored. The page will reload in a few seconds and your inputs will reset.