|
QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
|
Default-density term structure. More...
#include <defaultdensitystructure.hpp>
Inheritance diagram for DefaultDensityStructure:
Collaboration diagram for DefaultDensityStructure:Public Member Functions | |
Constructors | |
See the TermStructure documentation for issues regarding constructors. | |
| DefaultDensityStructure (const DayCounter &dayCounter=DayCounter(), const std::vector< Handle< Quote > > &jumps={}, const std::vector< Date > &jumpDates={}) | |
| DefaultDensityStructure (const Date &referenceDate, const Calendar &cal=Calendar(), const DayCounter &dayCounter=DayCounter(), const std::vector< Handle< Quote > > &jumps={}, const std::vector< Date > &jumpDates={}) | |
| DefaultDensityStructure (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 DefaultProbabilityTermStructure | |
| DefaultProbabilityTermStructure (const DayCounter &dc=DayCounter(), std::vector< Handle< Quote > > jumps={}, const std::vector< Date > &jumpDates={}) | |
| DefaultProbabilityTermStructure (const Date &referenceDate, const Calendar &cal=Calendar(), const DayCounter &dc=DayCounter(), std::vector< Handle< Quote > > jumps={}, const std::vector< Date > &jumpDates={}) | |
| DefaultProbabilityTermStructure (Natural settlementDays, const Calendar &cal, const DayCounter &dc=DayCounter(), std::vector< Handle< Quote > > jumps={}, const std::vector< Date > &jumpDates={}) | |
| Probability | survivalProbability (const Date &d, bool extrapolate=false) const |
| Probability | survivalProbability (Time t, bool extrapolate=false) const |
| Probability | defaultProbability (const Date &d, bool extrapolate=false) const |
| Probability | defaultProbability (Time t, bool extrapolate=false) const |
| Probability | defaultProbability (const Date &, const Date &, bool extrapolate=false) const |
| probability of default between two given dates More... | |
| Probability | defaultProbability (Time, Time, bool extrapo=false) const |
| probability of default between two given times More... | |
| Real | defaultDensity (const Date &d, bool extrapolate=false) const |
| Real | defaultDensity (Time t, bool extrapolate=false) const |
| Rate | hazardRate (const Date &d, bool extrapolate=false) const |
| Rate | hazardRate (Time t, 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 | |
| virtual DayCounter | dayCounter () const |
| the day counter used for date/time conversion More... | |
| Time | timeFromReference (const Date &date) const |
| date/time conversion More... | |
| virtual Date | maxDate () const =0 |
| the latest date for which the curve can return values More... | |
| virtual Time | maxTime () const |
| the latest time for which the curve can return values More... | |
| virtual const Date & | referenceDate () const |
| the date at which discount = 1.0 and/or variance = 0.0 More... | |
| virtual Calendar | calendar () const |
| the calendar used for reference and/or option date calculation More... | |
| virtual Natural | settlementDays () const |
| the settlementDays used for reference date calculation 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 ()=default | |
| 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... | |
Protected Member Functions | |
DefaultProbabilityTermStructure implementation | |
| Probability | survivalProbabilityImpl (Time) const override |
| survival probability calculation More... | |
Protected Member Functions inherited from DefaultProbabilityTermStructure | |
| virtual Real | defaultDensityImpl (Time) const =0 |
| default density calculation More... | |
| virtual Real | hazardRateImpl (Time) const |
| hazard rate calculation More... | |
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... | |
Additional Inherited Members | |
Public Types inherited from Observer | |
| typedef set_type::iterator | iterator |
Protected Attributes inherited from TermStructure | |
| bool | moving_ = false |
| bool | updated_ = true |
| Calendar | calendar_ |
Default-density term structure.
This abstract class acts as an adapter to DefaultProbabilityTermStructure allowing the programmer to implement only the defaultDensityImpl(Time) method in derived classes.
Survival/default probabilities and hazard rates are calculated from default densities.
Definition at line 43 of file defaultdensitystructure.hpp.
| DefaultDensityStructure | ( | const DayCounter & | dayCounter = DayCounter(), |
| const std::vector< Handle< Quote > > & | jumps = {}, |
||
| const std::vector< Date > & | jumpDates = {} |
||
| ) |
Definition at line 49 of file defaultdensitystructure.cpp.
| DefaultDensityStructure | ( | const Date & | referenceDate, |
| const Calendar & | cal = Calendar(), |
||
| const DayCounter & | dayCounter = DayCounter(), |
||
| const std::vector< Handle< Quote > > & | jumps = {}, |
||
| const std::vector< Date > & | jumpDates = {} |
||
| ) |
Definition at line 55 of file defaultdensitystructure.cpp.
| DefaultDensityStructure | ( | Natural | settlementDays, |
| const Calendar & | cal, | ||
| const DayCounter & | dayCounter = DayCounter(), |
||
| const std::vector< Handle< Quote > > & | jumps = {}, |
||
| const std::vector< Date > & | jumpDates = {} |
||
| ) |
Definition at line 63 of file defaultdensitystructure.cpp.
|
overrideprotectedvirtual |
survival probability calculation
implemented in terms of the default density \( p(t) \) as
\[ S(t) = 1 - \int_0^t p(\tau) d\tau. \]
Implements DefaultProbabilityTermStructure.
Reimplemented in InterpolatedDefaultDensityCurve< Interpolator >.
Definition at line 71 of file defaultdensitystructure.cpp.
Here is the call graph for this function: