Logo
Reference manual - version qle_version
CurrencySwap Class Reference

Currency Interest Rate Swap More...

#include <qle/instruments/currencyswap.hpp>

Inheritance diagram for CurrencySwap:

Classes

class  arguments
class  results
class  engine

Public Member Functions

LazyObject interface
void alwaysForwardNotifications () override
Observable interface
void deepUpdate () override
Additional interface
Date startDate () const
Date maturityDate () const
Real legBPS (Size j) const
Real legNPV (Size j) const
Real inCcyLegBPS (Size j) const
Real inCcyLegNPV (Size j) const
DiscountFactor startDiscounts (Size j) const
DiscountFactor endDiscounts (Size j) const
DiscountFactor npvDateDiscount () const
const Leg & leg (Size j) const
const Currency & legCurrency (Size j) const
std::vector< Leg > legs ()
std::vector< Currency > currencies ()

Instrument interface

std::vector< Leg > legs_
std::vector< Real > payer_
std::vector< Currency > currency_
bool isPhysicallySettled_
bool isResettable_
std::vector< Real > legNPV_
std::vector< Real > inCcyLegNPV_
std::vector< Real > legBPS_
std::vector< Real > inCcyLegBPS_
std::vector< DiscountFactor > startDiscounts_
std::vector< DiscountFactor > endDiscounts_
DiscountFactor npvDateDiscount_
bool isExpired () const override
void setupArguments (PricingEngine::arguments *) const override
void fetchResults (const PricingEngine::results *) const override
void setupExpired () const override

Constructors

 CurrencySwap (const std::vector< Leg > &legs, const std::vector< bool > &payer, const std::vector< Currency > &currency, const bool isPhysicallySettled=true, const bool isResettable=false)
 CurrencySwap (Size legs)

Detailed Description

Currency Interest Rate Swap

This instrument generalizes the QuantLib Swap instrument in that it allows multiple legs with different currencies (one per leg)

Constructor & Destructor Documentation

◆ CurrencySwap() [1/2]

CurrencySwap ( const std::vector< Leg > & legs,
const std::vector< bool > & payer,
const std::vector< Currency > & currency,
const bool isPhysicallySettled = true,
const bool isResettable = false )

Multi leg constructor.

◆ CurrencySwap() [2/2]

CurrencySwap ( Size legs)
protected

This constructor can be used by derived classes that will build their legs themselves.