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 Details

    • 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 Details

    • 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

      Build the annuity mapping.
      Parameters:
      type - The desired type of annuity mapping.
      model - The model containing curves and cube.
      Returns:
      The annuity mapping.