QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
Yield curve with an added vector of spreads on the zero-yield rate. More...
#include <piecewisezerospreadedtermstructure.hpp>
Public Member Functions | |
InterpolatedPiecewiseZeroSpreadedTermStructure (Handle< YieldTermStructure >, std::vector< Handle< Quote > > spreads, const std::vector< Date > &dates, Compounding comp=Continuous, Frequency freq=NoFrequency, DayCounter dc=DayCounter(), const Interpolator &factory=Interpolator()) | |
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... | |
YieldTermStructure interface | |
Handle< YieldTermStructure > | originalCurve_ |
std::vector< Handle< Quote > > | spreads_ |
std::vector< Date > | dates_ |
std::vector< Time > | times_ |
std::vector< Spread > | spreadValues_ |
Compounding | comp_ |
Frequency | freq_ |
DayCounter | dc_ |
Interpolator | factory_ |
Interpolation | interpolator_ |
DayCounter | dayCounter () const override |
the day counter used for date/time conversion More... | |
Natural | settlementDays () const override |
the settlementDays used for reference date calculation More... | |
Calendar | calendar () const override |
the calendar used for reference and/or option 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... | |
Rate | zeroYieldImpl (Time) const override |
returns the spreaded zero yield rate More... | |
void | update () override |
void | updateInterpolation () |
Real | calcSpread (Time t) const |
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_ |
Yield curve with an added vector of spreads on the zero-yield rate.
The zero-yield spread at any given date is interpolated between the input data.
Definition at line 49 of file piecewisezerospreadedtermstructure.hpp.
InterpolatedPiecewiseZeroSpreadedTermStructure | ( | Handle< YieldTermStructure > | , |
std::vector< Handle< Quote > > | spreads, | ||
const std::vector< Date > & | dates, | ||
Compounding | comp = Continuous , |
||
Frequency | freq = NoFrequency , |
||
DayCounter | dc = DayCounter() , |
||
const Interpolator & | factory = Interpolator() |
||
) |
Definition at line 96 of file piecewisezerospreadedtermstructure.hpp.
|
overridevirtual |
the day counter used for date/time conversion
Reimplemented from TermStructure.
Definition at line 117 of file piecewisezerospreadedtermstructure.hpp.
|
overridevirtual |
the settlementDays used for reference date calculation
Reimplemented from TermStructure.
Definition at line 127 of file piecewisezerospreadedtermstructure.hpp.
|
overridevirtual |
the calendar used for reference and/or option date calculation
Reimplemented from TermStructure.
Definition at line 122 of file piecewisezerospreadedtermstructure.hpp.
|
overridevirtual |
the date at which discount = 1.0 and/or variance = 0.0
Reimplemented from TermStructure.
Definition at line 133 of file piecewisezerospreadedtermstructure.hpp.
|
overridevirtual |
the latest date for which the curve can return values
Implements TermStructure.
Definition at line 138 of file piecewisezerospreadedtermstructure.hpp.
returns the spreaded zero yield rate
Implements ZeroYieldStructure.
Definition at line 144 of file piecewisezerospreadedtermstructure.hpp.
|
overrideprotectedvirtual |
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 167 of file piecewisezerospreadedtermstructure.hpp.
|
private |
Definition at line 182 of file piecewisezerospreadedtermstructure.hpp.
Definition at line 156 of file piecewisezerospreadedtermstructure.hpp.
|
private |
Definition at line 74 of file piecewisezerospreadedtermstructure.hpp.
Definition at line 75 of file piecewisezerospreadedtermstructure.hpp.
|
private |
Definition at line 76 of file piecewisezerospreadedtermstructure.hpp.
|
private |
Definition at line 77 of file piecewisezerospreadedtermstructure.hpp.
|
private |
Definition at line 78 of file piecewisezerospreadedtermstructure.hpp.
|
private |
Definition at line 79 of file piecewisezerospreadedtermstructure.hpp.
|
private |
Definition at line 80 of file piecewisezerospreadedtermstructure.hpp.
|
private |
Definition at line 81 of file piecewisezerospreadedtermstructure.hpp.
|
private |
Definition at line 82 of file piecewisezerospreadedtermstructure.hpp.
|
private |
Definition at line 83 of file piecewisezerospreadedtermstructure.hpp.