java.lang.Object
net.finmath.marketdata2.products.AbstractAnalyticProduct
net.finmath.marketdata2.products.MarketForwardRateAgreement
- All Implemented Interfaces:
AnalyticProduct
,Product
Implements the valuation of a market forward rate agreement using curves
(discount curve, forward curve).
The value of the forward rate agreement at its maturity time t is
(F(t)-K) / (1 + F(t) * dcf(periodStart,periodEnd)) where F(t) is the forward evaluated at maturity and dcf(periodStart,periodEnd) is a given paymentOffset. The value of the forward rate agreement returned for an earlier time is the above payoff multiplied with the corresponding discount factor curve. Note that this valuation ignores a possible convexity adjustment between the forward and the discount factors since the above formula is not a linear function of F. Put differently, if this product is used to calibrate a forward curve to a forward rate agreement, then the calibrated forward curve will include the convexity adjustment.
(F(t)-K) / (1 + F(t) * dcf(periodStart,periodEnd)) where F(t) is the forward evaluated at maturity and dcf(periodStart,periodEnd) is a given paymentOffset. The value of the forward rate agreement returned for an earlier time is the above payoff multiplied with the corresponding discount factor curve. Note that this valuation ignores a possible convexity adjustment between the forward and the discount factors since the above formula is not a linear function of F. Put differently, if this product is used to calibrate a forward curve to a forward rate agreement, then the calibrated forward curve will include the convexity adjustment.
- Version:
- 1.0
- Author:
- Christian Fries
-
Constructor Summary
ConstructorDescriptionMarketForwardRateAgreement
(double maturity, double paymentOffset, String forwardCurveName, double spread, String discountCurveName) Creates a market forward rate agreement. -
Method Summary
Modifier and TypeMethodDescriptiongetValue
(double evaluationTime, AnalyticModel model) Return the valuation of the product using the given model.Methods inherited from class net.finmath.marketdata2.products.AbstractAnalyticProduct
getValue, getValue
-
Constructor Details
-
MarketForwardRateAgreement
public MarketForwardRateAgreement(double maturity, double paymentOffset, String forwardCurveName, double spread, String discountCurveName) Creates a market forward rate agreement.- Parameters:
maturity
- Maturity, i.e., fixing on the forward curve.paymentOffset
- Payment offset.forwardCurveName
- Name of the forward curve, leave empty if this is a fix payment.spread
- Additional fixed payment (if any).discountCurveName
- Name of the discount curve for the forward.
-
-
Method Details
-
getValue
Description copied from interface:AnalyticProduct
Return the valuation of the product using the given model. The model has to implement the modes ofAnalyticModel
.- Specified by:
getValue
in interfaceAnalyticProduct
- 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.
-