Cross currency fix float MtM resettable swap. More...
#include <qle/instruments/crossccyfixfloatmtmresetswap.hpp>
Classes | |
class | arguments |
class | results |
Public Member Functions | |
Constructors | |
CrossCcyFixFloatMtMResetSwap (QuantLib::Real nominal, const QuantLib::Currency &fixedCurrency, const QuantLib::Schedule &fixedSchedule, QuantLib::Rate fixedRate, const QuantLib::DayCounter &fixedDayCount, const QuantLib::BusinessDayConvention &fixedPaymentBdc, QuantLib::Natural fixedPaymentLag, const QuantLib::Calendar &fixedPaymentCalendar, const QuantLib::Currency &floatCurrency, const QuantLib::Schedule &floatSchedule, const boost::shared_ptr< QuantLib::IborIndex > &floatIndex, QuantLib::Spread floatSpread, const QuantLib::BusinessDayConvention &floatPaymentBdc, QuantLib::Natural floatPaymentLag, const QuantLib::Calendar &floatPaymentCalendar, const boost::shared_ptr< FxIndex > &fxIdx, bool resetsOnFloatLeg=true, bool receiveFixed=true) | |
Inspectors | |
QuantLib::Real | nominal () const |
const QuantLib::Currency & | fixedCurrency () const |
const QuantLib::Schedule & | fixedSchedule () const |
QuantLib::Rate | fixedRate () const |
const QuantLib::DayCounter & | fixedDayCount () const |
const QuantLib::BusinessDayConvention & | fixedPaymentBdc () const |
QuantLib::Natural | fixedPaymentLag () const |
const QuantLib::Calendar & | fixedPaymentCalendar () const |
const QuantLib::Currency & | floatCurrency () const |
const QuantLib::Schedule & | floatSchedule () const |
const boost::shared_ptr< QuantLib::IborIndex > & | floatIndex () const |
QuantLib::Spread | floatSpread () const |
Additional interface | |
QuantLib::Rate | fairFixedRate () const |
QuantLib::Spread | fairSpread () const |
Public Member Functions inherited from CrossCcySwap | |
const Currency & | legCurrency (Size j) const |
Real | inCcyLegBPS (Size j) const |
Real | inCcyLegNPV (Size j) const |
DiscountFactor | npvDateDiscounts (Size j) const |
void | setupArguments (PricingEngine::arguments *args) const override |
void | fetchResults (const PricingEngine::results *) const override |
CrossCcySwap (const Leg &firstLeg, const Currency &firstLegCcy, const Leg &secondLeg, const Currency &secondLegCcy) | |
First leg is paid and the second is received. | |
CrossCcySwap (const std::vector< Leg > &legs, const std::vector< bool > &payer, const std::vector< Currency > ¤cies) | |
Instrument interface | |
void | setupArguments (PricingEngine::arguments *args) const override |
void | fetchResults (const PricingEngine::results *) const override |
void | setupExpired () const override |
Additional Inherited Members | |
Protected Member Functions inherited from CrossCcySwap | |
void | setupExpired () const override |
CrossCcySwap (Size legs) | |
Protected Attributes inherited from CrossCcySwap | |
std::vector< Currency > | currencies_ |
Cross currency fix float MtM resettable swap.
The foreign leg holds the pay currency cashflows and domestic leg holds the receive currency cashflows. The notional resets are applied to the domestic leg.
\ingroup instruments
CrossCcyFixFloatMtMResetSwap | ( | QuantLib::Real | nominal, |
const QuantLib::Currency & | fixedCurrency, | ||
const QuantLib::Schedule & | fixedSchedule, | ||
QuantLib::Rate | fixedRate, | ||
const QuantLib::DayCounter & | fixedDayCount, | ||
const QuantLib::BusinessDayConvention & | fixedPaymentBdc, | ||
QuantLib::Natural | fixedPaymentLag, | ||
const QuantLib::Calendar & | fixedPaymentCalendar, | ||
const QuantLib::Currency & | floatCurrency, | ||
const QuantLib::Schedule & | floatSchedule, | ||
const boost::shared_ptr< QuantLib::IborIndex > & | floatIndex, | ||
QuantLib::Spread | floatSpread, | ||
const QuantLib::BusinessDayConvention & | floatPaymentBdc, | ||
QuantLib::Natural | floatPaymentLag, | ||
const QuantLib::Calendar & | floatPaymentCalendar, | ||
const boost::shared_ptr< FxIndex > & | fxIdx, | ||
bool | resetsOnFloatLeg = true , |
||
bool | receiveFixed = true |
||
) |
First leg holds the pay currency cashflows and the second leg holds the receive currency cashflows.