Class AbstractForwardCurve

All Implemented Interfaces:
Serializable, Cloneable, ParameterObject, Curve, ForwardCurve
Direct Known Subclasses:
ForwardCurveFromDiscountCurve, ForwardCurveInterpolation

public abstract class AbstractForwardCurve extends CurveInterpolation implements ForwardCurve
Abstract base class for a forward curve, extending a curve object It stores the maturity of the underlying index (paymentOffset) and the associated discount curve.
Version:
1.0
Author:
Christian Fries
See Also:
  • Constructor Details

    • AbstractForwardCurve

      public AbstractForwardCurve(String name, LocalDate referenceDate, String paymentOffsetCode, BusinessdayCalendar paymentBusinessdayCalendar, BusinessdayCalendar.DateRollConvention paymentDateRollConvention, CurveInterpolation.InterpolationMethod interpolationMethod, CurveInterpolation.ExtrapolationMethod extrapolationMethod, CurveInterpolation.InterpolationEntity interpolationEntity, String discountCurveName)
      Construct a base forward curve with a reference date and a payment offset.
      Parameters:
      name - The name of this curve.
      referenceDate - The reference date for this curve, i.e., the date which defined t=0.
      paymentOffsetCode - The maturity of the index modeled by this curve.
      paymentBusinessdayCalendar - The business day calendar used for adjusting the payment date.
      paymentDateRollConvention - The date roll convention used for adjusting the payment date.
      interpolationMethod - The interpolation method used for the curve.
      extrapolationMethod - The extrapolation method used for the curve.
      interpolationEntity - The entity interpolated/extrapolated.
      discountCurveName - The name of the discount curve associated with this forward curve (e.g. OIS for collateralized forwards).
    • AbstractForwardCurve

      public AbstractForwardCurve(String name, LocalDate referenceDate, String paymentOffsetCode, BusinessdayCalendar paymentBusinessdayCalendar, BusinessdayCalendar.DateRollConvention paymentDateRollConvention, String discountCurveName)
      Construct a base forward curve with a reference date and a payment offset.
      Parameters:
      name - The name of this curve.
      referenceDate - The reference date for this curve, i.e., the date which defined t=0.
      paymentOffsetCode - The maturity of the index modeled by this curve.
      paymentBusinessdayCalendar - The business day calendar used for adjusting the payment date.
      paymentDateRollConvention - The date roll convention used for adjusting the payment date.
      discountCurveName - The name of the discount curve associated with this forward curve (e.g. OIS for collateralized forwards).
    • AbstractForwardCurve

      public AbstractForwardCurve(String name, LocalDate referenceDate, double paymentOffset, String discountCurveName)
      Construct a base forward curve with a reference date and a payment offset.
      Parameters:
      name - The name of this curve.
      referenceDate - The reference date for this curve, i.e., the date which defined t=0.
      paymentOffset - The maturity of the index modeled by this curve.
      discountCurveName - The name of the discount curve associated with this forward curve (e.g. OIS for collateralized forwards).
  • Method Details

    • getDiscountCurveName

      public String getDiscountCurveName()
      Specified by:
      getDiscountCurveName in interface ForwardCurve
      Returns:
      The name of the discount curve associated with this forward curve (e.g. OIS for collateralized forwards)
    • getPaymentOffset

      public double getPaymentOffset(double fixingTime)
      Description copied from interface: ForwardCurve
      Returns the payment offset associated with this forward curve and a corresponding fixingTime.
      Specified by:
      getPaymentOffset in interface ForwardCurve
      Parameters:
      fixingTime - The fixing time of the index associated with this forward curve.
      Returns:
      The payment offset associated with this forward curve.
    • getForwards

      public double[] getForwards(AnalyticModel model, double[] fixingTimes)
      Returns the forwards for a given vector fixing times.
      Parameters:
      model - An analytic model providing a context. The discount curve (if needed) is obtained from this model.
      fixingTimes - The given fixing times.
      Returns:
      The forward rates.
    • toString

      public String toString()
      Overrides:
      toString in class CurveInterpolation
    • getPaymentOffsetCode

      public String getPaymentOffsetCode()
    • getPaymentBusinessdayCalendar

      public BusinessdayCalendar getPaymentBusinessdayCalendar()
    • getPaymentDateRollConvention

      public BusinessdayCalendar.DateRollConvention getPaymentDateRollConvention()