QuantLib: a free/open-source library for quantitative finance
Reference manual - version 1.40
Loading...
Searching...
No Matches
ConstantLossLatentmodel< copulaPolicy > Class Template Reference

#include <ql/experimental/credit/constantlosslatentmodel.hpp>

Inheritance diagram for ConstantLossLatentmodel< copulaPolicy >:

Public Member Functions

 ConstantLossLatentmodel (const std::vector< std::vector< Real > > &factorWeights, const std::vector< Real > &recoveries, LatentModelIntegrationType::LatentModelIntegrationType integralType, const initTraits &ini=initTraits())
 ConstantLossLatentmodel (const Handle< Quote > &mktCorrel, const std::vector< Real > &recoveries, LatentModelIntegrationType::LatentModelIntegrationType integralType, Size nVariables, const initTraits &ini=initTraits())
Real conditionalRecovery (const Date &d, Size iName, const std::vector< Real > &mktFactors) const
Real conditionalRecovery (Probability uncondDefP, Size iName, const std::vector< Real > &mktFactors) const
Real conditionalRecoveryInvP (Real invUncondDefP, Size iName, const std::vector< Real > &mktFactors) const
Real conditionalRecovery (Real latentVarSample, Size iName, const Date &d) const
const std::vector< Real > & recoveries () const
Real expectedRecovery (const Date &d, Size iName, const DefaultProbKey &defKeys) const
Public Member Functions inherited from DefaultLatentModel< copulaPolicy >
 DefaultLatentModel (const std::vector< std::vector< Real > > &factorWeights, LatentModelIntegrationType::LatentModelIntegrationType integralType, const initTraits &ini=initTraits())
 DefaultLatentModel (const Handle< Quote > &mktCorrel, Size nVariables, LatentModelIntegrationType::LatentModelIntegrationType integralType, const initTraits &ini=initTraits())
void resetBasket (const ext::shared_ptr< Basket > &basket) const
Probability conditionalDefaultProbability (Probability prob, Size iName, const std::vector< Real > &mktFactors) const
Probability conditionalDefaultProbabilityInvP (Real invCumYProb, Size iName, const std::vector< Real > &m) const
Probability probOfDefault (Size iName, const Date &d) const
Real defaultCorrelation (const Date &d, Size iNamei, Size iNamej) const
Probability probAtLeastNEvents (Size n, const Date &date) const
Public Member Functions inherited from LatentModel< copulaPolicy >
void update () override
Size size () const
Size numFactors () const
 Number of systemic factors.
Size numTotalFactors () const
 Number of total free random factors; systemic and idiosyncratic.
 LatentModel (const std::vector< std::vector< Real > > &factorsWeights, const typename copulaType::initTraits &ini=typename copulaType::initTraits())
const std::vector< std::vector< Real > > & factorWeights () const
 Provides values of the factors \( a_{i,k} \).
const std::vector< Real > & idiosyncFctrs () const
 Provides values of the normalized idiosyncratic factors \( Z_i \).
Real latentVariableCorrel (Size iVar1, Size iVar2) const
 Latent variable correlations:
Probability cumulativeY (Real val, Size iVariable) const
Probability cumulativeZ (Real z) const
 Cumulative distribution of Z, the idiosyncratic/error factors.
Probability density (const std::vector< Real > &m) const
 Density function of M, the market/systemic factors.
Real inverseCumulativeDensity (Probability p, Size iFactor) const
 Inverse cumulative distribution of the systemic factor iFactor.
Real inverseCumulativeY (Probability p, Size iVariable) const
Real inverseCumulativeZ (Probability p) const
std::vector< RealallFactorCumulInverter (const std::vector< Real > &probs) const
Real latentVarValue (const std::vector< Real > &allFactors, Size iVar) const
const copulaType & copula () const
Real integratedExpectedValue (const std::function< Real(const std::vector< Real > &v1)> &f) const
std::vector< RealintegratedExpectedValueV (const std::function< std::vector< Real >(const std::vector< Real > &v1)> &f) const
Public Member Functions inherited from Observer
 Observer (const Observer &)
Observeroperator= (const 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 deepUpdate ()
Public Member Functions inherited from Observable
 Observable (const Observable &)
Observableoperator= (const Observable &)
 Observable (Observable &&)=delete
Observableoperator= (Observable &&)=delete
void notifyObservers ()

Additional Inherited Members

typedef copulaPolicy copulaType
Public Types inherited from Observer
typedef set_type::iterator iterator
Protected Member Functions inherited from DefaultLatentModel< copulaPolicy >
void update () override
Probability conditionalDefaultProbability (const Date &date, Size iName, const std::vector< Real > &mktFactors) const
Probability condProbProduct (Real invCumYProb1, Real invCumYProb2, Size iName1, Size iName2, const std::vector< Real > &mktFactors) const
Real conditionalProbAtLeastNEvents (Size n, const Date &date, const std::vector< Real > &mktFactors) const
 Conditional probability of n default events or more.
const ext::shared_ptr< LMIntegration > & integration () const override
 access to integration:
Protected Attributes inherited from DefaultLatentModel< copulaPolicy >
ext::shared_ptr< Basketbasket_
ext::shared_ptr< LMIntegration > integration_
std::vector< std::vector< Real > > factorWeights_
Handle< QuotecachedMktFactor_
std::vector< RealidiosyncFctrs_
Size nFactors_
 Number of systemic factors.
Size nVariables_
 Number of latent model variables, idiosyncratic terms or model dim.
copulaType copula_

Detailed Description

template<class copulaPolicy>
class QuantLib::ConstantLossLatentmodel< copulaPolicy >

Constant deterministic loss amount default latent model. Integrable implementation.