Journal of Computational Finance

Risk.net

Hybrid finite-difference/pseudospectral methods for the Heston and Heston–Hull–White partial differential equations

Christian Hendricks, Matthias Ehrhardt and Michael Günther

  • We propose a hybrid spatial finite-difference/pseudospectral discretization to price European plain vanilla options under stochastic volatility.
  • The method exhibits seconds order accuracy in direction of the underlying asset, while it shows spectral accuracy in the other coordinate directions.
  • Due to the high rate of convergence the scheme outperforms its finite-difference counterpart in terms of accuracy versus runtime.
  • In combination with Alternating-Direction-Implicit (ADI) time stepping the scheme shows an unconditionally stable behavior.

We propose a hybrid spatial finite-difference/pseudospectral discretization for European option-pricing problems under the Heston and Heston–Hull–White models. In the direction of the underlying asset, where the payoff profile is nonsmooth, we use a standard central second-order finite-difference scheme, whereas we use a Chebyshev collocation method in the other spatial dimensions. In the time domain, we employ alternating direction implicit schemes to efficiently decompose the system matrix into simpler one-dimensional problems. This approach allows us to compute numerical solutions, which are second-order accurate in time and exhibit spectral accuracy in the spatial domains except for the asset direction. The numerical experiments reveal that the proposed scheme outperforms the standard second-order finite-difference scheme in terms of accuracy versus runtime and shows an unconditionally stable behavior.

To continue reading...

You need to sign in to use this feature. If you don’t have a Risk.net account, please register for a trial.

Sign in
You are currently on corporate access.

To use this feature you will need an individual account. If you have one already please sign in.

Sign in.

Alternatively you can request an indvidual account here: