Module net.finmath.lib
Class SABRCubeParallelCalibration
- java.lang.Object
-
- net.finmath.singleswaprate.calibration.AbstractCubeCalibration
-
- net.finmath.singleswaprate.calibration.SABRCubeParallelCalibration
-
public class SABRCubeParallelCalibration extends AbstractCubeCalibration
Calibrates aSABRVolatilityCubeParallel.- Author:
- Christian Fries, Roland Bachl
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.finmath.singleswaprate.calibration.AbstractCubeCalibration
AbstractCubeCalibration.SwaptionInfo
-
-
Constructor Summary
Constructors Constructor Description SABRCubeParallelCalibration(LocalDate referenceDate, SwaptionDataLattice cashPayerPremiums, SwaptionDataLattice cashReceiverPremiums, SwaptionDataLattice physicalATMSwaptions, VolatilityCubeModel model, AnnuityMapping.AnnuityMappingType annuityMappingType)Create the calibrator.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected double[]applyParameterBounds(double[] parameters)Apply bounds to parameters.protected VolatilityCubebuildCube(String name, double[] parameters)Build the cube from a set of parameters.doublegetInitialBeta()doublegetInitialCorrelationDecay()doublegetInitialDisplacement()doublegetInitialIborOisDecorrelation()doublegetInitialRho()doublegetInitialVolvol()protected voidinitializeParameters()Prepare the parameters for the start of the calibration.voidsetInitialBeta(double initialBeta)voidsetInitialCorrelationDecay(double initialCorrelationDecay)voidsetInitialDisplacement(double initialDisplacement)voidsetInitialIborOisDecorrelation(double initialIborOisDecorrelation)voidsetInitialRho(double initialRho)voidsetInitialVolvol(double initialVolvol)-
Methods inherited from class net.finmath.singleswaprate.calibration.AbstractCubeCalibration
calibrate, getForwardCurveName, getInitialParameters, getMaxIterations, getModel, getNumberOfThreads, getReferenceDate, getReplicationLowerBound, getReplicationNumberOfEvaluationPoints, getReplicationUpperBound, isReplicationUseAsOffset, setCalibrationParameters, setInitialParameters, setReplicationParameters
-
-
-
-
Constructor Detail
-
SABRCubeParallelCalibration
public SABRCubeParallelCalibration(LocalDate referenceDate, SwaptionDataLattice cashPayerPremiums, SwaptionDataLattice cashReceiverPremiums, SwaptionDataLattice physicalATMSwaptions, VolatilityCubeModel model, AnnuityMapping.AnnuityMappingType annuityMappingType)
Create the calibrator.- Parameters:
referenceDate- The reference date of the cube.cashPayerPremiums- The lattice containing market targets for cash settled payer swaptions. The lattice needs to be quoted in QuotingConvention.PRICE.cashReceiverPremiums- The lattice containing market targets for cash settled receiver swaptions. The lattice needs to be quoted in QuotingConvention.PRICE.physicalATMSwaptions- Lattice containing at-the-money values of physically settled swaptions.model- The model providing context.annuityMappingType- The type of annuity mapping to be used for calibration.
-
-
Method Detail
-
buildCube
protected VolatilityCube buildCube(String name, double[] parameters)
Description copied from class:AbstractCubeCalibrationBuild the cube from a set of parameters. These need to be an array of all parameters to be calibrated.- Specified by:
buildCubein classAbstractCubeCalibration- Parameters:
name- The name the cube will carry.parameters- The parameters of the cube as array.- Returns:
- The volatility cube.
-
initializeParameters
protected void initializeParameters()
Description copied from class:AbstractCubeCalibrationPrepare the parameters for the start of the calibration.- Specified by:
initializeParametersin classAbstractCubeCalibration
-
applyParameterBounds
protected double[] applyParameterBounds(double[] parameters)
Description copied from class:AbstractCubeCalibrationApply bounds to parameters. Such as volatility larger zero.- Specified by:
applyParameterBoundsin classAbstractCubeCalibration- Parameters:
parameters- The raw parameters of the cube as array.- Returns:
- The parameters with their respective bounds applied.
-
getInitialCorrelationDecay
public double getInitialCorrelationDecay()
-
setInitialCorrelationDecay
public void setInitialCorrelationDecay(double initialCorrelationDecay)
-
getInitialIborOisDecorrelation
public double getInitialIborOisDecorrelation()
-
setInitialIborOisDecorrelation
public void setInitialIborOisDecorrelation(double initialIborOisDecorrelation)
-
getInitialDisplacement
public double getInitialDisplacement()
-
setInitialDisplacement
public void setInitialDisplacement(double initialDisplacement)
-
getInitialBeta
public double getInitialBeta()
-
setInitialBeta
public void setInitialBeta(double initialBeta)
-
getInitialRho
public double getInitialRho()
-
setInitialRho
public void setInitialRho(double initialRho)
-
getInitialVolvol
public double getInitialVolvol()
-
setInitialVolvol
public void setInitialVolvol(double initialVolvol)
-
-