QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
Term structure with an added spread on the zero yield rate. More...
#include <zerospreadedtermstructure.hpp>
Public Member Functions | |
ZeroSpreadedTermStructure (Handle< YieldTermStructure >, Handle< Quote > spread, Compounding comp=Continuous, Frequency freq=NoFrequency, DayCounter dc=DayCounter()) | |
YieldTermStructure interface | |
DayCounter | dayCounter () const override |
the day counter used for date/time conversion 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... | |
const Date & | referenceDate () const override |
the date at which discount = 1.0 and/or variance = 0.0 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... | |
Public Member Functions inherited from ZeroYieldStructure | |
ZeroYieldStructure (const DayCounter &dc=DayCounter()) | |
ZeroYieldStructure (const Date &referenceDate, const Calendar &calendar=Calendar(), const DayCounter &dc=DayCounter(), const std::vector< Handle< Quote > > &jumps={}, const std::vector< Date > &jumpDates={}) | |
ZeroYieldStructure (Natural settlementDays, const Calendar &calendar, const DayCounter &dc=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... | |
Observer interface | |
Handle< YieldTermStructure > | originalCurve_ |
Handle< Quote > | spread_ |
Compounding | comp_ |
Frequency | freq_ |
DayCounter | dc_ |
void | update () override |
Rate | zeroYieldImpl (Time) const override |
returns the spreaded zero yield rate More... | |
Rate | forwardImpl (Time) const |
returns the spreaded forward rate More... | |
Additional Inherited Members | |
Public Types inherited from Observer | |
typedef set_type::iterator | iterator |
Protected Member Functions inherited from ZeroYieldStructure | |
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 an added spread on the zero yield rate.
Definition at line 47 of file zerospreadedtermstructure.hpp.
ZeroSpreadedTermStructure | ( | Handle< YieldTermStructure > | h, |
Handle< Quote > | spread, | ||
Compounding | comp = Continuous , |
||
Frequency | freq = NoFrequency , |
||
DayCounter | dc = DayCounter() |
||
) |
Definition at line 81 of file zerospreadedtermstructure.hpp.
|
overridevirtual |
the day counter used for date/time conversion
Reimplemented from TermStructure.
Definition at line 94 of file zerospreadedtermstructure.hpp.
|
overridevirtual |
the calendar used for reference and/or option date calculation
Reimplemented from TermStructure.
Definition at line 98 of file zerospreadedtermstructure.hpp.
|
overridevirtual |
the settlementDays used for reference date calculation
Reimplemented from TermStructure.
Definition at line 102 of file zerospreadedtermstructure.hpp.
|
overridevirtual |
the date at which discount = 1.0 and/or variance = 0.0
Reimplemented from TermStructure.
Definition at line 106 of file zerospreadedtermstructure.hpp.
|
overridevirtual |
the latest date for which the curve can return values
Implements TermStructure.
Definition at line 110 of file zerospreadedtermstructure.hpp.
|
overridevirtual |
the latest time for which the curve can return values
Reimplemented from TermStructure.
Definition at line 114 of file zerospreadedtermstructure.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 118 of file zerospreadedtermstructure.hpp.
returns the spreaded zero yield rate
Implements ZeroYieldStructure.
Definition at line 132 of file zerospreadedtermstructure.hpp.
returns the spreaded forward rate
Definition at line 143 of file zerospreadedtermstructure.hpp.
|
private |
Definition at line 74 of file zerospreadedtermstructure.hpp.
Definition at line 75 of file zerospreadedtermstructure.hpp.
|
private |
Definition at line 76 of file zerospreadedtermstructure.hpp.
|
private |
Definition at line 77 of file zerospreadedtermstructure.hpp.
|
private |
Definition at line 78 of file zerospreadedtermstructure.hpp.