|
QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
|
Default probability term structure. More...
#include <defaulttermstructure.hpp>
Inheritance diagram for DefaultProbabilityTermStructure:
Collaboration diagram for DefaultProbabilityTermStructure:Public Member Functions | |
Constructors | |
See the TermStructure documentation for issues regarding constructors. | |
| 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={}) | |
Survival probabilities | |
These methods return the survival probability from the reference date until a given date or time. In the latter case, the time is calculated as a fraction of year from the reference date. | |
| Probability | survivalProbability (const Date &d, bool extrapolate=false) const |
| Probability | survivalProbability (Time t, bool extrapolate=false) const |
Default probabilities | |
These methods return the default probability from the reference date until a given date or time. In the latter case, the time is calculated as a fraction of year from the reference date. | |
| 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... | |
Default densities | |
These methods return the default density at a given date or time. In the latter case, the time is calculated as a fraction of year from the reference date. | |
| Real | defaultDensity (const Date &d, bool extrapolate=false) const |
| Real | defaultDensity (Time t, bool extrapolate=false) const |
Hazard rates | |
These methods returns the hazard rate at a given date or time. In the latter case, the time is calculated as a fraction of year from the reference date. Hazard rates are defined with annual frequency and continuous compounding. | |
| Rate | hazardRate (const Date &d, bool extrapolate=false) const |
| Rate | hazardRate (Time t, bool extrapolate=false) const |
Jump inspectors | |
| const std::vector< Date > & | jumpDates () const |
| const std::vector< Time > & | jumpTimes () const |
Observer interface | |
| 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... | |
Calculations | |
The first two methods must be implemented in derived classes to perform the actual calculations. When they are called, range check has already been performed; therefore, they must assume that extrapolation is required. The third method has a default implementation which can be overriden with a more efficient implementation in derived classes. | |
| std::vector< Handle< Quote > > | jumps_ |
| std::vector< Date > | jumpDates_ |
| std::vector< Time > | jumpTimes_ |
| Size | nJumps_ |
| Date | latestReference_ |
| virtual Probability | survivalProbabilityImpl (Time) const =0 |
| survival probability calculation More... | |
| virtual Real | defaultDensityImpl (Time) const =0 |
| default density calculation More... | |
| virtual Real | hazardRateImpl (Time) const |
| hazard rate calculation More... | |
| void | setJumps () |
Additional Inherited Members | |
Public Types inherited from Observer | |
| typedef set_type::iterator | iterator |
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_ |
Default probability term structure.
This abstract class defines the interface of concrete credit structures which will be derived from this one.
Definition at line 41 of file defaulttermstructure.hpp.
| 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 |
Definition at line 178 of file defaulttermstructure.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:| Probability survivalProbability | ( | Time | t, |
| bool | extrapolate = false |
||
| ) | const |
The same day-counting rule used by the term structure should be used for calculating the passed time t.
Definition at line 81 of file defaulttermstructure.cpp.
Here is the call graph for this function:| Probability defaultProbability | ( | const Date & | d, |
| bool | extrapolate = false |
||
| ) | const |
Definition at line 185 of file defaulttermstructure.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:| Probability defaultProbability | ( | Time | t, |
| bool | extrapolate = false |
||
| ) | const |
The same day-counting rule used by the term structure should be used for calculating the passed time t.
Definition at line 192 of file defaulttermstructure.hpp.
Here is the call graph for this function:| Probability defaultProbability | ( | const Date & | d1, |
| const Date & | d2, | ||
| bool | extrapolate = false |
||
| ) | const |
probability of default between two given dates
Definition at line 103 of file defaulttermstructure.cpp.
Here is the call graph for this function:| Probability defaultProbability | ( | Time | t1, |
| Time | t2, | ||
| bool | extrapo = false |
||
| ) | const |
probability of default between two given times
Definition at line 116 of file defaulttermstructure.cpp.
Here is the call graph for this function:Definition at line 199 of file defaulttermstructure.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 214 of file defaulttermstructure.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:| const std::vector< Date > & jumpDates | ( | ) | const |
Definition at line 233 of file defaulttermstructure.hpp.
| const std::vector< Time > & jumpTimes | ( | ) | const |
Definition at line 239 of file defaulttermstructure.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 243 of file defaulttermstructure.hpp.
Here is the call graph for this function:
|
protectedpure virtual |
survival probability calculation
Implemented in InterpolatedAffineHazardRateCurve< Interpolator >, OneFactorAffineSurvivalStructure, DefaultDensityStructure, FlatHazardRate, HazardRateStructure, InterpolatedDefaultDensityCurve< Interpolator >, InterpolatedHazardRateCurve< Interpolator >, and InterpolatedSurvivalProbabilityCurve< Interpolator >.
Here is the caller graph for this function:default density calculation
Implemented in OneFactorAffineSurvivalStructure, HazardRateStructure, InterpolatedDefaultDensityCurve< Interpolator >, InterpolatedSurvivalProbabilityCurve< Interpolator >, and SurvivalProbabilityStructure.
Here is the caller graph for this function:hazard rate calculation
Reimplemented in FactorSpreadedHazardRateCurve, SpreadedHazardRateCurve, InterpolatedAffineHazardRateCurve< Interpolator >, OneFactorAffineSurvivalStructure, FlatHazardRate, HazardRateStructure, and InterpolatedHazardRateCurve< Interpolator >.
Definition at line 220 of file defaulttermstructure.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 64 of file defaulttermstructure.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 168 of file defaulttermstructure.hpp.
|
private |
Definition at line 169 of file defaulttermstructure.hpp.
|
private |
Definition at line 170 of file defaulttermstructure.hpp.
|
private |
Definition at line 171 of file defaulttermstructure.hpp.
|
private |
Definition at line 172 of file defaulttermstructure.hpp.