QuantLib: a free/open-source library for quantitative finance
Fully annotated sources - version 1.32
Loading...
Searching...
No Matches
Public Member Functions | List of all members
MtMCrossCurrencyBasisSwapRateHelper Class Reference

Rate helper for bootstrapping over market-to-market cross-currency basis swaps. More...

#include <ql/experimental/termstructures/crosscurrencyratehelpers.hpp>

+ Inheritance diagram for MtMCrossCurrencyBasisSwapRateHelper:
+ Collaboration diagram for MtMCrossCurrencyBasisSwapRateHelper:

Public Member Functions

 MtMCrossCurrencyBasisSwapRateHelper (const Handle< Quote > &basis, const Period &tenor, Natural fixingDays, const Calendar &calendar, BusinessDayConvention convention, bool endOfMonth, const ext::shared_ptr< IborIndex > &baseCurrencyIndex, const ext::shared_ptr< IborIndex > &quoteCurrencyIndex, const Handle< YieldTermStructure > &collateralCurve, bool isFxBaseCurrencyCollateralCurrency, bool isBasisOnFxBaseCurrencyLeg, bool isFxBaseCurrencyLegResettable)
 
RateHelper interface
Real impliedQuote () const override
 
- Public Member Functions inherited from CrossCurrencyBasisSwapRateHelperBase
void setTermStructure (YieldTermStructure *) override
 
- Public Member Functions inherited from RelativeDateBootstrapHelper< TS >
 RelativeDateBootstrapHelper (const Handle< Quote > &quote)
 
 RelativeDateBootstrapHelper (Real quote)
 
void update () override
 
- Public Member Functions inherited from BootstrapHelper< TS >
 BootstrapHelper (Handle< Quote > quote)
 
 BootstrapHelper (Real quote)
 
 ~BootstrapHelper () override=default
 
const Handle< Quote > & quote () const
 
Real quoteError () const
 
virtual void setTermStructure (TS *)
 sets the term structure to be used for pricing More...
 
virtual Date earliestDate () const
 earliest relevant date More...
 
virtual Date maturityDate () const
 instrument's maturity date More...
 
virtual Date latestRelevantDate () const
 latest relevant date More...
 
virtual Date pillarDate () const
 pillar date More...
 
virtual Date latestDate () const
 latest date More...
 
- Public Member Functions inherited from Observer
 Observer ()=default
 
 Observer (const Observer &)
 
Observeroperator= (const Observer &)
 
virtual ~Observer ()
 
std::pair< iterator, boolregisterWith (const ext::shared_ptr< Observable > &)
 
void registerWithObservables (const ext::shared_ptr< Observer > &)
 
Size unregisterWith (const ext::shared_ptr< Observable > &)
 
void unregisterWithAll ()
 
virtual void update ()=0
 
virtual void deepUpdate ()
 
- Public Member Functions inherited from Observable
 Observable ()
 
 Observable (const Observable &)
 
Observableoperator= (const Observable &)
 
 Observable (Observable &&)=delete
 
Observableoperator= (Observable &&)=delete
 
virtual ~Observable ()=default
 
void notifyObservers ()
 

Visitability

bool isFxBaseCurrencyLegResettable_
 
void accept (AcyclicVisitor &) override
 

Additional Inherited Members

- Public Types inherited from Observer
typedef set_type::iterator iterator
 
- Protected Member Functions inherited from CrossCurrencyBasisSwapRateHelperBase
 CrossCurrencyBasisSwapRateHelperBase (const Handle< Quote > &basis, const Period &tenor, Natural fixingDays, Calendar calendar, BusinessDayConvention convention, bool endOfMonth, ext::shared_ptr< IborIndex > baseCurrencyIndex, ext::shared_ptr< IborIndex > quoteCurrencyIndex, Handle< YieldTermStructure > collateralCurve, bool isFxBaseCurrencyCollateralCurrency, bool isBasisOnFxBaseCurrencyLeg)
 
void initializeDates () override
 
const Handle< YieldTermStructure > & baseCcyLegDiscountHandle () const
 
const Handle< YieldTermStructure > & quoteCcyLegDiscountHandle () const
 
- Protected Member Functions inherited from RelativeDateBootstrapHelper< TS >
- Protected Attributes inherited from CrossCurrencyBasisSwapRateHelperBase
Period tenor_
 
Natural fixingDays_
 
Calendar calendar_
 
BusinessDayConvention convention_
 
bool endOfMonth_
 
ext::shared_ptr< IborIndexbaseCcyIdx_
 
ext::shared_ptr< IborIndexquoteCcyIdx_
 
Handle< YieldTermStructurecollateralHandle_
 
bool isFxBaseCurrencyCollateralCurrency_
 
bool isBasisOnFxBaseCurrencyLeg_
 
Leg baseCcyIborLeg_
 
Leg quoteCcyIborLeg_
 
RelinkableHandle< YieldTermStructuretermStructureHandle_
 
- Protected Attributes inherited from RelativeDateBootstrapHelper< TS >
Date evaluationDate_
 
- Protected Attributes inherited from BootstrapHelper< TS >
Handle< Quotequote_
 
TS * termStructure_
 
Date earliestDate_
 
Date latestDate_
 
Date maturityDate_
 
Date latestRelevantDate_
 
Date pillarDate_
 

Detailed Description

Rate helper for bootstrapping over market-to-market cross-currency basis swaps.

Helper for a cross currency swap with resetting notional. This means that at each interest payment the notional on the MtM leg is being reset to reflect the changes in the FX rate - reducing the counterparty and FX risk of the structure.

For more details see: N. Moreni, A. Pallavicini (2015) FX Modelling in Collateralized Markets: foreign measures, basis curves and pricing formulae.

Definition at line 132 of file crosscurrencyratehelpers.hpp.

Constructor & Destructor Documentation

◆ MtMCrossCurrencyBasisSwapRateHelper()

MtMCrossCurrencyBasisSwapRateHelper ( const Handle< Quote > &  basis,
const Period tenor,
Natural  fixingDays,
const Calendar calendar,
BusinessDayConvention  convention,
bool  endOfMonth,
const ext::shared_ptr< IborIndex > &  baseCurrencyIndex,
const ext::shared_ptr< IborIndex > &  quoteCurrencyIndex,
const Handle< YieldTermStructure > &  collateralCurve,
bool  isFxBaseCurrencyCollateralCurrency,
bool  isBasisOnFxBaseCurrencyLeg,
bool  isFxBaseCurrencyLegResettable 
)

Definition at line 247 of file crosscurrencyratehelpers.cpp.

Member Function Documentation

◆ impliedQuote()

Real impliedQuote ( ) const
overridevirtual

Implements BootstrapHelper< TS >.

Definition at line 273 of file crosscurrencyratehelpers.cpp.

+ Here is the call graph for this function:

◆ accept()

void accept ( AcyclicVisitor v)
overridevirtual

Reimplemented from BootstrapHelper< TS >.

Definition at line 295 of file crosscurrencyratehelpers.cpp.

+ Here is the call graph for this function:

Member Data Documentation

◆ isFxBaseCurrencyLegResettable_

bool isFxBaseCurrencyLegResettable_
private

Definition at line 155 of file crosscurrencyratehelpers.hpp.