QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
Term structure with added spread on the instantaneous forward rate. More...
#include <forwardspreadedtermstructure.hpp>
Public Member Functions | |
ForwardSpreadedTermStructure (Handle< YieldTermStructure >, Handle< Quote > spread) | |
TermStructure interface | |
DayCounter | dayCounter () const override |
the day counter used for date/time conversion More... | |
Date | maxDate () const override |
the latest date for which the curve can return values More... | |
Time | maxTime () const override |
the latest time for which the curve can return values More... | |
const Date & | referenceDate () const override |
the date at which discount = 1.0 and/or variance = 0.0 More... | |
Calendar | calendar () const override |
the calendar used for reference and/or option date calculation More... | |
Natural | settlementDays () const override |
the settlementDays used for reference date calculation More... | |
Observer interface | |
void | update () override |
Public Member Functions inherited from ForwardRateStructure | |
ForwardRateStructure (const DayCounter &dayCounter=DayCounter()) | |
ForwardRateStructure (const Date &referenceDate, const Calendar &cal=Calendar(), const DayCounter &dayCounter=DayCounter(), const std::vector< Handle< Quote > > &jumps={}, const std::vector< Date > &jumpDates={}) | |
ForwardRateStructure (Natural settlementDays, const Calendar &cal, const DayCounter &dayCounter=DayCounter(), const std::vector< Handle< Quote > > &jumps={}, const std::vector< Date > &jumpDates={}) | |
Public Member Functions inherited from YieldTermStructure | |
YieldTermStructure (const DayCounter &dc=DayCounter()) | |
YieldTermStructure (const Date &referenceDate, const Calendar &cal=Calendar(), const DayCounter &dc=DayCounter(), std::vector< Handle< Quote > > jumps={}, const std::vector< Date > &jumpDates={}) | |
YieldTermStructure (Natural settlementDays, const Calendar &cal, const DayCounter &dc=DayCounter(), std::vector< Handle< Quote > > jumps={}, const std::vector< Date > &jumpDates={}) | |
DiscountFactor | discount (const Date &d, bool extrapolate=false) const |
DiscountFactor | discount (Time t, bool extrapolate=false) const |
InterestRate | zeroRate (const Date &d, const DayCounter &resultDayCounter, Compounding comp, Frequency freq=Annual, bool extrapolate=false) const |
InterestRate | zeroRate (Time t, Compounding comp, Frequency freq=Annual, bool extrapolate=false) const |
InterestRate | forwardRate (const Date &d1, const Date &d2, const DayCounter &resultDayCounter, Compounding comp, Frequency freq=Annual, bool extrapolate=false) const |
InterestRate | forwardRate (const Date &d, const Period &p, const DayCounter &resultDayCounter, Compounding comp, Frequency freq=Annual, bool extrapolate=false) const |
InterestRate | forwardRate (Time t1, Time t2, Compounding comp, Frequency freq=Annual, bool extrapolate=false) const |
const std::vector< Date > & | jumpDates () const |
const std::vector< Time > & | jumpTimes () const |
void | update () override |
Public Member Functions inherited from TermStructure | |
TermStructure (DayCounter dc=DayCounter()) | |
default constructor More... | |
TermStructure (const Date &referenceDate, Calendar calendar=Calendar(), DayCounter dc=DayCounter()) | |
initialize with a fixed reference date More... | |
TermStructure (Natural settlementDays, Calendar, DayCounter dc=DayCounter()) | |
calculate the reference date based on the global evaluation date More... | |
~TermStructure () override=default | |
Time | timeFromReference (const Date &date) const |
date/time conversion More... | |
Public Member Functions inherited from Observer | |
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 () |
Public Member Functions inherited from Observable | |
Observable () | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
Observable (Observable &&)=delete | |
Observable & | operator= (Observable &&)=delete |
virtual | ~Observable ()=default |
void | notifyObservers () |
Public Member Functions inherited from Extrapolator | |
Extrapolator ()=default | |
virtual | ~Extrapolator ()=default |
void | enableExtrapolation (bool b=true) |
enable extrapolation in subsequent calls More... | |
void | disableExtrapolation (bool b=true) |
disable extrapolation in subsequent calls More... | |
bool | allowsExtrapolation () const |
tells whether extrapolation is enabled More... | |
ForwardRateStructure implementation | |
Handle< YieldTermStructure > | originalCurve_ |
Handle< Quote > | spread_ |
Rate | forwardImpl (Time t) const override |
instantaneous forward-rate calculation More... | |
Rate | zeroYieldImpl (Time t) const override |
Additional Inherited Members | |
Public Types inherited from Observer | |
typedef set_type::iterator | iterator |
Protected Member Functions inherited from ForwardRateStructure | |
DiscountFactor | discountImpl (Time) const override |
Protected Member Functions inherited from YieldTermStructure | |
Protected Member Functions inherited from TermStructure | |
void | checkRange (const Date &d, bool extrapolate) const |
date-range check More... | |
void | checkRange (Time t, bool extrapolate) const |
time-range check More... | |
Protected Attributes inherited from TermStructure | |
bool | moving_ = false |
bool | updated_ = true |
Calendar | calendar_ |
Term structure with added spread on the instantaneous forward rate.
Definition at line 47 of file forwardspreadedtermstructure.hpp.
ForwardSpreadedTermStructure | ( | Handle< YieldTermStructure > | h, |
Handle< Quote > | spread | ||
) |
Definition at line 75 of file forwardspreadedtermstructure.hpp.
|
overridevirtual |
the day counter used for date/time conversion
Reimplemented from TermStructure.
Definition at line 82 of file forwardspreadedtermstructure.hpp.
|
overridevirtual |
the latest date for which the curve can return values
Implements TermStructure.
Definition at line 98 of file forwardspreadedtermstructure.hpp.
|
overridevirtual |
the latest time for which the curve can return values
Reimplemented from TermStructure.
Definition at line 102 of file forwardspreadedtermstructure.hpp.
|
overridevirtual |
the date at which discount = 1.0 and/or variance = 0.0
Reimplemented from TermStructure.
Definition at line 94 of file forwardspreadedtermstructure.hpp.
|
overridevirtual |
the calendar used for reference and/or option date calculation
Reimplemented from TermStructure.
Definition at line 86 of file forwardspreadedtermstructure.hpp.
|
overridevirtual |
the settlementDays used for reference date calculation
Reimplemented from TermStructure.
Definition at line 90 of file forwardspreadedtermstructure.hpp.
|
overridevirtual |
This method must be implemented in derived classes. An instance of Observer does not call this method directly: instead, it will be called by the observables the instance registered with when they need to notify any changes.
Reimplemented from TermStructure.
Definition at line 106 of file forwardspreadedtermstructure.hpp.
instantaneous forward-rate calculation
Implements ForwardRateStructure.
Definition at line 119 of file forwardspreadedtermstructure.hpp.
Returns the zero yield rate for the given date calculating it from the instantaneous forward rate \( f(t) \) as
\[ z(t) = \int_0^t f(\tau) d\tau \]
Reimplemented from ForwardRateStructure.
Definition at line 124 of file forwardspreadedtermstructure.hpp.
|
private |
Definition at line 71 of file forwardspreadedtermstructure.hpp.
Definition at line 72 of file forwardspreadedtermstructure.hpp.