Module net.finmath.lib
Class AnnuityMappingFactory
- java.lang.Object
-
- net.finmath.singleswaprate.annuitymapping.AnnuityMappingFactory
-
public class AnnuityMappingFactory extends Object
Provides factories to build annuity mappings from uniform input.- Author:
- Christian Fries, Roland Bachl
-
-
Constructor Summary
Constructors Constructor Description AnnuityMappingFactory(Schedule fixSchedule, Schedule floatSchedule, String discountCurveName, String forwardCurveName, String volatilityCubeName)
Create the factory.AnnuityMappingFactory(Schedule fixSchedule, Schedule floatSchedule, String discountCurveName, String forwardCurveName, String volatilityCubeName, double strike, double lowerBound, double upperBound, int numberOfEvaluationPoints)
Create the factory.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description AnnuityMapping
build(AnnuityMapping.AnnuityMappingType type, VolatilityCubeModel model)
Build the annuity mapping.static AnnuityMapping
buildAnnuityMapping(double strike, Schedule fixSchedule, Schedule floatSchedule, String discountCurveName, String forwardCurveName, String volatilityCubeName, AnnuityMapping.AnnuityMappingType type, VolatilityCubeModel model)
Build an annuity mapping.static AnnuityMapping
buildAnnuityMapping(double strike, Schedule fixSchedule, Schedule floatSchedule, String discountCurveName, String forwardCurveName, String volatilityCubeName, AnnuityMapping.AnnuityMappingType type, VolatilityCubeModel model, double lowerBound, double upperBound, int numberOfEvaluationPoints)
Build an annuity mapping.
-
-
-
Constructor Detail
-
AnnuityMappingFactory
public AnnuityMappingFactory(Schedule fixSchedule, Schedule floatSchedule, String discountCurveName, String forwardCurveName, String volatilityCubeName)
Create the factory.- Parameters:
fixSchedule
- Fix leg schedule of the swap.floatSchedule
- Float leg schedule of the swap.discountCurveName
- The name of the discount curve.forwardCurveName
- The name of the forward curve.volatilityCubeName
- The name of the volatility cube.
-
AnnuityMappingFactory
public AnnuityMappingFactory(Schedule fixSchedule, Schedule floatSchedule, String discountCurveName, String forwardCurveName, String volatilityCubeName, double strike, double lowerBound, double upperBound, int numberOfEvaluationPoints)
Create the factory.- Parameters:
fixSchedule
- Fix leg schedule of the swap.floatSchedule
- Float leg schedule of the swap.discountCurveName
- The name of the discount curve.forwardCurveName
- The name of the forward curve.volatilityCubeName
- The name of the volatility cube.strike
- The strike to get the proper volatilities from the cube.lowerBound
- The lowest strike the Piterbarg annuity mapping may use during replication, when normalizing.upperBound
- The maximum strike the Piterbarg annuity mapping may use during replication, when normalizing.numberOfEvaluationPoints
- The number of points the replication may evaluate Piterbarg annuity mapping is normalizing.
-
-
Method Detail
-
buildAnnuityMapping
public static AnnuityMapping buildAnnuityMapping(double strike, Schedule fixSchedule, Schedule floatSchedule, String discountCurveName, String forwardCurveName, String volatilityCubeName, AnnuityMapping.AnnuityMappingType type, VolatilityCubeModel model)
Build an annuity mapping.- Parameters:
strike
- The strike to get the proper volatilities from the cube.fixSchedule
- Fix leg schedule of the swap.floatSchedule
- Float leg schedule of the swap.discountCurveName
- The name of the discount curve.forwardCurveName
- The name of the forward curve.volatilityCubeName
- The name of the volatility cube.type
- The desired type of annuity mapping.model
- The model containing curves and cube.- Returns:
- The annuity mapping.
-
buildAnnuityMapping
public static AnnuityMapping buildAnnuityMapping(double strike, Schedule fixSchedule, Schedule floatSchedule, String discountCurveName, String forwardCurveName, String volatilityCubeName, AnnuityMapping.AnnuityMappingType type, VolatilityCubeModel model, double lowerBound, double upperBound, int numberOfEvaluationPoints)
Build an annuity mapping.- Parameters:
strike
- The strike to get the proper volatilities from the cube.fixSchedule
- Fix leg schedule of the swap.floatSchedule
- Float leg schedule of the swap.discountCurveName
- The name of the discount curve.forwardCurveName
- The name of the forward curve.volatilityCubeName
- The name of the volatility cube.type
- The desired type of annuity mapping.model
- The model containing curves and cube.lowerBound
- The lowest strike the Piterbarg annuity mapping may use during replication, when normalizing.upperBound
- The maximum strike the Piterbarg annuity mapping may use during replication, when normalizing.numberOfEvaluationPoints
- The number of points the replication may evaluate Piterbarg annuity mapping is normalizing.- Returns:
- The annuity mapping.
-
build
public AnnuityMapping build(AnnuityMapping.AnnuityMappingType type, VolatilityCubeModel model)
Build the annuity mapping.- Parameters:
type
- The desired type of annuity mapping.model
- The model containing curves and cube.- Returns:
- The annuity mapping.
-
-