Skip to content
All library documents

Avoiding Negative Variance in Heston Model Simulations

Article Quant Q&A · Author: AZhu

Summary

The document clarifies that negative variance values can arise from numerical discretization even though the continuous-time Heston variance process does not become negative. Flooring values, taking absolute values, or otherwise altering simulated variance changes the model and may impair calibration because the resulting process no longer matches the model’s analytical pricing assumptions.

Suggested approaches include using discretization schemes designed to handle the boundary, such as full truncation, lognormal or quadratic-exponential approximations, and reducing the time step. For larger steps, a specialized scheme is also mentioned. Exact simulation and methods for approximating integrated variance are cited as alternatives. The discussion distinguishes a numerical artifact from a model defect, but it does not compare the methods quantitatively or prescribe one scheme for every implementation.

Key ideas

  • Negative variance can be produced by a numerical scheme even when the Heston model itself has nonnegative variance.
  • Clipping or transforming negative simulated values changes the effective model and can harm calibration.
  • Full truncation, quadratic-exponential approximations, and finer time steps are among the proposed remedies.
  • Exact simulation and integrated-variance approximation methods are also mentioned.
  • The document offers no quantitative comparison establishing a universally best scheme.

Tags

Full text
# How to avoid having negative volatility when applying Heston model?


# How to avoid having negative volatility when applying Heston model?












When applying the Heston model to generate the sample volatility surface, some of the volatility value will be negative. I am just wondering what do practioners normally do with these negative value. Do you

- simply ignore it;

- set negatives to 0; or

- square it, take absolute values, or something else?

## Answer by Matt Wolf (score 4, accepted)

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

It is not necessarily something that must be wrong with your model. Inherent in the Heston discretization methods of its continuous time dynamics is the possibility of negative values in the variance process.

Here are couple solutions you can look at in order to "fix" your problem:

- Usage of different Euler schemes, such as the Full Truncation scheme.

- Making the discretization grid smaller.

- approximate Fourier inversions needed to simulate the integrated variance process.

- Moment-matching techniques (for example, approximating the non-centrally chi-squared distribution by a related distribution whose moments are (locally) matched with those of the exact distribution).

- Using drift interpolation instead of Fourier inversion

## Answer by Christian Fries (score 6)

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

First, to make that clear: The Heston model does not generate negative volatility, but - for example - an Euler discretization of the Heston model may generate negative volatility (or variance). It is not a problem of the model. It is a problem of the numerical scheme.

If you use an Euler scheme which generates negative volatility and then use any of the methods quoted in you question (e.g. floor volatility, take absolute value of volatility, etc.), then you are effectively modifying the model. As a consequence, the calibration quality of the model may suffer since analytic formulas are no longer valid. Working with a finer time-discretization may heal this, since the probability to hit zero gets smaller.

That said, I assume the question here rather is: Which numerical scheme should be used for Heston model?

Here it may be useful to take a look at the paper by Broadi and Kaya:

Broadie, M.; Kaya, O.: Exact Simulation of Stochastic Volatility and other Affine Jump Diffusion Processes. Operations Research, 2006, Vol.54, No.2, 217-231.

See also http://finmath.stanford.edu/seminars/documents/Broadie.pdf

## Answer by pyCthon (score 2)

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

Negative volatility means something some where along the lines something is inherently wrong with your model, double check your code and theory

## Answer by Mark Joshi (score 2)

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

There are by now a lot of papers on discretizations of Heston. One objective of them being to avoid negativity. As has already been said, the Heston SDE has no negative solutions, but a crude discretization does give negative variance with positive probability.

If you want to do small steps, then using a log-normal approximation or the QE approximation solves the problem. If you want to do large steps, our method Chan--Joshi is effective.

http://ssrn.com/abstract=1617187

The code is downloadable from markjoshi.com

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.