24#ifndef quantext_oisratehelper_hpp
25#define quantext_oisratehelper_hpp
27#include <ql/instruments/overnightindexedswap.hpp>
28#include <ql/termstructures/yield/ratehelpers.hpp>
38 OISRateHelper(Natural settlementDays,
const Period& swapTenor,
const Handle<Quote>& fixedRate,
39 const QuantLib::ext::shared_ptr<OvernightIndex>& overnightIndex,
const DayCounter& fixedDayCounter,
40 const Calendar& fixedCalendar, Natural paymentLag = 0,
bool endOfMonth =
false,
41 Frequency paymentFrequency = Annual, BusinessDayConvention fixedConvention = Following,
42 BusinessDayConvention paymentAdjustment = Following,
43 DateGeneration::Rule rule = DateGeneration::Backward,
44 const Handle<YieldTermStructure>& discountingCurve = Handle<YieldTermStructure>(),
45 bool telescopicValueDates =
false, Pillar::Choice pillar = Pillar::LastRelevantDate,
46 Date customPillarDate = Date());
54 QuantLib::ext::shared_ptr<OvernightIndexedSwap>
swap()
const {
return swap_; }
58 void accept(AcyclicVisitor&)
override;
75 QuantLib::ext::shared_ptr<OvernightIndexedSwap>
swap_;
88 DatedOISRateHelper(
const Date& startDate,
const Date& endDate,
const Handle<Quote>& fixedRate,
89 const QuantLib::ext::shared_ptr<OvernightIndex>& overnightIndex,
const DayCounter& fixedDayCounter,
90 const Calendar& fixedCalendar, Natural paymentLag = 0, Frequency paymentFrequency = Annual,
91 BusinessDayConvention fixedConvention = Following,
92 BusinessDayConvention paymentAdjustment = Following,
93 DateGeneration::Rule rule = DateGeneration::Backward,
94 const Handle<YieldTermStructure>& discountingCurve = Handle<YieldTermStructure>(),
95 bool telescopicValueDates =
false, Pillar::Choice pillar = Pillar::LastRelevantDate,
96 Date customPillarDate = Date());
105 void accept(AcyclicVisitor&)
override;
117 QuantLib::ext::shared_ptr<OvernightIndexedSwap>
swap_;
Rate helper for bootstrapping using Overnight Indexed Swaps.
BusinessDayConvention paymentAdjustment_
RelinkableHandle< YieldTermStructure > discountRelinkableHandle_
void setTermStructure(YieldTermStructure *) override
BusinessDayConvention fixedConvention_
QuantLib::ext::shared_ptr< OvernightIndex > overnightIndex_
bool telescopicValueDates_
DayCounter fixedDayCounter_
RelinkableHandle< YieldTermStructure > termStructureHandle_
Pillar::Choice pillarChoice_
Handle< YieldTermStructure > discountHandle_
QuantLib::ext::shared_ptr< OvernightIndexedSwap > swap_
void accept(AcyclicVisitor &) override
DateGeneration::Rule rule_
Real impliedQuote() const override
Frequency paymentFrequency_
Rate helper for bootstrapping using Overnight Indexed Swaps.
BusinessDayConvention paymentAdjustment_
RelinkableHandle< YieldTermStructure > discountRelinkableHandle_
void setTermStructure(YieldTermStructure *) override
BusinessDayConvention fixedConvention_
QuantLib::ext::shared_ptr< OvernightIndex > overnightIndex_
bool telescopicValueDates_
DayCounter fixedDayCounter_
RelinkableHandle< YieldTermStructure > termStructureHandle_
Pillar::Choice pillarChoice_
Handle< YieldTermStructure > discountHandle_
QuantLib::ext::shared_ptr< OvernightIndexedSwap > swap_
void accept(AcyclicVisitor &) override
DateGeneration::Rule rule_
void initializeDates() override
Real impliedQuote() const override
Frequency paymentFrequency_
QuantLib::ext::shared_ptr< OvernightIndexedSwap > swap() const