QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
Public Member Functions | List of all members
OISRateHelper Class Reference

Rate helper for bootstrapping over Overnight Indexed Swap rates. More...

#include <oisratehelper.hpp>

+ Inheritance diagram for OISRateHelper:
+ Collaboration diagram for OISRateHelper:

Public Member Functions

 OISRateHelper (Natural settlementDays, const Period &tenor, const Handle< Quote > &fixedRate, const ext::shared_ptr< OvernightIndex > &overnightIndex, Handle< YieldTermStructure > discountingCurve={}, bool telescopicValueDates=false, Integer paymentLag=0, BusinessDayConvention paymentConvention=Following, Frequency paymentFrequency=Annual, Calendar paymentCalendar=Calendar(), const Period &forwardStart=0 *Days, Spread overnightSpread=0.0, Pillar::Choice pillar=Pillar::LastRelevantDate, Date customPillarDate=Date(), RateAveraging::Type averagingMethod=RateAveraging::Compound, ext::optional< bool > endOfMonth=ext::nullopt, ext::optional< Frequency > fixedPaymentFrequency=ext::nullopt, Calendar fixedCalendar=Calendar())
 
RateHelper interface
Real impliedQuote () const override
 
void setTermStructure (YieldTermStructure *) override
 
inspectors
ext::shared_ptr< OvernightIndexedSwapswap () const
 
- 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

Pillar::Choice pillarChoice_
 
Natural settlementDays_
 
Period tenor_
 
ext::shared_ptr< OvernightIndexovernightIndex_
 
ext::shared_ptr< OvernightIndexedSwapswap_
 
RelinkableHandle< YieldTermStructuretermStructureHandle_
 
Handle< YieldTermStructurediscountHandle_
 
bool telescopicValueDates_
 
RelinkableHandle< YieldTermStructurediscountRelinkableHandle_
 
Integer paymentLag_
 
BusinessDayConvention paymentConvention_
 
Frequency paymentFrequency_
 
Calendar paymentCalendar_
 
Period forwardStart_
 
Spread overnightSpread_
 
RateAveraging::Type averagingMethod_
 
ext::optional< boolendOfMonth_
 
ext::optional< FrequencyfixedPaymentFrequency_
 
Calendar fixedCalendar_
 
void accept (AcyclicVisitor &) override
 
void initializeDates () override
 

Additional Inherited Members

- Public Types inherited from Observer
typedef set_type::iterator iterator
 
- Protected Member Functions inherited from RelativeDateBootstrapHelper< TS >
- 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 Overnight Indexed Swap rates.

Definition at line 35 of file oisratehelper.hpp.

Constructor & Destructor Documentation

◆ OISRateHelper()

OISRateHelper ( Natural  settlementDays,
const Period tenor,
const Handle< Quote > &  fixedRate,
const ext::shared_ptr< OvernightIndex > &  overnightIndex,
Handle< YieldTermStructure discountingCurve = {},
bool  telescopicValueDates = false,
Integer  paymentLag = 0,
BusinessDayConvention  paymentConvention = Following,
Frequency  paymentFrequency = Annual,
Calendar  paymentCalendar = Calendar(),
const Period forwardStart = 0 * Days,
Spread  overnightSpread = 0.0,
Pillar::Choice  pillar = Pillar::LastRelevantDate,
Date  customPillarDate = Date(),
RateAveraging::Type  averagingMethod = RateAveraging::Compound,
ext::optional< bool endOfMonth = ext::nullopt,
ext::optional< Frequency fixedPaymentFrequency = ext::nullopt,
Calendar  fixedCalendar = Calendar() 
)

Definition at line 30 of file oisratehelper.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ impliedQuote()

Real impliedQuote ( ) const
overridevirtual

Implements BootstrapHelper< TS >.

Definition at line 145 of file oisratehelper.cpp.

◆ setTermStructure()

void setTermStructure ( YieldTermStructure t)
override

Definition at line 129 of file oisratehelper.cpp.

+ Here is the call graph for this function:

◆ swap()

ext::shared_ptr< OvernightIndexedSwap > swap ( ) const

Definition at line 64 of file oisratehelper.hpp.

◆ accept()

void accept ( AcyclicVisitor v)
overridevirtual

Reimplemented from BootstrapHelper< TS >.

Definition at line 152 of file oisratehelper.cpp.

+ Here is the call graph for this function:

◆ initializeDates()

void initializeDates ( )
overrideprotectedvirtual

Implements RelativeDateBootstrapHelper< TS >.

Definition at line 70 of file oisratehelper.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ pillarChoice_

Pillar::Choice pillarChoice_
protected

Definition at line 72 of file oisratehelper.hpp.

◆ settlementDays_

Natural settlementDays_
protected

Definition at line 74 of file oisratehelper.hpp.

◆ tenor_

Period tenor_
protected

Definition at line 75 of file oisratehelper.hpp.

◆ overnightIndex_

ext::shared_ptr<OvernightIndex> overnightIndex_
protected

Definition at line 76 of file oisratehelper.hpp.

◆ swap_

ext::shared_ptr<OvernightIndexedSwap> swap_
protected

Definition at line 78 of file oisratehelper.hpp.

◆ termStructureHandle_

RelinkableHandle<YieldTermStructure> termStructureHandle_
protected

Definition at line 79 of file oisratehelper.hpp.

◆ discountHandle_

Handle<YieldTermStructure> discountHandle_
protected

Definition at line 81 of file oisratehelper.hpp.

◆ telescopicValueDates_

bool telescopicValueDates_
protected

Definition at line 82 of file oisratehelper.hpp.

◆ discountRelinkableHandle_

RelinkableHandle<YieldTermStructure> discountRelinkableHandle_
protected

Definition at line 83 of file oisratehelper.hpp.

◆ paymentLag_

Integer paymentLag_
protected

Definition at line 85 of file oisratehelper.hpp.

◆ paymentConvention_

BusinessDayConvention paymentConvention_
protected

Definition at line 86 of file oisratehelper.hpp.

◆ paymentFrequency_

Frequency paymentFrequency_
protected

Definition at line 87 of file oisratehelper.hpp.

◆ paymentCalendar_

Calendar paymentCalendar_
protected

Definition at line 88 of file oisratehelper.hpp.

◆ forwardStart_

Period forwardStart_
protected

Definition at line 89 of file oisratehelper.hpp.

◆ overnightSpread_

Spread overnightSpread_
protected

Definition at line 90 of file oisratehelper.hpp.

◆ averagingMethod_

RateAveraging::Type averagingMethod_
protected

Definition at line 91 of file oisratehelper.hpp.

◆ endOfMonth_

ext::optional<bool> endOfMonth_
protected

Definition at line 92 of file oisratehelper.hpp.

◆ fixedPaymentFrequency_

ext::optional<Frequency> fixedPaymentFrequency_
protected

Definition at line 93 of file oisratehelper.hpp.

◆ fixedCalendar_

Calendar fixedCalendar_
protected

Definition at line 94 of file oisratehelper.hpp.