Logo
Reference manual - version qle_version
CrossCcySwap Class Reference

Cross currency swap. More...

#include <qle/instruments/crossccyswap.hpp>

Inheritance diagram for CrossCcySwap:

Classes

class  arguments
class  results
class  engine

Public Member Functions

Additional interface
const Currency & legCurrency (Size j) const
Real inCcyLegBPS (Size j) const
Real inCcyLegNPV (Size j) const
DiscountFactor npvDateDiscounts (Size j) const

Instrument interface

std::vector< Currency > currencies_
void setupArguments (PricingEngine::arguments *args) const override
void fetchResults (const PricingEngine::results *) const override
void setupExpired () const override

Constructors

 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 > &currencies)
 CrossCcySwap (Size legs)

Detailed Description

Cross currency swap.

The first leg holds the pay currency cashflows and second leg holds the receive currency cashflows.

    \ingroup instruments

Constructor & Destructor Documentation

◆ CrossCcySwap() [1/2]

CrossCcySwap ( const std::vector< Leg > & legs,
const std::vector< bool > & payer,
const std::vector< Currency > & currencies )

Multi leg constructor.

◆ CrossCcySwap() [2/2]

CrossCcySwap ( Size legs)
protected

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