QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
Loss Distribution for Homogeneous Pool. More...
#include <lossdistribution.hpp>
Public Member Functions | |
LossDistHomogeneous (Size nBuckets, Real maximum) | |
Distribution | operator() (Real volume, const std::vector< Real > &probabilities) const |
Distribution | operator() (const std::vector< Real > &volumes, const std::vector< Real > &probabilities) const override |
Size | buckets () const override |
Real | maximum () const override |
Size | size () const |
Real | volume () const |
std::vector< Real > | probability () const |
std::vector< Real > | excessProbability () const |
Public Member Functions inherited from LossDist | |
LossDist ()=default | |
virtual | ~LossDist ()=default |
virtual Distribution | operator() (const std::vector< Real > &volumes, const std::vector< Real > &probabilities) const =0 |
virtual Size | buckets () const =0 |
virtual Real | maximum () const =0 |
Private Attributes | |
Size | nBuckets_ |
Real | maximum_ |
Size | n_ = 0 |
Real | volume_ = 0.0 |
std::vector< Real > | probability_ |
std::vector< Real > | excessProbability_ |
Additional Inherited Members | |
Static Public Member Functions inherited from LossDist | |
static Real | binomialProbabilityOfNEvents (int n, std::vector< Real > &p) |
static Real | binomialProbabilityOfAtLeastNEvents (int n, std::vector< Real > &p) |
static std::vector< Real > | probabilityOfNEvents (std::vector< Real > &p) |
static Real | probabilityOfNEvents (int n, std::vector< Real > &p) |
static Real | probabilityOfAtLeastNEvents (int n, std::vector< Real > &p) |
Loss Distribution for Homogeneous Pool.
Loss Distribution for Homogeneous Pool
Loss distribution for equal volumes but varying probabilities of default.
The method builds the exact loss distribution for a homogeneous pool of underlyings iteratively by computing the convolution of the given loss distribution with the "loss distribution" of an additional credit following
Xiaofong Ma, "Numerical Methods for the Valuation of Synthetic
Collateralized Debt Obligations", PhD Thesis, Graduate Department of Computer Science, University of Toronto, 2007
http://www.cs.toronto.edu/pub/reports/na/ma-07-phd.pdf (formula 2.1)
avoiding numerical instability of the algorithm by
John Hull and Alan White, "Valuation of a CDO and nth to default CDS without Monte Carlo simulation", Journal of Derivatives 12, 2, 2004
Definition at line 138 of file lossdistribution.hpp.
LossDistHomogeneous | ( | Size | nBuckets, |
Real | maximum | ||
) |
Definition at line 140 of file lossdistribution.hpp.
Distribution operator() | ( | Real | volume, |
const std::vector< Real > & | probabilities | ||
) | const |
Definition at line 182 of file lossdistribution.cpp.
|
overridevirtual |
Implements LossDist.
Definition at line 220 of file lossdistribution.cpp.
|
overridevirtual |
Implements LossDist.
Definition at line 144 of file lossdistribution.hpp.
|
overridevirtual |
Implements LossDist.
Definition at line 145 of file lossdistribution.hpp.
Size size | ( | ) | const |
Definition at line 146 of file lossdistribution.hpp.
Real volume | ( | ) | const |
std::vector< Real > probability | ( | ) | const |
Definition at line 148 of file lossdistribution.hpp.
std::vector< Real > excessProbability | ( | ) | const |
Definition at line 149 of file lossdistribution.hpp.
|
private |
Definition at line 151 of file lossdistribution.hpp.
|
private |
Definition at line 152 of file lossdistribution.hpp.
|
mutableprivate |
Definition at line 153 of file lossdistribution.hpp.
|
mutableprivate |
Definition at line 154 of file lossdistribution.hpp.
|
mutableprivate |
Definition at line 155 of file lossdistribution.hpp.
|
mutableprivate |
Definition at line 156 of file lossdistribution.hpp.