Heston Model Characteristic Function¶
The characteristic function (CF) is the Fourier transform of the probability density function. For the Heston stochastic volatility model, the characteristic function has a closed-form expression that makes it invaluable for option pricing via Fourier methods.
Learning Objectives
By the end of this section, you will be able to:
- Derive the Heston characteristic function
- Understand the role of the non-centrality parameter
- Use the CF for density recovery and option pricing
Heston Model Specification¶
The Heston (1993) model for asset price and volatility dynamics under the risk-neutral measure is:
where the two Brownian motions are correlated: \(d W_x^{\mathbb{Q}} dW_v^{\mathbb{Q}} = \rho dt\).
Characteristic Function Formula¶
The characteristic function of \(X_T = \log S(T)\) conditional on the initial state \((t, S, v)\) is:
where \(\tau = T - t\) is time to maturity, and the components are:
Key Structural Elements¶
Complex argument \(D\): The term \(D\) encodes the interaction between mean reversion rate \(\kappa\), volatility of volatility \(\gamma\), and correlation \(\rho\). The square root ensures the solution is well-defined for all complex arguments \(u\).
Ratio \(g\): The ratio \(g\) is crucial for stability in numerical computation and controls the asymptotic behavior as \(\tau \to \infty\).
Logarithmic term in \(A\): The log term arises from integrating the CIR-type variance process and captures the mean reversion dynamics.
Transform to Physical Measure¶
If we wish to transition from the risk-neutral measure \(\mathbb{Q}\) to the physical measure \(\mathbb{P}\), we adjust the mean reversion level and the drift:
Under Girsanov's theorem, the risk-neutral mean reversion level becomes:
This adjustment ensures consistency between physical and risk-neutral dynamics while preserving the Heston model structure.
Properties and Computational Notes¶
-
Affine structure: The exponent is linear in \(X\) and \(v\), making the Heston model an affine jump-diffusion (without jumps).
-
Numerical stability: When computing \(D\) for complex \(u\), care must be taken with the square root branch. Typically, the square root is chosen such that \(\text{Im}(D) > 0\).
-
Decay at infinity: As \(|u| \to \infty\), the CF decays sufficiently fast, allowing Fourier inversion via FFT.
-
Special case: When \(\rho = 0\), the stock and variance dynamics decouple, simplifying the derivation.
Summary¶
The Heston characteristic function provides a closed-form expression for the joint distribution of log-returns and variance. Its affine structure enables efficient option pricing through Fourier methods (FFT and COS methods) and is the foundation for understanding smile dynamics and variance-of-variance effects in modern derivatives markets.
Exercises¶
Exercise 1. Starting from the Heston PDE for the characteristic function, substitute the exponential-affine ansatz and collect terms independent of \(v\) (giving the \(C\)-equation) and terms proportional to \(v\) (giving the \(D\)-equation). Verify the resulting Riccati system.
Solution to Exercise 1
The Heston PDE for the characteristic function \(\varphi(u, \tau; x, v) = \mathbb{E}[e^{iux_T} \mid x_t = x, v_t = v]\) (with \(\tau = T - t\)) is:
Substitute the exponential-affine ansatz \(\varphi = \exp(C(\tau, u) + D(\tau, u)v + iux)\). The relevant partial derivatives are:
Substituting and dividing by \(\varphi \neq 0\):
Collecting terms independent of \(v\) (the \(C\)-equation):
Collecting terms proportional to \(v\) (the \(D\)-equation, the Riccati ODE):
with initial conditions \(C(0, u) = 0\), \(D(0, u) = 0\). This is verified because the matching of \(v^0\) and \(v^1\) coefficients is exact, and the ansatz is consistent with the PDE structure.
Exercise 2. For the special case \(\rho = 0\) and \(\sigma_v = 0\), show that the Heston characteristic function reduces to the Black-Scholes characteristic function \(\exp(iux + (iu(r-q) - \frac{1}{2}u^2 v_0)\tau)\).
Solution to Exercise 2
When \(\rho = 0\) and \(\sigma_v = 0\), the variance \(v_t = v_0\) is constant (no stochastic volatility). The Riccati coefficients become:
The \(D\)-equation reduces to \(D' = -\kappa D + \frac{1}{2}(iu - u^2)\) with \(D(0) = 0\). Since \(a = 0\), this is a linear ODE with solution:
As \(\kappa \to 0\) (no mean reversion), L'Hopital's rule gives \(D(\tau) \to \frac{1}{2}(iu - u^2)\tau\).
The \(C\)-equation gives \(C(\tau) = (r-q)iu\tau + \kappa\theta\int_0^\tau D(s)\,ds\). With \(\sigma_v = 0\), the variance is identically \(v_0\), so \(\kappa\theta = \kappa v_0\) (at stationarity). In the limit \(\kappa \to 0\):
and \(D(\tau)v_0 = \frac{1}{2}(iu - u^2)v_0\tau\).
The characteristic function becomes:
This is exactly the Black-Scholes characteristic function for \(\log S_T\) with constant variance \(v_0\) (i.e., constant volatility \(\sigma = \sqrt{v_0}\)), confirming the reduction.
Exercise 3. The Heston characteristic function enables pricing via \(C = e^{-r\tau}\frac{1}{\pi}\int_0^\infty \operatorname{Re}[\cdots]\,du\). Explain why this integral converges and how the decay rate of \(|\varphi(u)|\) as \(u \to \infty\) affects the number of quadrature points needed.
Solution to Exercise 3
The Fourier inversion integral for a European call takes the form:
(or a similar expression using the Gil-Pelaez formula). The integral converges because:
1. Decay of \(|\varphi(u)|\): As \(u \to \infty\), the characteristic function decays to zero. The exponent \(C(\tau, u) + D(\tau, u)v_0\) has a real part that becomes increasingly negative. Specifically, the dominant contribution for large \(u\) is the \(-u^2\) term in the Riccati coefficient \(c = \frac{1}{2}(iu - u^2)\), which drives \(\operatorname{Re}(D) \sim -\alpha u^2\) for some \(\alpha > 0\), so:
2. Integrand boundedness: The factor \(1/(iu)\) contributes a \(1/u\) decay, and the oscillatory factor \(e^{-iu\ln K}\) has modulus 1. So the integrand decays at least as fast as \(|\varphi(u)|/u\).
3. Effect on quadrature: The rate of decay of \(|\varphi(u)|\) determines the effective truncation point \(u_{\max}\) of the integral. Faster decay means fewer quadrature points are needed:
- High \(\sigma_v\) (large vol-of-vol): the CF decays more slowly because the distribution has fatter tails, requiring more quadrature points (e.g., \(u_{\max} \sim 100\))
- Low \(\sigma_v\): the CF decays rapidly (closer to Gaussian), and \(u_{\max} \sim 30\text{--}50\) suffices
- A practical rule of thumb is to integrate until \(|\varphi(u_{\max})| < 10^{-8}\)
Exercise 4. Compute \(\varphi(-i, \tau; x, v)\) and show that it equals \(e^{x+(r-q)\tau} = S_t e^{(r-q)\tau}\), confirming the martingale condition \(\mathbb{E}[S_T/S_t] = e^{(r-q)\tau}\).
Solution to Exercise 4
The characteristic function at \(u = -i\) gives \(\varphi(-i) = \mathbb{E}[e^{i(-i)X_T}] = \mathbb{E}[e^{X_T}] = \mathbb{E}[S_T]\).
Using the Heston CF formula, we evaluate at \(u = -i\). The key intermediate quantities are:
Discriminant:
(Here \(\gamma\) on the left is the discriminant, while \(\gamma\) on the right is the vol-of-vol parameter; using the notation from the file where vol-of-vol is \(\gamma\).) With \(\operatorname{Re}(\kappa - \rho\gamma) > 0\), we get \(\gamma(-i) = \kappa - \rho\gamma\).
Ratio: \(g(-i) = \frac{(\kappa - \rho\gamma) - (\kappa - \rho\gamma)}{(\kappa - \rho\gamma) + (\kappa - \rho\gamma)} = 0\).
\(D\) function: \(D(\tau, -i) = 0\) (the numerator \(\kappa - \rho\gamma - \gamma(-i) = 0\)).
\(C\) function: With \(g = 0\), the log term vanishes, and:
Therefore:
This confirms \(\mathbb{E}^{\mathbb{Q}}[S_T \mid \mathcal{F}_t] = S_t\,e^{(r-q)\tau}\), the risk-neutral martingale condition for the discounted stock price (after adjusting for dividends).
Exercise 5. Explain qualitatively how each Heston parameter (\(\kappa\), \(\theta\), \(\sigma_v\), \(\rho\)) affects the shape of \(|\varphi(u)|\) as a function of \(u\). Which parameter causes the fastest decay?
Solution to Exercise 5
Each Heston parameter affects \(|\varphi(u)|\) as follows:
Mean-reversion speed \(\kappa\): Higher \(\kappa\) pulls the variance toward \(\theta\) more quickly, reducing the effective randomness of the integrated variance. This makes the log-return distribution closer to Gaussian, so \(|\varphi(u)|\) decays more slowly (Gaussian CFs decay as \(e^{-cu^2}\), which is the slowest among common distributions relative to fat-tailed distributions). However, \(\kappa\) also affects the characteristic time scale \(\gamma \approx \kappa\) for small \(u\), and large \(\kappa\) compresses the transient dynamics.
Long-run variance \(\theta\): Higher \(\theta\) increases the total variance of log-returns, which broadens the distribution. A broader distribution means faster decay of \(|\varphi(u)|\) because \(\operatorname{Re}(D)v + \operatorname{Re}(C)\) becomes more negative for large \(u\). The effect enters through the \(C\) function, which scales with \(\kappa\theta\).
Vol-of-vol \(\sigma_v\): This is the most important parameter for CF decay. Higher \(\sigma_v\) produces heavier tails (higher excess kurtosis), which means \(|\varphi(u)|\) decays more slowly. The decay rate transitions from approximately Gaussian (\(e^{-cu^2}\)) when \(\sigma_v\) is small to a slower rate when \(\sigma_v\) is large. Numerically, doubling \(\sigma_v\) can increase the truncation point \(u_{\max}\) by a factor of 2--4.
Correlation \(\rho\): Negative \(\rho\) introduces asymmetry (skewness) in the distribution. While \(\rho\) affects the phase of \(\varphi(u)\) (causing the real and imaginary parts to oscillate differently), its effect on \(|\varphi(u)|\) is secondary compared to \(\sigma_v\). Extreme \(|\rho|\) values slightly slow the decay because they amplify the coupling between the stock and variance processes.
Which parameter causes the fastest decay? The vol-of-vol \(\sigma_v\) is the dominant parameter. When \(\sigma_v\) is small, the model is close to Black-Scholes and \(|\varphi(u)|\) decays approximately as \(\exp(-\frac{1}{2}u^2 v_0 \tau)\), which is very fast. As \(\sigma_v\) increases, tail heaviness grows and the CF decay slows considerably. Therefore, low \(\sigma_v\) produces the fastest decay, and high \(\sigma_v\) produces the slowest.