|
| RandomDefaultLM (const ext::shared_ptr< DefaultLatentModel< copulaPolicy > > &model, const std::vector< Real > &recoveries=std::vector< Real >(), Size nSims=0, Real accuracy=1.e-6, BigNatural seed=2863311530UL) |
|
| RandomDefaultLM (const ext::shared_ptr< ConstantLossLatentmodel< copulaPolicy > > &model, Size nSims=0, Real accuracy=1.e-6, BigNatural seed=2863311530UL) |
|
Public Member Functions inherited from RandomLM< derivedRandomLM, copulaPolicy, USNG > |
| ~RandomLM () override=default |
|
| LazyObject () |
|
| ~LazyObject () override=default |
|
void | update () override |
|
bool | isCalculated () const |
|
void | forwardFirstNotificationOnly () |
|
void | alwaysForwardNotifications () |
|
void | recalculate () |
|
void | freeze () |
|
void | unfreeze () |
|
| Observable () |
|
| Observable (const Observable &) |
|
Observable & | operator= (const Observable &) |
|
| Observable (Observable &&)=delete |
|
Observable & | operator= (Observable &&)=delete |
|
virtual | ~Observable ()=default |
|
void | notifyObservers () |
|
| 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 () |
|
|
void | nextSample (const std::vector< Real > &values) const |
|
void | initDates () const |
|
Real | getEventRecovery (const defaultSimEvent &evt) const |
|
Real | expectedRecovery (const Date &, Size iName, const DefaultProbKey &) const override |
|
Real | latentVarValue (const std::vector< Real > &factorsSample, Size iVar) const |
|
Size | basketSize () const |
|
Protected Member Functions inherited from RandomLM< derivedRandomLM, copulaPolicy, USNG > |
| RandomLM (Size numFactors, Size numLMVars, copulaPolicy copula, Size nSims, BigNatural seed) |
|
void | update () override |
|
void | performCalculations () const override |
|
void | performSimulations () const |
|
const std::vector< simEvent< derivedRandomLM< copulaPolicy, USNG > > > & | getSim (const Size iSim) const |
|
Real | getEventRecovery (const simEvent< derivedRandomLM< copulaPolicy, USNG > > &evt) const |
|
Probability | probAtLeastNEvents (Size n, const Date &d) const override |
|
std::vector< Probability > | probsBeingNthEvent (Size n, const Date &d) const override |
|
Real | defaultCorrelation (const Date &d, Size iName, Size jName) const override |
| Pearsons' default probability correlation. More...
|
|
Real | expectedTrancheLoss (const Date &d) const override |
|
virtual std::pair< Real, Real > | expectedTrancheLossInterval (const Date &d, Probability confidencePerc) const |
|
std::map< Real, Probability > | lossDistribution (const Date &d) const override |
| Full loss distribution. More...
|
|
virtual Histogram | computeHistogram (const Date &d) const |
|
Real | expectedShortfall (const Date &d, Real percent) const override |
| Expected shortfall given a default loss percentile. More...
|
|
Real | percentile (const Date &d, Real percentile) const override |
| Value at Risk given a default loss percentile. More...
|
|
virtual ext::tuple< Real, Real, Real > | percentileAndInterval (const Date &d, Real percentile) const |
|
std::vector< Real > | splitVaRLevel (const Date &date, Real loss) const override |
|
virtual std::vector< std::vector< Real > > | splitVaRAndError (const Date &date, Real loss, Probability confInterval) const |
|
virtual void | calculate () const |
|
| DefaultLossModel ()=default |
|
virtual Probability | probOverLoss (const Date &d, Real lossFraction) const |
|
virtual std::vector< Real > | splitESFLevel (const Date &d, Real loss) const |
| Associated ESF fraction to each counterparty. More...
|
|
virtual Real | densityTrancheLoss (const Date &d, Real lossFraction) const |
| Probability density of a given loss fraction of the basket notional. More...
|
|
template<class
copulaPolicy, class USNG = SobolRsg>
class QuantLib::RandomDefaultLM< copulaPolicy, USNG >
Random default with deterministic recovery event type.
- Stores sims results in a bitfield buffer for lean memory storage. Although strictly speaking this is not guaranteed by the compiler it amounts to reducing the memory storage by half. Some computations, like conditional statistics, precise that all sims results be available.
Default only latent model simulation with trivially fixed recovery amounts.
- Examples
- BasketLosses.cpp.
Definition at line 806 of file randomdefaultlatentmodel.hpp.