Average overnight index swap. More...
#include <qle/instruments/averageois.hpp>
Inheritance diagram for AverageOIS:
Collaboration diagram for AverageOIS:Public Types | |
| enum | Type { Receiver = -1 , Payer = 1 } |
| Receiver (Payer) means receive (pay) fixed. More... | |
Public Member Functions | |
| AverageOIS (Type type, Real nominal, const Schedule &fixedSchedule, Rate fixedRate, const DayCounter &fixedDayCounter, BusinessDayConvention fixedPaymentAdjustment, const Calendar &fixedPaymentCalendar, const Schedule &onSchedule, const QuantLib::ext::shared_ptr< OvernightIndex > &overnightIndex, BusinessDayConvention onPaymentAdjustment, const Calendar &onPaymentCalendar, Natural rateCutoff=0, Spread onSpread=0.0, Real onGearing=1.0, const DayCounter &onDayCounter=DayCounter(), const QuantLib::ext::shared_ptr< AverageONIndexedCouponPricer > &onCouponPricer=QuantLib::ext::shared_ptr< AverageONIndexedCouponPricer >(), const bool telescopicValueDates=false) | |
| Arithmetic average ON leg vs. fixed leg constructor. More... | |
| AverageOIS (Type type, std::vector< Real > nominals, const Schedule &fixedSchedule, std::vector< Rate > fixedRates, const DayCounter &fixedDayCounter, BusinessDayConvention fixedPaymentAdjustment, const Calendar &fixedPaymentCalendar, const Schedule &onSchedule, const QuantLib::ext::shared_ptr< OvernightIndex > &overnightIndex, BusinessDayConvention onPaymentAdjustment, const Calendar &onPaymentCalendar, Natural rateCutoff=0, std::vector< Spread > onSpreads=std::vector< Spread >(1, 0.0), std::vector< Real > onGearings=std::vector< Real >(1, 1.0), const DayCounter &onDayCounter=DayCounter(), const QuantLib::ext::shared_ptr< AverageONIndexedCouponPricer > &onCouponPricer=QuantLib::ext::shared_ptr< AverageONIndexedCouponPricer >(), const bool telescopicValueDates=false) | |
Inspectors | |
| Type | type () const |
| Real | nominal () const |
| const std::vector< Real > & | nominals () const |
| Rate | fixedRate () const |
| const std::vector< Rate > & | fixedRates () const |
| const DayCounter & | fixedDayCounter () |
| const QuantLib::ext::shared_ptr< OvernightIndex > & | overnightIndex () |
| Natural | rateCutoff () |
| Spread | onSpread () const |
| const std::vector< Spread > & | onSpreads () const |
| Real | onGearing () const |
| const std::vector< Real > & | onGearings () const |
| const DayCounter & | onDayCounter () |
| const Leg & | fixedLeg () const |
| const Leg & | overnightLeg () const |
Results | |
| Type | type_ |
| std::vector< Real > | nominals_ |
| std::vector< Rate > | fixedRates_ |
| DayCounter | fixedDayCounter_ |
| BusinessDayConvention | fixedPaymentAdjustment_ |
| Calendar | fixedPaymentCalendar_ |
| QuantLib::ext::shared_ptr< OvernightIndex > | overnightIndex_ |
| BusinessDayConvention | onPaymentAdjustment_ |
| Calendar | onPaymentCalendar_ |
| Natural | rateCutoff_ |
| std::vector< Spread > | onSpreads_ |
| std::vector< Real > | onGearings_ |
| DayCounter | onDayCounter_ |
| QuantLib::ext::shared_ptr< AverageONIndexedCouponPricer > | onCouponPricer_ |
| bool | telescopicValueDates_ |
| Real | fixedLegBPS () const |
| Real | fixedLegNPV () const |
| Real | fairRate () const |
| Real | overnightLegBPS () const |
| Real | overnightLegNPV () const |
| Spread | fairSpread () const |
| void | setONIndexedCouponPricer (const QuantLib::ext::shared_ptr< AverageONIndexedCouponPricer > &onCouponPricer) |
| void | initialize (const Schedule &fixedLegSchedule, const Schedule &onLegSchedule) |
Average overnight index swap.
Swap with first leg fixed and the second leg being an arithmetic average overnight index.
\ingroup instruments
Definition at line 46 of file averageois.hpp.
| enum Type |
Receiver (Payer) means receive (pay) fixed.
| Enumerator | |
|---|---|
| Receiver | |
| Payer | |
Definition at line 49 of file averageois.hpp.
| AverageOIS | ( | Type | type, |
| Real | nominal, | ||
| const Schedule & | fixedSchedule, | ||
| Rate | fixedRate, | ||
| const DayCounter & | fixedDayCounter, | ||
| BusinessDayConvention | fixedPaymentAdjustment, | ||
| const Calendar & | fixedPaymentCalendar, | ||
| const Schedule & | onSchedule, | ||
| const QuantLib::ext::shared_ptr< OvernightIndex > & | overnightIndex, | ||
| BusinessDayConvention | onPaymentAdjustment, | ||
| const Calendar & | onPaymentCalendar, | ||
| Natural | rateCutoff = 0, |
||
| Spread | onSpread = 0.0, |
||
| Real | onGearing = 1.0, |
||
| const DayCounter & | onDayCounter = DayCounter(), |
||
| const QuantLib::ext::shared_ptr< AverageONIndexedCouponPricer > & | onCouponPricer = QuantLib::ext::shared_ptr<AverageONIndexedCouponPricer>(), |
||
| const bool | telescopicValueDates = false |
||
| ) |
Arithmetic average ON leg vs. fixed leg constructor.
Definition at line 26 of file averageois.cpp.
Here is the call graph for this function:| AverageOIS | ( | Type | type, |
| std::vector< Real > | nominals, | ||
| const Schedule & | fixedSchedule, | ||
| std::vector< Rate > | fixedRates, | ||
| const DayCounter & | fixedDayCounter, | ||
| BusinessDayConvention | fixedPaymentAdjustment, | ||
| const Calendar & | fixedPaymentCalendar, | ||
| const Schedule & | onSchedule, | ||
| const QuantLib::ext::shared_ptr< OvernightIndex > & | overnightIndex, | ||
| BusinessDayConvention | onPaymentAdjustment, | ||
| const Calendar & | onPaymentCalendar, | ||
| Natural | rateCutoff = 0, |
||
| std::vector< Spread > | onSpreads = std::vector<Spread>(1, 0.0), |
||
| std::vector< Real > | onGearings = std::vector<Real>(1, 1.0), |
||
| const DayCounter & | onDayCounter = DayCounter(), |
||
| const QuantLib::ext::shared_ptr< AverageONIndexedCouponPricer > & | onCouponPricer = QuantLib::ext::shared_ptr<AverageONIndexedCouponPricer>(), |
||
| const bool | telescopicValueDates = false |
||
| ) |
Arithmetic average ON leg vs. fixed leg constructor, allowing for varying nominals, fixed rates, ON leg spreads and ON leg gearings.
Definition at line 43 of file averageois.cpp.
Here is the call graph for this function:| Type type | ( | ) | const |
Definition at line 78 of file averageois.hpp.
| Real nominal | ( | ) | const |
Definition at line 101 of file averageois.cpp.
| const std::vector< Real > & nominals | ( | ) | const |
Definition at line 81 of file averageois.hpp.
| Rate fixedRate | ( | ) | const |
Definition at line 106 of file averageois.cpp.
| const std::vector< Rate > & fixedRates | ( | ) | const |
Definition at line 84 of file averageois.hpp.
| const DayCounter & fixedDayCounter | ( | ) |
Definition at line 85 of file averageois.hpp.
| const QuantLib::ext::shared_ptr< OvernightIndex > & overnightIndex | ( | ) |
Definition at line 87 of file averageois.hpp.
| Natural rateCutoff | ( | ) |
Definition at line 88 of file averageois.hpp.
| Spread onSpread | ( | ) | const |
Definition at line 111 of file averageois.cpp.
| const std::vector< Spread > & onSpreads | ( | ) | const |
Definition at line 90 of file averageois.hpp.
| Real onGearing | ( | ) | const |
Definition at line 116 of file averageois.cpp.
| const std::vector< Real > & onGearings | ( | ) | const |
Definition at line 92 of file averageois.hpp.
| const DayCounter & onDayCounter | ( | ) |
Definition at line 93 of file averageois.hpp.
| const Leg & fixedLeg | ( | ) | const |
Definition at line 95 of file averageois.hpp.
| const Leg & overnightLeg | ( | ) | const |
Definition at line 96 of file averageois.hpp.
| Real fixedLegBPS | ( | ) | const |
Definition at line 121 of file averageois.cpp.
Here is the caller graph for this function:| Real fixedLegNPV | ( | ) | const |
Definition at line 127 of file averageois.cpp.
| Real fairRate | ( | ) | const |
Definition at line 133 of file averageois.cpp.
Here is the call graph for this function:| Real overnightLegBPS | ( | ) | const |
Definition at line 139 of file averageois.cpp.
Here is the caller graph for this function:| Real overnightLegNPV | ( | ) | const |
Definition at line 145 of file averageois.cpp.
Here is the caller graph for this function:| Spread fairSpread | ( | ) | const |
Definition at line 151 of file averageois.cpp.
Here is the call graph for this function:| void setONIndexedCouponPricer | ( | const QuantLib::ext::shared_ptr< AverageONIndexedCouponPricer > & | onCouponPricer | ) |
Definition at line 158 of file averageois.cpp.
Here is the call graph for this function:
|
private |
Definition at line 61 of file averageois.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 115 of file averageois.hpp.
|
private |
Definition at line 116 of file averageois.hpp.
|
private |
Definition at line 118 of file averageois.hpp.
|
private |
Definition at line 119 of file averageois.hpp.
|
private |
Definition at line 120 of file averageois.hpp.
|
private |
Definition at line 121 of file averageois.hpp.
|
private |
Definition at line 123 of file averageois.hpp.
|
private |
Definition at line 124 of file averageois.hpp.
|
private |
Definition at line 125 of file averageois.hpp.
|
private |
Definition at line 126 of file averageois.hpp.
|
private |
Definition at line 127 of file averageois.hpp.
|
private |
Definition at line 128 of file averageois.hpp.
|
private |
Definition at line 129 of file averageois.hpp.
|
private |
Definition at line 130 of file averageois.hpp.
|
private |
Definition at line 131 of file averageois.hpp.