Logo
Reference manual - version qle_version
GaussianLHPLossModel Class Reference

#include <qle/models/gaussianlhplossmodel.hpp>

Inheritance diagram for GaussianLHPLossModel:

Public Types

typedef GaussianCopulaPolicy copulaType

Public Member Functions

 GaussianLHPLossModel (const Handle< Quote > &correlQuote, const std::vector< Handle< QuantLib::RecoveryRateQuote > > &quotes)
 GaussianLHPLossModel (Real correlation, const std::vector< Real > &recoveries)
 GaussianLHPLossModel (const Handle< Quote > &correlQuote, const std::vector< Real > &recoveries)
void update () override
Real expectedTrancheLoss (const Date &d, Real recoveryRate=Null< Real >()) const override
Real probOverLoss (const Date &d, Real remainingLossFraction) const override
Real expectedShortfall (const Date &d, Probability perctl) const override
 Returns the ESF as an absolute amount (rather than a fraction).
Real percentile (const Date &d, Real perctl) const override
 Value at Risk given a default loss percentile.
Probability averageProb (const Date &d) const
Real averageRecovery (const Date &d) const

Protected Member Functions

Real percentilePortfolioLossFraction (const Date &d, Real perctl) const
Real expectedRecovery (const Date &d, Size iName, const DefaultProbKey &ik) const override
virtual Real expectedShortfall (const Date &d, Real percentile) const
 Expected shortfall given a default loss percentile.
virtual std::vector< Real > splitVaRLevel (const Date &d, Real loss) const
 Associated VaR fraction to each counterparty.
virtual std::vector< Real > splitESFLevel (const Date &d, Real loss) const
 Associated ESF fraction to each counterparty.
virtual std::map< Real, Probability > lossDistribution (const Date &) const
 Full loss distribution.
virtual Real densityTrancheLoss (const Date &d, Real lossFraction) const
 Probability density of a given loss fraction of the basket notional.
virtual std::vector< Probability > probsBeingNthEvent (Size n, const Date &d) const
virtual Real defaultCorrelation (const Date &d, Size iName, Size jName) const
 Pearsons' default probability correlation.
virtual Probability probAtLeastNEvents (Size n, const Date &d) const
virtual QuantLib::Real correlation () const

Additional Inherited Members

Protected Attributes inherited from DefaultLossModel
RelinkableHandle< QuantExt::Basketbasket_

Detailed Description

Portfolio loss model with analytical expected tranche loss for a large homogeneous pool with Gaussian one-factor copula. See for example "The Normal Inverse Gaussian Distribution for Synthetic CDO pricing.", Anna Kalemanova, Bernd Schmid, Ralf Werner, Journal of Derivatives, Vol. 14, No. 3, (Spring 2007), pp. 80-93. http://www.defaultrisk.com/pp_crdrv_91.htm

It can be used to price a credit derivative or to provide risk metrics of a portfolio.

Member Function Documentation

◆ expectedTrancheLoss()

Real expectedTrancheLoss ( const Date & d,
Real recoveryRate = Null<Real>() ) const
overridevirtual

Reimplemented from DefaultLossModel.

◆ probOverLoss()

Real probOverLoss ( const Date & d,
Real remainingLossFraction ) const
overridevirtual

The passed remainingLossFraction is in live tranche units, not portfolio as a fraction of the remaining(live) tranche (i.e. a_remaining=0% and det_remaining=100%)

Reimplemented from DefaultLossModel.

◆ expectedRecovery()

Real expectedRecovery ( const Date & ,
Size iName,
const DefaultProbKey &  ) const
overrideprotectedvirtual

Expected RR for name conditinal to default by that date.

Reimplemented from DefaultLossModel.

◆ percentile()

Real percentile ( const Date & d,
Real percentile ) const
overridevirtual

Value at Risk given a default loss percentile.

Reimplemented from DefaultLossModel.