Module net.finmath.lib
Class CalibratableHestonModel
java.lang.Object
net.finmath.fouriermethod.calibration.models.CalibratableHestonModel
- All Implemented Interfaces:
CalibratableProcess
This class is creates new instances of HestonModel and communicates with the optimization algorithm.
This class provides clones of herself: in such a way the information concerning constraints is not lost.
The method getCharacteristicFunction is then passed to the FFT pricing routine.
- Author:
- Alessandro Gnoatto
-
Constructor Summary
ConstructorsConstructorDescriptionCalibratableHestonModel(HestonModelDescriptor descriptor)
Basic constructor where all parameters are to be calibrated.CalibratableHestonModel(HestonModelDescriptor descriptor, ScalarParameterInformation volatilityConstraint, ScalarParameterInformation thetaConstraint, ScalarParameterInformation kappaConstraint, ScalarParameterInformation xiConstraint, ScalarParameterInformation rhoConstraint, boolean applyFellerConstraint)
This constructor allows for the specification of constraints. -
Method Summary
Modifier and TypeMethodDescriptionDirectly returns the characteristic function.getCloneForModifiedParameters(double[] parameters)
Calibration substitutes in the model the parameters of the process with calibrated ones.Every class implementing this interface must contain a ModelDescriptor from which we can create some concrete model.double[]
Extracts parameter lower bounds for the optimizer factory.double[]
Extracts parameter upper bounds for the optimizer factory.toString()
-
Constructor Details
-
CalibratableHestonModel
Basic constructor where all parameters are to be calibrated. All parameters are unconstrained.- Parameters:
descriptor
- The model descriptor for the Heston model.
-
CalibratableHestonModel
public CalibratableHestonModel(HestonModelDescriptor descriptor, ScalarParameterInformation volatilityConstraint, ScalarParameterInformation thetaConstraint, ScalarParameterInformation kappaConstraint, ScalarParameterInformation xiConstraint, ScalarParameterInformation rhoConstraint, boolean applyFellerConstraint)This constructor allows for the specification of constraints. This is very liberal since we can impose different types of constraints. The choice on the parameters to be applied is left to the user. This implies that he user could create Heston models which are not admissible in the sense of Duffie Filipovic and Schachermayer (2003). For example, it is up to the user to impose constraints such that the product of kappa and theta is positive.- Parameters:
descriptor
- The model descriptor for the Heston model.volatilityConstraint
- The volatility constraint.thetaConstraint
- The constraint for the theta parameter.kappaConstraint
- The constraint for the kappa parameter.xiConstraint
- The constraint for the xi parameter.rhoConstraint
- The constraint for the rho parameter.applyFellerConstraint
- If true, the Feller constraint is applied.
-
-
Method Details
-
getCloneForModifiedParameters
Description copied from interface:CalibratableProcess
Calibration substitutes in the model the parameters of the process with calibrated ones. Market observables such as the initial stock value should not be changed.- Specified by:
getCloneForModifiedParameters
in interfaceCalibratableProcess
- Parameters:
parameters
- The new parameters.- Returns:
- a clone of the original model with modified parameters.
-
getModelDescriptor
Description copied from interface:CalibratableProcess
Every class implementing this interface must contain a ModelDescriptor from which we can create some concrete model.- Specified by:
getModelDescriptor
in interfaceCalibratableProcess
- Returns:
- The descriptor for this model.
-
getCharacteristicFunctionModel
Description copied from interface:CalibratableProcess
Directly returns the characteristic function.- Specified by:
getCharacteristicFunctionModel
in interfaceCalibratableProcess
- Returns:
- the characteristic function
-
getParameterUpperBounds
public double[] getParameterUpperBounds()Description copied from interface:CalibratableProcess
Extracts parameter upper bounds for the optimizer factory.- Specified by:
getParameterUpperBounds
in interfaceCalibratableProcess
- Returns:
- parameter upper bounds for the optimizer factory.
-
getParameterLowerBounds
public double[] getParameterLowerBounds()Description copied from interface:CalibratableProcess
Extracts parameter lower bounds for the optimizer factory.- Specified by:
getParameterLowerBounds
in interfaceCalibratableProcess
- Returns:
- parameter lower bounds for the optimizer factory.
-
toString
-