java.lang.Object
net.finmath.fouriermethod.models.VarianceGammaModel
- All Implemented Interfaces:
CharacteristicFunctionModel
,Model
Implements the characteristic function of a Variance Gamma model.
The Variange Gamma model is constructed from a subordinated Brownian motion, where the subordinator is given
by a Gamma process.
- Version:
- 1.0
- Author:
- Alessandro Gnoatto
-
Constructor Summary
ConstructorsConstructorDescriptionVarianceGammaModel(double initialValue, double riskFreeRate, double discountRate, double sigma, double theta, double nu)
Construct a Variance Gamma model with constant rates for the forward price (i.e.VarianceGammaModel(LocalDate referenceDate, double initialValue, DiscountCurve discountCurveForForwardRate, DiscountCurve discountCurveForDiscountRate, double sigma, double theta, double nu)
Construct a Variance Gamma model with discount curves for the forward price (i.e. -
Method Summary
-
Constructor Details
-
VarianceGammaModel
public VarianceGammaModel(LocalDate referenceDate, double initialValue, DiscountCurve discountCurveForForwardRate, DiscountCurve discountCurveForDiscountRate, double sigma, double theta, double nu)Construct a Variance Gamma model with discount curves for the forward price (i.e. repo rate minus dividend yield) and for discounting.- Parameters:
referenceDate
- The date representing the time t = 0. All other double times are followingFloatingpointDate
.initialValue
- \( S_{0} \) - spot - initial value of SdiscountCurveForForwardRate
- The curve specifying \( t \mapsto exp(- r^{\text{c}}(t) \cdot t) \) - with \( r^{\text{c}}(t) \) the risk free ratediscountCurveForDiscountRate
- The curve specifying \( t \mapsto exp(- r^{\text{d}}(t) \cdot t) \) - with \( r^{\text{d}}(t) \) the discount ratesigma
- The parameter \( \sigma \)theta
- The parameter \( \theta \)nu
- The parameter \( \nu \)
-
VarianceGammaModel
public VarianceGammaModel(double initialValue, double riskFreeRate, double discountRate, double sigma, double theta, double nu)Construct a Variance Gamma model with constant rates for the forward price (i.e. repo rate minus dividend yield) and for the discount curve.- Parameters:
initialValue
- \( S_{0} \) - spot - initial value of SriskFreeRate
- The constant risk free rate for the drift (repo rate of the underlying).sigma
- The parameter \( \sigma \)theta
- The parameter \( \theta \)nu
- The parameter \( \nu \)discountRate
- The constant rate used for discounting.
-
-
Method Details
-
apply
Description copied from interface:CharacteristicFunctionModel
Returns the characteristic function of X(t), where X isthis
stochastic process.- Specified by:
apply
in interfaceCharacteristicFunctionModel
- Parameters:
time
- The time at which the stochastic process is observed.- Returns:
- The characteristic function of X(t).
-
getReferenceDate
- Returns:
- the referenceDate: The date corresponding to t = 0 (when dealing with
FloatingpointDate
s.
-
getInitialValue
public double getInitialValue()- Returns:
- the initialValue
-
getDiscountCurveForForwardRate
- Returns:
- the discountCurveForForwardRate
-
getRiskFreeRate
public double getRiskFreeRate()- Returns:
- the riskFreeRate
-
getDiscountCurveForDiscountRate
- Returns:
- the discountCurveForDiscountRate
-
getDiscountRate
public double getDiscountRate()- Returns:
- the discountRate
-
getSigma
public double getSigma()- Returns:
- the sigma
-
getTheta
public double getTheta()- Returns:
- the theta
-
getNu
public double getNu()- Returns:
- the nu
-
toString
-