Rejecting Negative Variance Samples in Heston Simulation
Summary
The document raises a proposed way to handle negative variance values when simulating the Heston stochastic volatility process: discard a draw that produces a negative variance and sample again. The author argues that independent, identically distributed random increments should make repeated rejection unlikely to prevent termination, based on personal testing in which a later draw often avoided the problem. The proposal is motivated by debate over alternatives such as reflecting or truncating negative values.
However, the claim that rejection does not introduce bias is asserted rather than demonstrated. Replacing a draw conditional on the variance remaining nonnegative changes the distribution of the retained increment, so the resulting process may not preserve the intended Heston dynamics. The document provides no derivation, comparison against established simulation schemes, or quantitative results showing accuracy. It is best read as a question about a sampling approach whose distributional and numerical effects would need analysis before use in pricing or risk calculations.
Key ideas
- The proposal resamples whenever a Heston variance update becomes negative.
- The author reasons that independent random draws make long runs of rejected samples unlikely.
- Conditioning retained samples on nonnegative variance may alter the intended increment distribution.
- The document does not prove unbiasedness or provide comparative accuracy results.
- Any use in simulation would require checking distributional and numerical consequences.
Tags
Full text
# Heston Process: Accept-Reject Sampling to Alleviate the Problem of Negative Variances # Heston Process: Accept-Reject Sampling to Alleviate the Problem of Negative Variances I've read even in recent papers, and on page 21 of the book "The Volatility Surface" by Jim Gatheral (2006), all the debate over whether to reflect or truncate negative variances whilst simulating the Heston process and the subsequent ramifications of what doing that entails, etc. It seems the solution is so simple it might have escaped them, but why not just reject the sample if it results in variance going negative and drawing another entirely different sample? The pseudo-random generator is supposed to generate identically distributed independent increments. So, there is no chance of an infinite sequence of draws causing the algorithm to cease to terminate since usually in my testing the very next draw, or perhaps the next is sufficient to draw a sample avoiding the negative variance situation; this should not bias the process theoretically in any way.
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.