Credit event on a bond of a certain seniority(ies)/currency. More...
#include <ql/experimental/credit/defaultevent.hpp>
Public Member Functions | |
DefaultEvent (const Date &creditEventDate, const DefaultType &atomicEvType, const Currency &curr, Seniority bondsSen, const Date &settleDate=Null< Date >(), const std::map< Seniority, Real > &recoveryRates=rate_map()) | |
DefaultEvent (const Date &creditEventDate, const DefaultType &atomicEvType, const Currency &curr, Seniority bondsSen, const Date &settleDate=Null< Date >(), Real recoveryRate=0.4) | |
Date | date () const |
returns the date at which the event occurs | |
bool | isRestructuring () const |
bool | isDefault () const |
bool | hasSettled () const |
const DefaultSettlement & | settlement () const |
const DefaultType & | defaultType () const |
const Currency & | currency () const |
returns the currency of the bond this event refers to. | |
Seniority | eventSeniority () const |
returns the seniority of the bond that triggered the event. | |
virtual Real | recoveryRate (Seniority seniority) const |
virtual bool | matchesEventType (const ext::shared_ptr< DefaultType > &contractEvType) const |
virtual bool | matchesDefaultKey (const DefaultProbKey &contractKey) const |
void | accept (AcyclicVisitor &) |
![]() | |
virtual bool | hasOccurred (const Date &refDate=Date(), boost::optional< bool > includeRefDate=boost::none) const |
returns true if an event has already occurred before a date More... | |
![]() | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
void | notifyObservers () |
Protected Attributes | |
Currency | bondsCurrency_ |
Date | defaultDate_ |
DefaultType | eventType_ |
Seniority | bondsSeniority_ |
DefaultSettlement | defSettlement_ |
Credit event on a bond of a certain seniority(ies)/currency.
Represents a credit event affecting all bonds with a given \ seniority and currency. It assumes that all such bonds suffer \ the event simultaneously. Some events affect all seniorities and this has to be encoded through a different set of events of the same event type. The event is an actual realization, not a contractual reference, as such it contains only an atomic type.
DefaultEvent | ( | const Date & | creditEventDate, |
const DefaultType & | atomicEvType, | ||
const Currency & | curr, | ||
Seniority | bondsSen, | ||
const Date & | settleDate = Null< Date >() , |
||
const std::map< Seniority, Real > & | recoveryRates = rate_map() |
||
) |
Credit event with optional settlement information. Represents a credit event that has taken place. Realized events are of an atomic type. If the settlement information is given seniorities present are the seniorities/bonds affected by the event.
DefaultEvent | ( | const Date & | creditEventDate, |
const DefaultType & | atomicEvType, | ||
const Currency & | curr, | ||
Seniority | bondsSen, | ||
const Date & | settleDate = Null< Date >() , |
||
Real | recoveryRate = 0.4 |
||
) |
Use NoSeniority to settle to all seniorities with that recovery. In that case the event is assumed to have affected all seniorities.
returns a value if the event lead to a settlement for the requested seniority. Specializations on the default atomics and recoveries could change the default policy.
|
virtual |
matches the event if this event would trigger a contract related to the requested event type. Notice the contractual event types are not neccesarily atomic. Notice it does not check seniority or currency only event type. typically used from Issuer
|
virtual |
Returns true if this event would trigger a contract with the arguments characteristics.