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.