Class FDMBatesModel

java.lang.Object
net.finmath.finitedifference.assetderivativevaluation.models.FDMHestonModel
net.finmath.finitedifference.assetderivativevaluation.models.FDMBatesModel
All Implemented Interfaces:
FiniteDifferenceBoundary, FiniteDifferenceEquityModel, FiniteDifferenceModel, Model

public class FDMBatesModel extends FDMHestonModel
Finite difference model for option pricing under the Bates stochastic volatility jump-diffusion model.

State variables are (S, v) where S is the spot and v is the instantaneous variance.

The local part of the model coincides with the Heston model, while the jump part is supplied separately through getJumpComponent().

Hence:

The constructor argument order follows the Heston constructors first and then appends the jump parameters.

Author:
Alessandro Gnoatto
  • Constructor Details

    • FDMBatesModel

      public FDMBatesModel(double initialSpot, double initialVariance, DiscountCurve riskFreeCurve, DiscountCurve dividendYieldCurve, double kappa, double thetaV, double sigma, double rho, BatesJumpComponent jumpComponent, SpaceTimeDiscretization spaceTimeDiscretization)
      Constructs a Bates finite difference model from discount curves and an explicit jump component.
      Parameters:
      initialSpot - Initial spot price.
      initialVariance - Initial variance.
      riskFreeCurve - Risk-free discount curve.
      dividendYieldCurve - Dividend yield discount curve.
      kappa - Mean reversion speed of variance.
      thetaV - Long-term mean of variance.
      sigma - Vol-of-vol parameter.
      rho - Correlation between the Brownian motions.
      jumpComponent - Bates jump component.
      spaceTimeDiscretization - Grid object defining the spatial discretization.
    • FDMBatesModel

      public FDMBatesModel(double initialSpot, double initialVariance, DiscountCurve riskFreeCurve, DiscountCurve dividendYieldCurve, double kappa, double thetaV, double sigma, double rho, double jumpIntensity, double jumpMean, double jumpStdDev, double lowerIntegrationBound, double upperIntegrationBound, SpaceTimeDiscretization spaceTimeDiscretization)
      Constructs a Bates finite difference model from discount curves and jump parameters.
      Parameters:
      initialSpot - Initial spot price.
      initialVariance - Initial variance.
      riskFreeCurve - Risk-free discount curve.
      dividendYieldCurve - Dividend yield discount curve.
      kappa - Mean reversion speed of variance.
      thetaV - Long-term mean of variance.
      sigma - Vol-of-vol parameter.
      rho - Correlation between the Brownian motions.
      jumpIntensity - Jump intensity.
      jumpMean - Mean of the log-jump size.
      jumpStdDev - Standard deviation of the log-jump size.
      lowerIntegrationBound - Lower integration bound for the log-jump variable.
      upperIntegrationBound - Upper integration bound for the log-jump variable.
      spaceTimeDiscretization - Grid object defining the spatial discretization.
    • FDMBatesModel

      public FDMBatesModel(double initialSpot, double initialVariance, DiscountCurve riskFreeCurve, double kappa, double thetaV, double sigma, double rho, BatesJumpComponent jumpComponent, SpaceTimeDiscretization spaceTimeDiscretization)
      Constructs a Bates finite difference model without dividend yield curve, using an explicit jump component.
      Parameters:
      initialSpot - Initial spot price.
      initialVariance - Initial variance.
      riskFreeCurve - Risk-free discount curve.
      kappa - Mean reversion speed of variance.
      thetaV - Long-term mean of variance.
      sigma - Vol-of-vol parameter.
      rho - Correlation between the Brownian motions.
      jumpComponent - Bates jump component.
      spaceTimeDiscretization - Grid object defining the spatial discretization.
    • FDMBatesModel

      public FDMBatesModel(double initialSpot, double initialVariance, DiscountCurve riskFreeCurve, double kappa, double thetaV, double sigma, double rho, double jumpIntensity, double jumpMean, double jumpStdDev, double lowerIntegrationBound, double upperIntegrationBound, SpaceTimeDiscretization spaceTimeDiscretization)
      Constructs a Bates finite difference model without dividend yield curve, using jump parameters.
      Parameters:
      initialSpot - Initial spot price.
      initialVariance - Initial variance.
      riskFreeCurve - Risk-free discount curve.
      kappa - Mean reversion speed of variance.
      thetaV - Long-term mean of variance.
      sigma - Vol-of-vol parameter.
      rho - Correlation between the Brownian motions.
      jumpIntensity - Jump intensity.
      jumpMean - Mean of the log-jump size.
      jumpStdDev - Standard deviation of the log-jump size.
      lowerIntegrationBound - Lower integration bound for the log-jump variable.
      upperIntegrationBound - Upper integration bound for the log-jump variable.
      spaceTimeDiscretization - Grid object defining the spatial discretization.
    • FDMBatesModel

      public FDMBatesModel(double initialSpot, double initialVariance, double riskFreeRate, double dividendYieldRate, double kappa, double thetaV, double sigma, double rho, BatesJumpComponent jumpComponent, SpaceTimeDiscretization spaceTimeDiscretization)
      Constructs a Bates finite difference model from constant rates and an explicit jump component.
      Parameters:
      initialSpot - Initial spot price.
      initialVariance - Initial variance.
      riskFreeRate - Constant risk-free rate.
      dividendYieldRate - Constant dividend yield rate.
      kappa - Mean reversion speed of variance.
      thetaV - Long-term mean of variance.
      sigma - Vol-of-vol parameter.
      rho - Correlation between the Brownian motions.
      jumpComponent - Bates jump component.
      spaceTimeDiscretization - Grid object defining the spatial discretization.
    • FDMBatesModel

      public FDMBatesModel(double initialSpot, double initialVariance, double riskFreeRate, double dividendYieldRate, double kappa, double thetaV, double sigma, double rho, double jumpIntensity, double jumpMean, double jumpStdDev, double lowerIntegrationBound, double upperIntegrationBound, SpaceTimeDiscretization spaceTimeDiscretization)
      Constructs a Bates finite difference model from constant rates and jump parameters.
      Parameters:
      initialSpot - Initial spot price.
      initialVariance - Initial variance.
      riskFreeRate - Constant risk-free rate.
      dividendYieldRate - Constant dividend yield rate.
      kappa - Mean reversion speed of variance.
      thetaV - Long-term mean of variance.
      sigma - Vol-of-vol parameter.
      rho - Correlation between the Brownian motions.
      jumpIntensity - Jump intensity.
      jumpMean - Mean of the log-jump size.
      jumpStdDev - Standard deviation of the log-jump size.
      lowerIntegrationBound - Lower integration bound for the log-jump variable.
      upperIntegrationBound - Upper integration bound for the log-jump variable.
      spaceTimeDiscretization - Grid object defining the spatial discretization.
    • FDMBatesModel

      public FDMBatesModel(double initialSpot, double initialVariance, double riskFreeRate, double kappa, double thetaV, double sigma, double rho, BatesJumpComponent jumpComponent, SpaceTimeDiscretization spaceTimeDiscretization)
      Constructs a Bates finite difference model from a constant risk-free rate and zero dividend yield, using an explicit jump component.
      Parameters:
      initialSpot - Initial spot price.
      initialVariance - Initial variance.
      riskFreeRate - Constant risk-free rate.
      kappa - Mean reversion speed of variance.
      thetaV - Long-term mean of variance.
      sigma - Vol-of-vol parameter.
      rho - Correlation between the Brownian motions.
      jumpComponent - Bates jump component.
      spaceTimeDiscretization - Grid object defining the spatial discretization.
    • FDMBatesModel

      public FDMBatesModel(double initialSpot, double initialVariance, double riskFreeRate, double kappa, double thetaV, double sigma, double rho, double jumpIntensity, double jumpMean, double jumpStdDev, double lowerIntegrationBound, double upperIntegrationBound, SpaceTimeDiscretization spaceTimeDiscretization)
      Constructs a Bates finite difference model from a constant risk-free rate and zero dividend yield, using jump parameters.
      Parameters:
      initialSpot - Initial spot price.
      initialVariance - Initial variance.
      riskFreeRate - Constant risk-free rate.
      kappa - Mean reversion speed of variance.
      thetaV - Long-term mean of variance.
      sigma - Vol-of-vol parameter.
      rho - Correlation between the Brownian motions.
      jumpIntensity - Jump intensity.
      jumpMean - Mean of the log-jump size.
      jumpStdDev - Standard deviation of the log-jump size.
      lowerIntegrationBound - Lower integration bound for the log-jump variable.
      upperIntegrationBound - Upper integration bound for the log-jump variable.
      spaceTimeDiscretization - Grid object defining the spatial discretization.
  • Method Details