finMath lib documentation
net.finmath.fouriermethod.models

## Class VarianceGammaModel

• All Implemented Interfaces:
CharacteristicFunctionModel, Model

public class VarianceGammaModel
extends Object
implements CharacteristicFunctionModel
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

Constructors
Constructor and Description
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.
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.
• ### Method Summary

All Methods
Modifier and Type Method and Description
CharacteristicFunction apply(double time)
Returns the characteristic function of X(t), where X is this stochastic process.
DiscountCurve getDiscountCurveForDiscountRate()
DiscountCurve getDiscountCurveForForwardRate()
double getDiscountRate()
double getInitialValue()
double getNu()
LocalDate getReferenceDate()
double getRiskFreeRate()
double getSigma()
double getTheta()
String toString()
• ### Methods inherited from class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
• ### Constructor Detail

• #### 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 following FloatingpointDate.
initialValue - $$S_{0}$$ - spot - initial value of S
discountCurveForForwardRate - The curve specifying $$t \mapsto exp(- r^{\text{c}}(t) \cdot t)$$ - with $$r^{\text{c}}(t)$$ the risk free rate
discountCurveForDiscountRate - The curve specifying $$t \mapsto exp(- r^{\text{d}}(t) \cdot t)$$ - with $$r^{\text{d}}(t)$$ the discount rate
sigma - 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 S
riskFreeRate - 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 Detail

• #### apply

public CharacteristicFunction apply(double time)
Description copied from interface: CharacteristicFunctionModel
Returns the characteristic function of X(t), where X is this stochastic process.
Specified by:
apply in interface CharacteristicFunctionModel
Parameters:
time - The time at which the stochastic process is observed.
Returns:
The characteristic function of X(t).
• #### getReferenceDate

public LocalDate getReferenceDate()
Returns:
the referenceDate: The date corresponding to t = 0 (when dealing with FloatingpointDates.
• #### getInitialValue

public double getInitialValue()
Returns:
the initialValue
• #### getDiscountCurveForForwardRate

public DiscountCurve getDiscountCurveForForwardRate()
Returns:
the discountCurveForForwardRate
• #### getRiskFreeRate

public double getRiskFreeRate()
Returns:
the riskFreeRate
• #### getDiscountCurveForDiscountRate

public DiscountCurve 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

public String toString()
Overrides:
toString in class Object