QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
Ultimate forward term structure. More...
#include <ultimateforwardtermstructure.hpp>
Public Member Functions | |
UltimateForwardTermStructure (Handle< YieldTermStructure >, Handle< Quote > lastLiquidForwardRate, Handle< Quote > ultimateForwardRate, const Period &firstSmoothingPoint, Real alpha) | |
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... | |
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... | |
virtual Time | maxTime () const |
the latest time for which the curve can return values 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 > | llfr_ |
Handle< Quote > | ufr_ |
Period | fsp_ |
Real | alpha_ |
void | update () override |
Rate | zeroYieldImpl (Time) const override |
returns the UFR extended zero yield 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_ |
Ultimate forward term structure.
Dutch regulatory term structure for pension funds with a parametrized extrapolation mechanism designed for discounting long dated liabilities.
Relevant documentation can be found on the Dutch Central Bank website:
FTK term structure documentation (Financieel toetsingskader): https://www.toezicht.dnb.nl/binaries/50-212329.pdf
UFR 2015 term structure documentation: https://www.toezicht.dnb.nl/binaries/50-234028.pdf
UFR 2019 term structure documentation: https://www.rijksoverheid.nl/documenten/kamerstukken/2019/06/11/advies-commissie-parameters
This term structure will remain linked to the original structure, i.e., any changes in the latter will be reflected in this structure as well.
Definition at line 70 of file ultimateforwardtermstructure.hpp.
UltimateForwardTermStructure | ( | Handle< YieldTermStructure > | h, |
Handle< Quote > | lastLiquidForwardRate, | ||
Handle< Quote > | ultimateForwardRate, | ||
const Period & | firstSmoothingPoint, | ||
Real | alpha | ||
) |
Definition at line 103 of file ultimateforwardtermstructure.hpp.
|
overridevirtual |
the day counter used for date/time conversion
Reimplemented from TermStructure.
Definition at line 120 of file ultimateforwardtermstructure.hpp.
|
overridevirtual |
the calendar used for reference and/or option date calculation
Reimplemented from TermStructure.
Definition at line 124 of file ultimateforwardtermstructure.hpp.
|
overridevirtual |
the settlementDays used for reference date calculation
Reimplemented from TermStructure.
Definition at line 128 of file ultimateforwardtermstructure.hpp.
|
overridevirtual |
the date at which discount = 1.0 and/or variance = 0.0
Reimplemented from TermStructure.
Definition at line 132 of file ultimateforwardtermstructure.hpp.
|
overridevirtual |
the latest date for which the curve can return values
Implements TermStructure.
Definition at line 136 of file ultimateforwardtermstructure.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 138 of file ultimateforwardtermstructure.hpp.
returns the UFR extended zero yield rate
Implements ZeroYieldStructure.
Definition at line 152 of file ultimateforwardtermstructure.hpp.
|
private |
Definition at line 94 of file ultimateforwardtermstructure.hpp.
Definition at line 95 of file ultimateforwardtermstructure.hpp.
Definition at line 96 of file ultimateforwardtermstructure.hpp.
|
private |
Definition at line 97 of file ultimateforwardtermstructure.hpp.
|
private |
Definition at line 98 of file ultimateforwardtermstructure.hpp.