Discounting CurrencySwap Engine More...
#include <qle/pricingengines/discountingcurrencyswapengine.hpp>
Inheritance diagram for DiscountingCurrencySwapEngine:Public Member Functions | |
| DiscountingCurrencySwapEngine (const std::vector< Handle< YieldTermStructure > > &discountCurves, const std::vector< Handle< Quote > > &fxQuotes, const std::vector< Currency > ¤cies, const Currency &npvCurrency, boost::optional< bool > includeSettlementDateFlows=boost::none, Date settlementDate=Date(), Date npvDate=Date(), const std::vector< Date > &spotFXSettleDateVec=std::vector< Date >()) | |
| void | calculate () const override |
| std::vector< Handle< YieldTermStructure > > | discountCurves () |
| std::vector< Currency > | currencies () |
| Currency | npvCurrency () |
Discounting CurrencySwap Engine
This class generalizes QuantLib's DiscountingSwapEngine. It takes leg currencies into account and converts into the provided "npv currency", which must be one of the leg currencies. The evaluation date is the reference date of either of the discounting curves (which must be equal).
\ingroup engines
| DiscountingCurrencySwapEngine | ( | const std::vector< Handle< YieldTermStructure > > & | discountCurves, |
| const std::vector< Handle< Quote > > & | fxQuotes, | ||
| const std::vector< Currency > & | currencies, | ||
| const Currency & | npvCurrency, | ||
| boost::optional< bool > | includeSettlementDateFlows = boost::none, |
||
| Date | settlementDate = Date(), |
||
| Date | npvDate = Date(), |
||
| const std::vector< Date > & | spotFXSettleDateVec = std::vector< Date >() |
||
| ) |
The FX spots must be given as units of npvCurrency per respective currency. The spots must be given w.r.t. a settlement date equal to the npv date.