Skip to content
Module 05 of 1060 min readAdvanced

Stochastic differential equations and GBM

SDEs as the continuous-time analogue of difference equations. Geometric Brownian motion, Ornstein-Uhlenbeck, mean-reverting processes.

50%

Listen along

Read “Stochastic differential equations and GBM” aloud

Plays in your browser using on-device text-to-speech — nothing leaves the page.

Stochastic differential equations describe how processes evolve under combined deterministic drift and Brownian noise. They are the continuous-time analogue of difference equations — and the standard modelling language for nearly every continuous-time finance object: stock prices, interest rates, volatilities, currencies.

General Itô SDE

math
dX(t) = μ(t, X) dt + σ(t, X) dW(t)

μ is the drift coefficient (may depend on time and state); σ is the diffusion coefficient (likewise). Standard solvability conditions (Lipschitz continuity, linear growth) guarantee existence and uniqueness of a strong solution given an initial condition.

Geometric Brownian motion

math
dS = μ S dt + σ S dW
S(t) = S(0) exp((μ - σ²/2) t + σ W(t))

The canonical model for stock prices. Constant percentage drift μ; constant percentage volatility σ; positivity preserved (S > 0 always). Black-Scholes' workhorse. Empirical caveats: real volatility is stochastic and clustered (motivating Heston and SABR); real drift is not constant (motivating regime models).

Ornstein-Uhlenbeck process

math
dX = θ(μ - X) dt + σ dW

Mean-reverting Gaussian process. X drifts toward μ at speed θ; the noise dW perturbs it. Used for interest rates (Vasicek), spreads, mean-reverting strategy P&L, FX deviations from PPP. Closed-form solution:

math
X(t) = μ + (X(0) - μ) e^{-θt} + σ ∫_0^t e^{-θ(t-s)} dW(s)
E[X(t)] = μ + (X(0) - μ) e^{-θt}
Var[X(t)] = (σ²/(2θ)) (1 - e^{-2θt})
Var[X(∞)] = σ²/(2θ) (stationary)

CIR / Square-root process

math
dX = θ(μ - X) dt + σ √X dW

Cox-Ingersoll-Ross (1985). Mean-reverting but with state-dependent volatility — diffusion grows as √X, so X never goes negative (provided Feller condition 2θμ ≥ σ² holds). Used for short-rate models, variance processes (Heston), and any positive mean-reverting state variable.

Heston stochastic volatility

math
dS = μ S dt + √v · S dW_1
dv = κ(θ - v) dt + σ_v √v dW_2
dW_1 · dW_2 = ρ dt

Two-factor model: price and variance. Variance is CIR; price follows lognormal with stochastic vol. Semi-closed-form option pricing via the characteristic function (Heston 1993). The 'Heston smile' captures volatility skew empirically observed in equity markets.

Jump-diffusion (Merton 1976)

math
dS / S = μ dt + σ dW + (J - 1) dN
N: Poisson process with intensity λ
J: jump size, typically lognormal

Adds discrete jumps to GBM. Better captures heavy-tailed daily returns and the volatility smile at short maturities. Closed-form European option price (sum of Black-Scholes prices weighted by Poisson probabilities).

Numerical SDE solution

  • Euler-Maruyama: X(t + Δt) ≈ X(t) + μ(t, X) Δt + σ(t, X) √Δt · Z. Order-1/2 strong convergence; easy to implement.
  • Milstein: adds (1/2)σ ∂σ/∂x ((ΔW)² - Δt). Order-1 strong convergence; better for state-dependent vol.
  • Predictor-corrector and Runge-Kutta variants: useful for stiff or near-singular SDEs.

Log-Euler for GBM

For GBM, simulating log S with constant drift and vol gives exact-in-distribution paths: log S(t + Δt) = log S(t) + (μ - σ²/2) Δt + σ √Δt Z. No discretisation error. Always use this for vanilla GBM Monte Carlo; Euler on S directly is needlessly noisy.

Choosing a model

GBM is the baseline; everyone starts there. Heston / SABR for vol-surface fitting. CIR or Vasicek for short rates. Jump-diffusion for short-dated options on liquid stocks. Models with multiple regimes or rough paths for advanced research. The choice depends on what you're trying to price and the data you have.

Exercise

An OU process has θ = 2, μ = 5, σ = 1, X(0) = 10. (1) Compute E[X(1)] and Var[X(1)]. (2) What is the stationary variance? (3) Compute the half-life of a deviation.

Loading progress…
LeadAfrikPublic Economics Hub