Skip to content
All library documents

Stabilizing Heston Fourier Pricing with a Black–Scholes Control

Article Quant Q&A · Author: NSZ

Summary

The document describes numerical instability when using the Carr–Madan Fourier transform to price deep in-the-money and out-of-the-money options under the Heston model. Direct numerical integration may produce implausible results, such as a call price above the underlying stock price at very low strikes. The question asks how such issues are handled in practice.

The proposed technique is to use a Black–Scholes price as a control variate. Instead of integrating the full option value directly, compute the difference between the Heston and Black–Scholes prices; that difference is shared by calls and puts, which reduces sensitivity to whether the option is in or out of the money. The answer points to research on selecting the implied volatility for the control, but gives no implementation details, error analysis, or numerical comparisons. It is a practical numerical suggestion rather than a complete pricing procedure.

Key ideas

  • Direct Fourier integration can be unstable for deep in-the-money and out-of-the-money Heston options.
  • A Black–Scholes control variate can improve the behavior of the numerical integral.
  • Computing the Heston-to-Black–Scholes price difference helps avoid separate call and put integration issues.
  • The choice of implied volatility for the control remains a modeling consideration.

Tags

Full text
# Heston ITM and OTM options pricing


# Heston ITM and OTM options pricing












In the Carr and Madan (1999) methodology exploiting the fast Fourier transform, the quasi-analytical price of a call is given by:

$$C(t,T,K)=e^{-r(T-t)}\frac{e^{-\alpha \log (K)}}{\pi}Re\left[\int_0^\infty e^{-iu \log(K)} \frac{\psi_t(u-i(1+\alpha))}{\alpha^2+\alpha-u^2+i(1+2\alpha)u}du\right]$$

where $\psi_t(u)$ is the characteristic function of the log-price and $\alpha$ a control parameter for the integral.

It appears to me that pricing deeply ITM and OTM options is quite unstable using the numerical integral and I obtain often prices that are not possible. For example with a strike of approximately 0 I obtain call prices higher than the stock prices.

Is it a known problem? How can I avoid these numerical issues and get the right price?

What is actually done in practice?

## Answer by Mark Joshi (score 4)

https://quant.stackexchange.com/a/33648

There are a number of tricks. My favourite is to use the Black--Scholes price as a control. The integrals become much better behaved. You compute the difference of the Heston price from the BS price which is the same for calls and puts so there are no ITM vs OTM issues.

In my paper with Chao Yang, we investigate the problem of what implied vol to use in the control.

Joshi, Mark S. and Yang, Chao, Fourier Transforms, Option Pricing and Controls (October 9, 2011). Available at SSRN: https://ssrn.com/abstract=1941464 or http://dx.doi.org/10.2139/ssrn.1941464

I also have extensive discussion in my book More Mathematical Finance.

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.