java.lang.Object
net.finmath.marketdata.model.volatility.caplet.tenorconversion.TenorConverter

public class TenorConverter extends Object
This class implements a caplet volatility tenor converter. Given a correlationprovider, the current caplet vol data and the new tenor it converts the volatilities to the new tenor using the method suggested in the paper by Schlenkrich.
Author:
Daniel Willhalm
  • Constructor Details

    • TenorConverter

      public TenorConverter(CorrelationProvider correlationProvider, int currentTenorInMonths, int newTenorInMonths, double[] capletFixingTimeVectorInYears, double[] strikeVector, double[][] capletVolatilities, CapTenorStructure capTenorStructure, AnalyticModel analyticModel2, String indexForDiscount, String indexOldTenor, String indexNewTenor)
      The constructor of the tenor conversion class
      Parameters:
      correlationProvider - The correlation provider.
      currentTenorInMonths - The tenor of the current caplet volatilities.
      newTenorInMonths - The target tenor.
      capletFixingTimeVectorInYears - The fixing times of the caplets.
      strikeVector - The strikes of the caplets.
      capletVolatilities - The caplet volatilities.
      capTenorStructure - Enum determining the currency.
      analyticModel2 - The analytic model containing the curves.
      indexForDiscount - Index of the discount curve.
      indexOldTenor - Index of the old forward curve.
      indexNewTenor - Index of the new forward curve.
  • Method Details

    • convertTenor

      public double[][] convertTenor() throws CalculationException
      Method that converts the current tenor caplet volatilities to the new tenor.
      Returns:
      Caplet volatility matrix adapted to the new tenor.
      Throws:
      CalculationException - Thrown if conversion fails arithmetically.