java.lang.Object
net.finmath.functions.HestonModel
This class implements some functions as static class methods related to the Heston model.
The calculation is performed by means of the FFT algorithm of Carr Madan applied to the gradient of the characteristic funtion.
- Author:
- Alessandro Gnoatto
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic double
hestonOptionDelta(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)
Calculates the delta of a call option under a Heston model.static double
hestonOptionGamma(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)
Calculates the gamma of a call option under a Heston modelstatic double
hestonOptionRho(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)
Calculates the rho of a call option under a Heston modelstatic double
hestonOptionTheta(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)
Calculates the theta of a call option under a Heston modelstatic double
hestonOptionVanna(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)
Calculates the vanna of a call option under a Heston modelstatic double
hestonOptionVega1(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)
Calculates the vega1 of a call option under a Heston modelstatic double
hestonOptionVolga(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)
Calculates the volga of a call option under a Heston model
-
Constructor Details
-
HestonModel
public HestonModel()
-
-
Method Details
-
hestonOptionDelta
public static double hestonOptionDelta(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)Calculates the delta of a call option under a Heston model.- Parameters:
initialStockValue
- Initital value of the stock.riskFreeRate
- The risk free rate.dividendYield
- The dividend yield.kappa
- the speed of mean reversion.theta
- the long run mean of the volatility.sigma
- the volatility of variance.v0
- the initial instantaneous variancerho
- correlation between the two Brownian motionsoptionMaturity
- the maturity of the optionoptionStrike
- the strike of the option.- Returns:
- The delta of the option.
-
hestonOptionGamma
public static double hestonOptionGamma(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)Calculates the gamma of a call option under a Heston model- Parameters:
initialStockValue
- Initital value of the stock.riskFreeRate
- The risk free rate.dividendYield
- The dividend yield.kappa
- the speed of mean reversion.theta
- the long run mean of the volatility.sigma
- the volatility of variance.v0
- the initial instantaneous variancerho
- correlation between the two Brownian motionsoptionMaturity
- the maturity of the optionoptionStrike
- the strike of the option.- Returns:
- The gamma of the option
-
hestonOptionTheta
public static double hestonOptionTheta(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)Calculates the theta of a call option under a Heston model- Parameters:
initialStockValue
- Initital value of the stock.riskFreeRate
- The risk free rate.dividendYield
- The dividend yield.kappa
- the speed of mean reversion.theta
- the long run mean of the volatility.sigma
- the volatility of variance.v0
- the initial instantaneous variancerho
- correlation between the two Brownian motionsoptionMaturity
- the maturity of the optionoptionStrike
- the strike of the option.- Returns:
- The theta of the option
-
hestonOptionRho
public static double hestonOptionRho(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)Calculates the rho of a call option under a Heston model- Parameters:
initialStockValue
- Initital value of the stock.riskFreeRate
- The risk free rate.dividendYield
- The dividend yield.kappa
- the speed of mean reversion.theta
- the long run mean of the volatility.sigma
- the volatility of variance.v0
- the initial instantaneous variancerho
- correlation between the two Brownian motionsoptionMaturity
- the maturity of the optionoptionStrike
- the strike of the option.- Returns:
- The rho of the option
-
hestonOptionVega1
public static double hestonOptionVega1(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)Calculates the vega1 of a call option under a Heston model- Parameters:
initialStockValue
- Initital value of the stock.riskFreeRate
- The risk free rate.dividendYield
- The dividend yield.kappa
- the speed of mean reversion.theta
- the long run mean of the volatility.sigma
- the volatility of variance.v0
- the initial instantaneous variancerho
- correlation between the two Brownian motionsoptionMaturity
- the maturity of the optionoptionStrike
- the strike of the option.- Returns:
- The vega1 of the option
-
hestonOptionVanna
public static double hestonOptionVanna(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)Calculates the vanna of a call option under a Heston model- Parameters:
initialStockValue
- Initital value of the stock.riskFreeRate
- The risk free rate.dividendYield
- The dividend yield.kappa
- the speed of mean reversion.theta
- the long run mean of the volatility.sigma
- the volatility of variance.v0
- the initial instantaneous variancerho
- correlation between the two Brownian motionsoptionMaturity
- the maturity of the optionoptionStrike
- the strike of the option.- Returns:
- The vanna of the option
-
hestonOptionVolga
public static double hestonOptionVolga(double initialStockValue, double riskFreeRate, double dividendYield, double kappa, double theta, double sigma, double v0, double rho, double optionMaturity, double optionStrike)Calculates the volga of a call option under a Heston model- Parameters:
initialStockValue
- Initital value of the stock.riskFreeRate
- The risk free rate.dividendYield
- The dividend yield.kappa
- the speed of mean reversion.theta
- the long run mean of the volatility.sigma
- the volatility of variance.v0
- the initial instantaneous variancerho
- correlation between the two Brownian motionsoptionMaturity
- the maturity of the optionoptionStrike
- the strike of the option.- Returns:
- The volga of the option
-