Class ForwardRateAgreement

java.lang.Object
net.finmath.marketdata2.products.AbstractAnalyticProduct
net.finmath.marketdata2.products.ForwardRateAgreement
All Implemented Interfaces:
AnalyticProduct, Product

public class ForwardRateAgreement extends AbstractAnalyticProduct implements AnalyticProduct
Implements the valuation of a FRA in multi-curve setting. According to Ametrano/Bianchetti (2013) p.22, the size of the convexity adjustment between market FRA and textbook FRA is neglegible. This class can thus be used for the valuation of the market FRA. market conventions (see Ametrano/Bianchetti (2013), p.22): spot offset: 2BD day count convention: act/360 fixing date offset: 2BD
Version:
1.0
Author:
Rebecca Declara, Christian Fries
  • Constructor Details

    • ForwardRateAgreement

      public ForwardRateAgreement(Schedule schedule, double spread, String forwardCurveName, String discountCurveName, boolean isPayer)
      Creates a FRA. The FRA has a unit notional of 1.
      Parameters:
      schedule - The schedule (provides fixing and periods length).
      spread - The market FRA rate
      forwardCurveName - Name of the forward curve
      discountCurveName - Name of the discount curve (possibly multi curve setting).
      isPayer - If true, the fra pays fix, i.e., the payoff is forward - spread. Otherwise it is spread - forward.
    • ForwardRateAgreement

      public ForwardRateAgreement(Schedule schedule, double spread, String forwardCurveName, String discountCurveName)
      Creates a payer FRA. The FRA has a unit notional of 1.
      Parameters:
      schedule - The schedule (provides fixing and periods length).
      spread - The market FRA rate
      forwardCurveName - Name of the forward curve
      discountCurveName - Name of the discount curve (possibly multi curve setting).
  • Method Details

    • getValue

      public RandomVariable getValue(double evaluationTime, AnalyticModel model)
      Description copied from interface: AnalyticProduct
      Return the valuation of the product using the given model. The model has to implement the modes of AnalyticModel.
      Specified by:
      getValue in interface AnalyticProduct
      Parameters:
      evaluationTime - The evaluation time as double. Cash flows prior and including this time are not considered.
      model - The model under which the product is valued.
      Returns:
      The value of the product using the given model.
    • getRate

      public RandomVariable getRate(AnalyticModel model)
      Return the par FRA rate for a given curve.
      Parameters:
      model - A given model.
      Returns:
      The par FRA rate.