Class HestonRNDCalculator
The risk-neutral terminal density of the Heston model in the log spot, x = ln S.
public sealed class HestonRNDCalculator : RiskNeutralDensityCalculator
- Inheritance
-
HestonRNDCalculator
- Inherited Members
Remarks
Immutable. Its times are the risk-free curve's, the dividend curve read at the instant a time denotes on its own clock, as BSMRNDCalculator reads it, where QuantLib reads it at the risk-free curve's time; a dividend curve on the risk-free curve's day counter and reference date is read as QuantLib reads it. Where κt is below 1e-12 the density's κ is raised to 1e-12/t, the density moving by about κt relative there, below the tolerance, where QuantLib's integration throws "Interval contains no more machine number" from κ = 1e-16.
Reference: A. Dragulescu, V. Yakovenko, Probability distribution of returns in the Heston model with stochastic volatility, 2002, http://arxiv.org/pdf/cond-mat/0203046.pdf.
Constructors
HestonRNDCalculator(HestonProcess, double, int)
Initializes a new instance of the HestonRNDCalculator class.
public HestonRNDCalculator(HestonProcess hestonProcess, double integrationEps = 1E-06, int maxIntegrationIterations = 10000)
Parameters
hestonProcessHestonProcessThe Heston process.
integrationEpsdoubleThe integrations' accuracy.
maxIntegrationIterationsintThe integrations' limit on iterations.
Exceptions
- ArgumentNullException
hestonProcessis null.
Methods
Cdf(double, double)
The probability of a value below x.
public override double Cdf(double x, double t)
Parameters
Returns
- double
The cumulative probability.
InvCdf(double, double)
The value below which the probability is p.
public override double InvCdf(double p, double t)
Parameters
Returns
- double
The value.
Pdf(double, double)
The density at x.
public override double Pdf(double x, double t)
Parameters
Returns
- double
The density.