Payment discounting engine. More...
#include <qle/pricingengines/paymentdiscountingengine.hpp>
Public Member Functions | |
Constructors | |
| PaymentDiscountingEngine (const Handle< YieldTermStructure > &discountCurve, const Handle< Quote > &spotFX=Handle< Quote >(), QuantLib::ext::optional< bool > includeSettlementDateFlows=QuantLib::ext::nullopt, const Date &settlementDate=Date(), const Date &npvDate=Date()) | |
PricingEngine interface | |
| void | calculate () const override |
Inspectors | |
| const Handle< YieldTermStructure > & | discountCurve () const |
| const Handle< Quote > & | spotFX () const |
Payment discounting engine.
This class implements a discounting engine for a single cash flow. The cash flow is discounted using its currency's discount curve. Optionally, the NPV is converted into a different NPV currency. The FX spot rate for that purpose converts the in-currency NPV by multiplication.
| PaymentDiscountingEngine | ( | const Handle< YieldTermStructure > & | discountCurve, |
| const Handle< Quote > & | spotFX = Handle< Quote >(), | ||
| QuantLib::ext::optional< bool > | includeSettlementDateFlows = QuantLib::ext::nullopt, | ||
| const Date & | settlementDate = Date(), | ||
| const Date & | npvDate = Date() ) |
| discountCurve | Discount curve for the cash flow |
| spotFX | The market spot rate quote for multiplicative conversion into the NPV currency, can be empty |
| includeSettlementDateFlows,settlementDate | If includeSettlementDateFlows is true (false), cashflows on the settlementDate are (not) included in the NPV. If not given the settlement date is set to the npv date. |
| npvDate | Discount to this date. If not given the npv date is set to the evaluation date |