Monte Carlo & the volatility smile.
When the closed form runs out - stochastic volatility, path dependence, multi-asset payoffs - pricing becomes simulation. Then everything hinges on two questions: how fast does your discretisation converge, and what does the model do to the implied-volatility surface? Both are answered live below.
Discretising the SDE
A diffusion is simulated on a grid. The Euler scheme is the obvious one:
The Milstein scheme adds the Itô correction from expanding along the path:
The payoff is theoretical orders of strong convergence - how fast the simulated path approaches the true one - of ½ for Euler and 1 for Milstein. The experiment below measures it: GBM paths simulated at six step sizes against the exact solution driven by the same Brownian increments, error on a log-log plot. The fitted slopes land on the theory within Monte Carlo noise.
Heston and the smile
Black-Scholes assumes constant volatility, so it prices every strike with the same implied vol - a flat line the market flatly refuses. The Heston model makes variance itself a mean-reverting diffusion, correlated with the spot:
with . The figure simulates Heston with a full-truncation Euler scheme (variance floored at zero inside the coefficients - the lab's fix for the scheme going negative), prices calls across strikes with antithetic paths, and then inverts Black-Scholes by bisection to express each price as an implied vol - the exact pipeline a vol desk runs in reverse.
What to try
Two parameters shape the smile. Vol-of-vol η controls its curvature: at variance barely moves and the smile collapses onto the flat Black-Scholes line at . Correlation ρ controls the skew: equity markets live around - spot down, vol up - which tilts the smile so low strikes (crash protection) carry the highest implied vol. Set and you get a symmetric smile; positive ρ tilts it the other way, the signature of some commodity markets.