QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
|
overnight coupon More...
#include <overnightindexedcoupon.hpp>
Public Member Functions | |
OvernightIndexedCoupon (const Date &paymentDate, Real nominal, const Date &startDate, const Date &endDate, const ext::shared_ptr< OvernightIndex > &overnightIndex, Real gearing=1.0, Spread spread=0.0, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date(), const DayCounter &dayCounter=DayCounter(), bool telescopicValueDates=false, RateAveraging::Type averagingMethod=RateAveraging::Compound, Natural lookbackDays=Null< Natural >(), Natural lockoutDays=0, bool applyObservationShift=false) | |
Inspectors | |
const std::vector< Date > & | fixingDates () const |
fixing dates for the rates to be compounded More... | |
const std::vector< Time > & | dt () const |
accrual (compounding) periods More... | |
const std::vector< Rate > & | indexFixings () const |
fixings to be compounded More... | |
const std::vector< Date > & | valueDates () const |
value dates for the rates to be compounded More... | |
const std::vector< Date > & | interestDates () const |
interest dates for the rates to be compounded More... | |
RateAveraging::Type | averagingMethod () const |
averaging method More... | |
Natural | lockoutDays () const |
lockout days More... | |
bool | applyObservationShift () const |
apply observation shift More... | |
FloatingRateCoupon interface | |
Date | fixingDate () const override |
the date when the coupon is fully determined More... | |
Real | accruedAmount (const Date &) const override |
accrued amount at the given date More... | |
Visitability | |
void | accept (AcyclicVisitor &) override |
![]() | |
FloatingRateCoupon (const Date &paymentDate, Real nominal, const Date &startDate, const Date &endDate, Natural fixingDays, const ext::shared_ptr< InterestRateIndex > &index, Real gearing=1.0, Spread spread=0.0, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date(), DayCounter dayCounter=DayCounter(), bool isInArrears=false, const Date &exCouponDate=Date()) | |
void | performCalculations () const override |
Real | amount () const override |
returns the amount of the cash flow More... | |
Rate | rate () const override |
accrued rate More... | |
Real | price (const Handle< YieldTermStructure > &discountingCurve) const |
DayCounter | dayCounter () const override |
day counter for accrual calculation More... | |
const ext::shared_ptr< InterestRateIndex > & | index () const |
floating index More... | |
Natural | fixingDays () const |
fixing days More... | |
Real | gearing () const |
index gearing, i.e. multiplicative coefficient for the index More... | |
Spread | spread () const |
spread paid over the fixing of the underlying index More... | |
virtual Rate | indexFixing () const |
fixing of the underlying index More... | |
virtual Rate | convexityAdjustment () const |
convexity adjustment More... | |
virtual Rate | adjustedFixing () const |
convexity-adjusted fixing More... | |
bool | isInArrears () const |
whether or not the coupon fixes in arrears More... | |
virtual void | setPricer (const ext::shared_ptr< FloatingRateCouponPricer > &) |
ext::shared_ptr< FloatingRateCouponPricer > | pricer () const |
![]() | |
Coupon (const Date &paymentDate, Real nominal, const Date &accrualStartDate, const Date &accrualEndDate, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date(), const Date &exCouponDate=Date()) | |
Date | date () const override |
Date | exCouponDate () const override |
returns the date that the cash flow trades exCoupon More... | |
virtual Real | nominal () const |
const Date & | accrualStartDate () const |
start of the accrual period More... | |
const Date & | accrualEndDate () const |
end of the accrual period More... | |
const Date & | referencePeriodStart () const |
start date of the reference period More... | |
const Date & | referencePeriodEnd () const |
end date of the reference period More... | |
Time | accrualPeriod () const |
accrual period as fraction of year More... | |
Date::serial_type | accrualDays () const |
accrual period in days More... | |
Time | accruedPeriod (const Date &) const |
accrued period as fraction of year at the given date More... | |
Date::serial_type | accruedDays (const Date &) const |
accrued days at the given date More... | |
![]() | |
~CashFlow () override=default | |
bool | hasOccurred (const Date &refDate=Date(), ext::optional< bool > includeRefDate=ext::nullopt) const override |
returns true if an event has already occurred before a date More... | |
bool | tradingExCoupon (const Date &refDate=Date()) const |
returns true if the cashflow is trading ex-coupon on the refDate More... | |
![]() | |
~Event () override=default | |
![]() | |
Observable ()=default | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
Observable (Observable &&)=delete | |
Observable & | operator= (Observable &&)=delete |
virtual | ~Observable ()=default |
void | notifyObservers () |
![]() | |
LazyObject () | |
~LazyObject () override=default | |
void | update () override |
bool | isCalculated () const |
void | forwardFirstNotificationOnly () |
void | alwaysForwardNotifications () |
void | recalculate () |
void | freeze () |
void | unfreeze () |
![]() | |
Observer ()=default | |
Observer (const Observer &) | |
Observer & | operator= (const Observer &) |
virtual | ~Observer () |
std::pair< iterator, bool > | registerWith (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 () |
Telescopic property | |
Telescopic formula cannot be used with lookback days being different than intrinsic index fixing delay. Only when index fixing delay is 0 and observation shift is used, we can apply telescopic formula, when applying lookback period. | |
std::vector< Date > | valueDates_ |
std::vector< Date > | interestDates_ |
std::vector< Date > | fixingDates_ |
std::vector< Rate > | fixings_ |
Size | n_ |
std::vector< Time > | dt_ |
RateAveraging::Type | averagingMethod_ |
Natural | lockoutDays_ |
bool | applyObservationShift_ |
bool | canApplyTelescopicFormula () const |
Rate | averageRate (const Date &date) const |
Additional Inherited Members | |
![]() | |
typedef set_type::iterator | iterator |
![]() | |
Rate | convexityAdjustmentImpl (Rate fixing) const |
convexity adjustment for the given index fixing More... | |
![]() | |
virtual void | calculate () const |
![]() | |
ext::shared_ptr< InterestRateIndex > | index_ |
DayCounter | dayCounter_ |
Natural | fixingDays_ |
Real | gearing_ |
Spread | spread_ |
bool | isInArrears_ |
ext::shared_ptr< FloatingRateCouponPricer > | pricer_ |
Real | rate_ |
![]() | |
Date | paymentDate_ |
Real | nominal_ |
Date | accrualStartDate_ |
Date | accrualEndDate_ |
Date | refPeriodStart_ |
Date | refPeriodEnd_ |
Date | exCouponDate_ |
Real | accrualPeriod_ |
![]() | |
bool | calculated_ = false |
bool | frozen_ = false |
bool | alwaysForward_ |
overnight coupon
Coupon paying the interest, depending on the averaging convention, due to daily overnight fixings.
Definition at line 50 of file overnightindexedcoupon.hpp.
OvernightIndexedCoupon | ( | const Date & | paymentDate, |
Real | nominal, | ||
const Date & | startDate, | ||
const Date & | endDate, | ||
const ext::shared_ptr< OvernightIndex > & | overnightIndex, | ||
Real | gearing = 1.0 , |
||
Spread | spread = 0.0 , |
||
const Date & | refPeriodStart = Date() , |
||
const Date & | refPeriodEnd = Date() , |
||
const DayCounter & | dayCounter = DayCounter() , |
||
bool | telescopicValueDates = false , |
||
RateAveraging::Type | averagingMethod = RateAveraging::Compound , |
||
Natural | lookbackDays = Null<Natural>() , |
||
Natural | lockoutDays = 0 , |
||
bool | applyObservationShift = false |
||
) |
const std::vector< Date > & fixingDates | ( | ) | const |
fixing dates for the rates to be compounded
Definition at line 71 of file overnightindexedcoupon.hpp.
const std::vector< Time > & dt | ( | ) | const |
accrual (compounding) periods
Definition at line 73 of file overnightindexedcoupon.hpp.
const vector< Rate > & indexFixings | ( | ) | const |
fixings to be compounded
Definition at line 209 of file overnightindexedcoupon.cpp.
const std::vector< Date > & valueDates | ( | ) | const |
value dates for the rates to be compounded
Definition at line 77 of file overnightindexedcoupon.hpp.
const std::vector< Date > & interestDates | ( | ) | const |
interest dates for the rates to be compounded
Definition at line 79 of file overnightindexedcoupon.hpp.
RateAveraging::Type averagingMethod | ( | ) | const |
averaging method
Definition at line 81 of file overnightindexedcoupon.hpp.
Natural lockoutDays | ( | ) | const |
lockout days
Definition at line 83 of file overnightindexedcoupon.hpp.
bool applyObservationShift | ( | ) | const |
apply observation shift
Definition at line 85 of file overnightindexedcoupon.hpp.
|
overridevirtual |
the date when the coupon is fully determined
Reimplemented from FloatingRateCoupon.
Definition at line 90 of file overnightindexedcoupon.hpp.
accrued amount at the given date
Reimplemented from FloatingRateCoupon.
Definition at line 187 of file overnightindexedcoupon.cpp.
|
overridevirtual |
Reimplemented from FloatingRateCoupon.
Definition at line 216 of file overnightindexedcoupon.cpp.
bool canApplyTelescopicFormula | ( | ) | const |
Definition at line 103 of file overnightindexedcoupon.hpp.
Definition at line 199 of file overnightindexedcoupon.cpp.
|
private |
Definition at line 109 of file overnightindexedcoupon.hpp.
|
private |
Definition at line 109 of file overnightindexedcoupon.hpp.
|
private |
Definition at line 109 of file overnightindexedcoupon.hpp.
|
mutableprivate |
Definition at line 110 of file overnightindexedcoupon.hpp.
|
private |
Definition at line 111 of file overnightindexedcoupon.hpp.
|
private |
Definition at line 112 of file overnightindexedcoupon.hpp.
|
private |
Definition at line 113 of file overnightindexedcoupon.hpp.
|
private |
Definition at line 114 of file overnightindexedcoupon.hpp.
|
private |
Definition at line 115 of file overnightindexedcoupon.hpp.