# QuantLib_RecursiveLossModel man page

RecursiveLossModel< copulaPolicy > —

## Synopsis

`#include <ql/experimental/credit/recursivelossmodel.hpp>`

Inherits **DefaultLossModel**.

### Public Member Functions

RecursiveLossModel(const boost::shared_ptr<ConstantLossLatentmodel< copulaPolicy > > &m,Sizenbuckets=1)Real expectedTrancheLoss(constDate&date) constDisposable< std::vector<Real> >lossProbability(constDate&date) constDisposable< std::map<Real,Probability> >lossDistribution(constDate&d) const

Full loss distribution.Real percentile(constDate&d,Realpercentile) const

Value at Risk given a default loss percentile.Real expectedShortfall(constDate&d,Realperctl) const

Expected shortfall given a default loss percentile.

### Protected Member Functions

voidresetModel()

Concrete models do now any updates/inits they need on basket reset.

### Protected Attributes

const boost::shared_ptr<ConstantLossLatentmodel< copulaPolicy > >copula_

## Detailed Description

### template<class copulaPolicy>

class QuantLib::RecursiveLossModel< copulaPolicy >" Recursive STCDO default loss model for a heterogeneous pool of names. The pool names are heterogeneous in their default probabilities, notionals and recovery rates. Correlations are given by the latent model. The recursive pricing algorithm used here is described in Andersen, Sidenius and Basu; 'All your hedges in one basket', Risk, November 2003, pages 67-72

```
Notice that using copulas other than Gaussian it is only an
approximation (see remark on p.68).
```

## Author

Generated automatically by Doxygen for QuantLib from the source code.

## Referenced By

RecursiveLossModel(3) and resetModel(3) are aliases of QuantLib_RecursiveLossModel(3).