#include <orea/simm/simmconcentration.hpp>
Public Member Functions | |
SimmConcentrationBase () | |
QuantLib::Real | threshold (const CrifRecord::RiskType &riskType, const std::string &qualifier) const override |
Public Member Functions inherited from SimmConcentration | |
virtual | ~SimmConcentration () |
Destructor. More... | |
virtual QuantLib::Real | threshold (const CrifRecord::RiskType &riskType, const std::string &qualifier) const =0 |
Protected Member Functions | |
QuantLib::Real | thresholdImpl (const QuantLib::ext::shared_ptr< SimmBucketMapper > &simmBucketMapper, const CrifRecord::RiskType &riskType, const std::string &qualifier) const |
QuantLib::Real | fxVolThreshold (const std::string &fxPair) const |
Return concentration threshold for Risk_FXVol given the fxPair . More... | |
std::string | category (const std::string &qualifier, const std::map< std::string, std::set< std::string > > &categories) const |
Find the concentration threshold category of the qualifier . More... | |
Protected Attributes | |
QuantLib::Real | units_ |
The units of quotation of the threshold amount e.g. $1MM. More... | |
std::map< CrifRecord::RiskType, QuantLib::Real > | flatThresholds_ |
std::map< CrifRecord::RiskType, std::map< std::string, QuantLib::Real > > | bucketedThresholds_ |
std::map< std::string, std::set< std::string > > | irCategories_ |
std::map< std::string, std::set< std::string > > | fxCategories_ |
QuantLib::ext::shared_ptr< SimmBucketMapper > | simmBucketMapper_ |
Maps SIMM qualifiers to SIMM buckets. More... | |
Definition at line 47 of file simmconcentration.hpp.
Default ctor. May need to generalise if units of threshold quotation change significantly
Definition at line 55 of file simmconcentration.hpp.
|
overridevirtual |
Early versions of SIMM did not have concentration thresholds assigned. This base class just returns the maximum real number i.e. effectively no concentration threshold
Implements SimmConcentration.
Reimplemented in SimmConcentrationCalibration, SimmConcentration_ISDA_V1_3, SimmConcentration_ISDA_V1_3_38, SimmConcentration_ISDA_V2_0, SimmConcentration_ISDA_V2_1, SimmConcentration_ISDA_V2_2, SimmConcentration_ISDA_V2_3, SimmConcentration_ISDA_V2_3_8, SimmConcentration_ISDA_V2_5, SimmConcentration_ISDA_V2_5A, and SimmConcentration_ISDA_V2_6.
Definition at line 61 of file simmconcentration.hpp.
|
protected |
Shared threshold implementation for derived classes to call
Definition at line 39 of file simmconcentration.cpp.
|
protected |
Return concentration threshold for Risk_FXVol given the fxPair
.
Definition at line 95 of file simmconcentration.cpp.
|
protected |
Find the concentration threshold category of the qualifier
.
Definition at line 78 of file simmconcentration.cpp.
|
protected |
The units of quotation of the threshold amount e.g. $1MM.
Definition at line 67 of file simmconcentration.hpp.
|
protected |
Map from SIMM RiskType to another map that holds the SIMM concentration threshold bucket to threshold value mappings
Definition at line 72 of file simmconcentration.hpp.
|
protected |
Map from SIMM RiskType to another map that holds the SIMM concentration threshold bucket to threshold value mappings
Definition at line 77 of file simmconcentration.hpp.
|
protected |
Map defining the currency groupings for IR concentration thresholds i.e. key is the category and value is the set of currencies in that category.
Definition at line 82 of file simmconcentration.hpp.
|
protected |
Map defining the currency groupings for concentration thresholds i.e. key is the category and value is the set of currencies in that category.
Definition at line 87 of file simmconcentration.hpp.
|
protected |
Maps SIMM qualifiers to SIMM buckets.
Definition at line 90 of file simmconcentration.hpp.