Class HestonModel

java.lang.Object
net.finmath.functions.HestonModel

public class HestonModel extends Object
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
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    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.
    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
    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
    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
    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
    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
    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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • 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 variance
      rho - correlation between the two Brownian motions
      optionMaturity - the maturity of the option
      optionStrike - 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 variance
      rho - correlation between the two Brownian motions
      optionMaturity - the maturity of the option
      optionStrike - 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 variance
      rho - correlation between the two Brownian motions
      optionMaturity - the maturity of the option
      optionStrike - 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 variance
      rho - correlation between the two Brownian motions
      optionMaturity - the maturity of the option
      optionStrike - 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 variance
      rho - correlation between the two Brownian motions
      optionMaturity - the maturity of the option
      optionStrike - 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 variance
      rho - correlation between the two Brownian motions
      optionMaturity - the maturity of the option
      optionStrike - 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 variance
      rho - correlation between the two Brownian motions
      optionMaturity - the maturity of the option
      optionStrike - the strike of the option.
      Returns:
      The volga of the option