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

helper class More...

#include <ql/instruments/makeois.hpp>

+ Collaboration diagram for MakeOIS:

Public Member Functions

 MakeOIS (const Period &swapTenor, const ext::shared_ptr< OvernightIndex > &overnightIndex, Rate fixedRate=Null< Rate >(), const Period &fwdStart=0 *Days)
 
 operator OvernightIndexedSwap () const
 
 operator ext::shared_ptr< OvernightIndexedSwap > () const
 
MakeOISreceiveFixed (bool flag=true)
 
MakeOISwithType (Swap::Type type)
 
MakeOISwithNominal (Real n)
 
MakeOISwithSettlementDays (Natural settlementDays)
 
MakeOISwithEffectiveDate (const Date &)
 
MakeOISwithTerminationDate (const Date &)
 
MakeOISwithRule (DateGeneration::Rule r)
 
MakeOISwithPaymentFrequency (Frequency f)
 
MakeOISwithPaymentAdjustment (BusinessDayConvention convention)
 
MakeOISwithPaymentLag (Natural lag)
 
MakeOISwithPaymentCalendar (const Calendar &cal)
 
MakeOISwithEndOfMonth (bool flag=true)
 
MakeOISwithFixedLegDayCount (const DayCounter &dc)
 
MakeOISwithOvernightLegSpread (Spread sp)
 
MakeOISwithDiscountingTermStructure (const Handle< YieldTermStructure > &discountingTermStructure)
 
MakeOISwithTelescopicValueDates (bool telescopicValueDates)
 
MakeOISwithAveragingMethod (RateAveraging::Type averagingMethod)
 
MakeOISwithPricingEngine (const ext::shared_ptr< PricingEngine > &engine)
 

Private Attributes

Period swapTenor_
 
ext::shared_ptr< OvernightIndexovernightIndex_
 
Rate fixedRate_
 
Period forwardStart_
 
Natural settlementDays_ = 2
 
Date effectiveDate_
 
Date terminationDate_
 
Calendar calendar_
 
Frequency paymentFrequency_ = Annual
 
Calendar paymentCalendar_
 
BusinessDayConvention paymentAdjustment_ = Following
 
Natural paymentLag_ = 0
 
DateGeneration::Rule rule_ = DateGeneration::Backward
 
bool endOfMonth_ = false
 
bool isDefaultEOM_ = true
 
Swap::Type type_ = Swap::Payer
 
Real nominal_ = 1.0
 
Spread overnightSpread_ = 0.0
 
DayCounter fixedDayCount_
 
ext::shared_ptr< PricingEngineengine_
 
bool telescopicValueDates_ = false
 
RateAveraging::Type averagingMethod_ = RateAveraging::Compound
 

Detailed Description

helper class

This class provides a more comfortable way to instantiate overnight indexed swaps.

Definition at line 39 of file makeois.hpp.

Constructor & Destructor Documentation

◆ MakeOIS()

MakeOIS ( const Period swapTenor,
const ext::shared_ptr< OvernightIndex > &  overnightIndex,
Rate  fixedRate = Null<Rate>(),
const Period fwdStart = 0*Days 
)

Definition at line 30 of file makeois.cpp.

Member Function Documentation

◆ operator OvernightIndexedSwap()

operator OvernightIndexedSwap ( ) const

Definition at line 41 of file makeois.cpp.

◆ operator ext::shared_ptr< OvernightIndexedSwap >()

operator ext::shared_ptr< OvernightIndexedSwap > ( ) const

Definition at line 46 of file makeois.cpp.

+ Here is the call graph for this function:

◆ receiveFixed()

MakeOIS & receiveFixed ( bool  flag = true)

Definition at line 135 of file makeois.cpp.

◆ withType()

MakeOIS & withType ( Swap::Type  type)

Definition at line 140 of file makeois.cpp.

◆ withNominal()

MakeOIS & withNominal ( Real  n)

Definition at line 145 of file makeois.cpp.

◆ withSettlementDays()

MakeOIS & withSettlementDays ( Natural  settlementDays)

Definition at line 150 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withEffectiveDate()

MakeOIS & withEffectiveDate ( const Date effectiveDate)

Definition at line 156 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withTerminationDate()

MakeOIS & withTerminationDate ( const Date terminationDate)

Definition at line 161 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withRule()

MakeOIS & withRule ( DateGeneration::Rule  r)

Definition at line 189 of file makeois.cpp.

◆ withPaymentFrequency()

MakeOIS & withPaymentFrequency ( Frequency  f)

Definition at line 167 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withPaymentAdjustment()

MakeOIS & withPaymentAdjustment ( BusinessDayConvention  convention)

Definition at line 174 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withPaymentLag()

MakeOIS & withPaymentLag ( Natural  lag)

Definition at line 179 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withPaymentCalendar()

MakeOIS & withPaymentCalendar ( const Calendar cal)

Definition at line 184 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withEndOfMonth()

MakeOIS & withEndOfMonth ( bool  flag = true)

Definition at line 215 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withFixedLegDayCount()

MakeOIS & withFixedLegDayCount ( const DayCounter dc)

Definition at line 210 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withOvernightLegSpread()

MakeOIS & withOvernightLegSpread ( Spread  sp)

Definition at line 221 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withDiscountingTermStructure()

MakeOIS & withDiscountingTermStructure ( const Handle< YieldTermStructure > &  discountingTermStructure)

Definition at line 196 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withTelescopicValueDates()

MakeOIS & withTelescopicValueDates ( bool  telescopicValueDates)

Definition at line 226 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withAveragingMethod()

MakeOIS & withAveragingMethod ( RateAveraging::Type  averagingMethod)

Definition at line 231 of file makeois.cpp.

+ Here is the caller graph for this function:

◆ withPricingEngine()

MakeOIS & withPricingEngine ( const ext::shared_ptr< PricingEngine > &  engine)

Definition at line 204 of file makeois.cpp.

Member Data Documentation

◆ swapTenor_

Period swapTenor_
private

Definition at line 79 of file makeois.hpp.

◆ overnightIndex_

ext::shared_ptr<OvernightIndex> overnightIndex_
private

Definition at line 80 of file makeois.hpp.

◆ fixedRate_

Rate fixedRate_
private

Definition at line 81 of file makeois.hpp.

◆ forwardStart_

Period forwardStart_
private

Definition at line 82 of file makeois.hpp.

◆ settlementDays_

Natural settlementDays_ = 2
private

Definition at line 84 of file makeois.hpp.

◆ effectiveDate_

Date effectiveDate_
private

Definition at line 85 of file makeois.hpp.

◆ terminationDate_

Date terminationDate_
private

Definition at line 85 of file makeois.hpp.

◆ calendar_

Calendar calendar_
private

Definition at line 86 of file makeois.hpp.

◆ paymentFrequency_

Frequency paymentFrequency_ = Annual
private

Definition at line 88 of file makeois.hpp.

◆ paymentCalendar_

Calendar paymentCalendar_
private

Definition at line 89 of file makeois.hpp.

◆ paymentAdjustment_

BusinessDayConvention paymentAdjustment_ = Following
private

Definition at line 90 of file makeois.hpp.

◆ paymentLag_

Natural paymentLag_ = 0
private

Definition at line 91 of file makeois.hpp.

◆ rule_

Definition at line 93 of file makeois.hpp.

◆ endOfMonth_

bool endOfMonth_ = false
private

Definition at line 94 of file makeois.hpp.

◆ isDefaultEOM_

bool isDefaultEOM_ = true
private

Definition at line 94 of file makeois.hpp.

◆ type_

Swap::Type type_ = Swap::Payer
private

Definition at line 96 of file makeois.hpp.

◆ nominal_

Real nominal_ = 1.0
private

Definition at line 97 of file makeois.hpp.

◆ overnightSpread_

Spread overnightSpread_ = 0.0
private

Definition at line 99 of file makeois.hpp.

◆ fixedDayCount_

DayCounter fixedDayCount_
private

Definition at line 100 of file makeois.hpp.

◆ engine_

ext::shared_ptr<PricingEngine> engine_
private

Definition at line 102 of file makeois.hpp.

◆ telescopicValueDates_

bool telescopicValueDates_ = false
private

Definition at line 104 of file makeois.hpp.

◆ averagingMethod_

RateAveraging::Type averagingMethod_ = RateAveraging::Compound
private

Definition at line 105 of file makeois.hpp.