Class MertonJumpComponent
java.lang.Object
net.finmath.finitedifference.assetderivativevaluation.models.AbstractStateIndependentJumpComponent
net.finmath.finitedifference.assetderivativevaluation.models.MertonJumpComponent
- All Implemented Interfaces:
Serializable, JumpComponent
- Direct Known Subclasses:
BatesJumpComponent
Jump component for the Merton jump-diffusion model.
The jump part acts on one selected state variable through multiplicative jumps of the form
x -> x * exp(y),
where the log-jump size y is normally distributed with mean
jumpMean and standard deviation jumpStdDev. The associated
Levy density is
nu(y) = intensity * gaussianDensity(y; jumpMean, jumpStdDev^2).
Since the Merton jump component has finite activity, it also has finite variation.
- Author:
- Alessandro Gnoatto
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionMertonJumpComponent(double lowerIntegrationBound, double upperIntegrationBound, double intensity, double jumpMean, double jumpStdDev) Creates a Merton jump component acting on the first state variable.MertonJumpComponent(int stateVariableIndex, double lowerIntegrationBound, double upperIntegrationBound, double intensity, double jumpMean, double jumpStdDev) Creates a Merton jump component. -
Method Summary
Modifier and TypeMethodDescriptiondoubleReturns the jump intensity.doubleReturns the mean of the log-jump size.doubleReturns the standard deviation of the log-jump size.protected doublegetLevyDensity(double time, double jumpSize) Returns the Levy density at the given log-jump size.
-
Constructor Details
-
MertonJumpComponent
public MertonJumpComponent(double lowerIntegrationBound, double upperIntegrationBound, double intensity, double jumpMean, double jumpStdDev) Creates a Merton jump component acting on the first state variable.- Parameters:
lowerIntegrationBound- Lower integration bound for the log-jump variable.upperIntegrationBound- Upper integration bound for the log-jump variable.intensity- Jump intensity.jumpMean- Mean of the log-jump size.jumpStdDev- Standard deviation of the log-jump size.
-
MertonJumpComponent
public MertonJumpComponent(int stateVariableIndex, double lowerIntegrationBound, double upperIntegrationBound, double intensity, double jumpMean, double jumpStdDev) Creates a Merton jump component.- Parameters:
stateVariableIndex- Index of the affected state variable.lowerIntegrationBound- Lower integration bound for the log-jump variable.upperIntegrationBound- Upper integration bound for the log-jump variable.intensity- Jump intensity.jumpMean- Mean of the log-jump size.jumpStdDev- Standard deviation of the log-jump size.
-
-
Method Details
-
getLevyDensity
protected double getLevyDensity(double time, double jumpSize) Description copied from class:AbstractStateIndependentJumpComponentReturns the Levy density at the given log-jump size.Implementations only need to provide the state-independent density
nu(y). Dependence on the PDE state variables is intentionally excluded from this base class.- Specified by:
getLevyDensityin classAbstractStateIndependentJumpComponent- Parameters:
time- The evaluation time.jumpSize- The log-relative jump size.- Returns:
- The Levy density at the given jump size.
-
getIntensity
public double getIntensity()Returns the jump intensity.- Returns:
- The jump intensity.
-
getJumpMean
public double getJumpMean()Returns the mean of the log-jump size.- Returns:
- The mean of the log-jump size.
-
getJumpStdDev
public double getJumpStdDev()Returns the standard deviation of the log-jump size.- Returns:
- The standard deviation of the log-jump size.
-