Logo
Reference manual - version orea_version
SensitivityScenarioData Class Reference

Description of sensitivity shift scenarios. More...

#include <orea/scenario/sensitivityscenariodata.hpp>

Inheritance diagram for SensitivityScenarioData:

Classes

struct  ShiftData
struct  CurveShiftData
struct  CdsVolShiftData
struct  BaseCorrelationShiftData
struct  VolShiftData
struct  CapFloorVolShiftData
struct  GenericYieldVolShiftData
struct  CurveShiftParData
struct  CapFloorVolShiftParData

Public Types

using SpotShiftData = ShiftData

Public Member Functions

 SensitivityScenarioData (bool parConversion=true, std::string parConversionExcludeFixings=".*", ore::data::ParConversionMatrixRegularisation parConversionMatrixRegularisation=ore::data::ParConversionMatrixRegularisation::Silent)
 Default constructor.
Inspectors
const map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & discountCurveShiftData () const
const map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & indexCurveShiftData () const
const map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & yieldCurveShiftData () const
const map< string, QuantLib::ext::shared_ptr< SpotShiftData > > & fxShiftData () const
const map< string, QuantLib::ext::shared_ptr< CapFloorVolShiftData > > & capFloorVolShiftData () const
const map< string, QuantLib::ext::shared_ptr< GenericYieldVolShiftData > > & swaptionVolShiftData () const
const map< string, QuantLib::ext::shared_ptr< GenericYieldVolShiftData > > & yieldVolShiftData () const
const map< string, QuantLib::ext::shared_ptr< VolShiftData > > & fxVolShiftData () const
const map< string, QuantLib::ext::shared_ptr< CdsVolShiftData > > & cdsVolShiftData () const
const map< string, QuantLib::ext::shared_ptr< BaseCorrelationShiftData > > & baseCorrelationShiftData () const
const map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & zeroInflationCurveShiftData () const
const map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & yoyInflationCurveShiftData () const
const map< string, QuantLib::ext::shared_ptr< CapFloorVolShiftData > > & yoyInflationCapFloorVolShiftData () const
const map< string, QuantLib::ext::shared_ptr< CapFloorVolShiftData > > & zeroInflationCapFloorVolShiftData () const
const map< string, string > & creditCcys () const
const map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & creditCurveShiftData () const
const map< string, QuantLib::ext::shared_ptr< SpotShiftData > > & equityShiftData () const
const map< string, QuantLib::ext::shared_ptr< VolShiftData > > & equityVolShiftData () const
const map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & dividendYieldShiftData () const
const map< string, string > & commodityCurrencies () const
const map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & commodityCurveShiftData () const
const map< string, QuantLib::ext::shared_ptr< VolShiftData > > & commodityVolShiftData () const
const map< string, QuantLib::ext::shared_ptr< VolShiftData > > & correlationShiftData () const
const map< string, QuantLib::ext::shared_ptr< SpotShiftData > > & securityShiftData () const
const vector< pair< string, string > > & crossGammaFilter () const
const bool computeGamma () const
const bool useSpreadedTermStructures () const
const ShiftDatashiftData (const ore::analytics::RiskFactorKey::KeyType &keyType, const std::string &name) const
 Give back the shift data for the given risk factor type, keyType, with the given name.
const set< ore::analytics::RiskFactorKey::KeyType > & parConversionExcludes () const
const std::string & parConversionExcludeFixings () const
ore::data::ParConversionMatrixRegularisation parConversionMatrixRegularisation () const
Setters
bool & parConversion ()
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & discountCurveShiftData ()
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & indexCurveShiftData ()
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & yieldCurveShiftData ()
map< string, QuantLib::ext::shared_ptr< SpotShiftData > > & fxShiftData ()
map< string, QuantLib::ext::shared_ptr< GenericYieldVolShiftData > > & swaptionVolShiftData ()
map< string, QuantLib::ext::shared_ptr< GenericYieldVolShiftData > > & yieldVolShiftData ()
map< string, QuantLib::ext::shared_ptr< CapFloorVolShiftData > > & capFloorVolShiftData ()
map< string, QuantLib::ext::shared_ptr< VolShiftData > > & fxVolShiftData ()
map< string, QuantLib::ext::shared_ptr< CdsVolShiftData > > & cdsVolShiftData ()
map< string, QuantLib::ext::shared_ptr< BaseCorrelationShiftData > > & baseCorrelationShiftData ()
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & zeroInflationCurveShiftData ()
map< string, string > & creditCcys ()
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & creditCurveShiftData ()
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & yoyInflationCurveShiftData ()
map< string, QuantLib::ext::shared_ptr< CapFloorVolShiftData > > & yoyInflationCapFloorVolShiftData ()
map< string, QuantLib::ext::shared_ptr< CapFloorVolShiftData > > & zeroInflationCapFloorVolShiftData ()
map< string, QuantLib::ext::shared_ptr< SpotShiftData > > & equityShiftData ()
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & dividendYieldShiftData ()
map< string, QuantLib::ext::shared_ptr< VolShiftData > > & equityVolShiftData ()
map< string, string > & commodityCurrencies ()
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > & commodityCurveShiftData ()
map< string, QuantLib::ext::shared_ptr< VolShiftData > > & commodityVolShiftData ()
map< string, QuantLib::ext::shared_ptr< VolShiftData > > & correlationShiftData ()
map< string, QuantLib::ext::shared_ptr< SpotShiftData > > & securityShiftData ()
set< ore::analytics::RiskFactorKey::KeyType > & parConversionExcludes ()
vector< pair< string, string > > & crossGammaFilter ()
bool & computeGamma ()
bool & useSpreadedTermStructures ()
void setParConversion (const bool b)
void setParConversionMatrixRegularisation (const ore::data::ParConversionMatrixRegularisation &r)
void addDiscountCurveShiftData (const string &s, const QuantLib::ext::shared_ptr< CurveShiftData > &d)
void addIndexCurveShiftData (const string &s, const QuantLib::ext::shared_ptr< CurveShiftData > &d)
void addYieldCurveShiftData (const string &s, const QuantLib::ext::shared_ptr< CurveShiftData > &d)
void addFxShiftData (const string &s, const QuantLib::ext::shared_ptr< SpotShiftData > &d)
void addSwaptionVolShiftData (const string &s, const QuantLib::ext::shared_ptr< GenericYieldVolShiftData > &d)
void addYieldVolShiftData (const string &s, const QuantLib::ext::shared_ptr< GenericYieldVolShiftData > &d)
void addCapFloorVolShiftData (const string &s, const QuantLib::ext::shared_ptr< CapFloorVolShiftData > &d)
void addFxVolShiftData (const string &s, const QuantLib::ext::shared_ptr< VolShiftData > &d)
void addCdsVolShiftData (const string &s, const QuantLib::ext::shared_ptr< CdsVolShiftData > &d)
void addBaseCorrelationShiftData (const string &s, const QuantLib::ext::shared_ptr< BaseCorrelationShiftData > &d)
void addZeroInflationCurveShiftData (const string &s, const QuantLib::ext::shared_ptr< CurveShiftData > &d)
void addCreditCcys (const string &s, const string &d)
void addCreditCurveShiftData (const string &s, const QuantLib::ext::shared_ptr< CurveShiftData > &d)
void addYoyInflationCurveShiftData (const string &s, const QuantLib::ext::shared_ptr< CurveShiftData > &d)
void addYoyInflationCapFloorVolShiftData (const string &s, const QuantLib::ext::shared_ptr< CapFloorVolShiftData > &d)
void addZeroInflationCapFloorVolShiftData (const string &s, const QuantLib::ext::shared_ptr< CapFloorVolShiftData > &d)
void addEquityShiftData (const string &s, const QuantLib::ext::shared_ptr< SpotShiftData > &d)
void addDividendYieldShiftData (const string &s, const QuantLib::ext::shared_ptr< CurveShiftData > &d)
void addEquityVolShiftData (const string &s, const QuantLib::ext::shared_ptr< VolShiftData > &d)
void addCommodityCurrencies (const string &s, const string &d)
void addCommodityCurveShiftData (const string &s, const QuantLib::ext::shared_ptr< CurveShiftData > &d)
void addCommodityVolShiftData (const string &s, const QuantLib::ext::shared_ptr< VolShiftData > &d)
void addCorrelationShiftData (const string &s, const QuantLib::ext::shared_ptr< VolShiftData > &d)
void addSecurityShiftData (const string &s, const QuantLib::ext::shared_ptr< SpotShiftData > &d)
void setCrossGammaFilter (const vector< pair< string, string > > &d)
void setComputeGamma (const bool b)
void setUseSpreadedTermStructures (const bool b)
void setParConversionExcludeFixings (const std::string b)
Serialisation
virtual void fromXML (XMLNode *node) override
virtual XMLNode * toXML (ore::data::XMLDocument &doc) const override

Equality Operators

map< string, QuantLib::ext::shared_ptr< CurveShiftData > > discountCurveShiftData_
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > indexCurveShiftData_
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > yieldCurveShiftData_
map< string, QuantLib::ext::shared_ptr< SpotShiftData > > fxShiftData_
map< string, QuantLib::ext::shared_ptr< CapFloorVolShiftData > > capFloorVolShiftData_
map< string, QuantLib::ext::shared_ptr< GenericYieldVolShiftData > > swaptionVolShiftData_
map< string, QuantLib::ext::shared_ptr< GenericYieldVolShiftData > > yieldVolShiftData_
map< string, QuantLib::ext::shared_ptr< VolShiftData > > fxVolShiftData_
map< string, QuantLib::ext::shared_ptr< CdsVolShiftData > > cdsVolShiftData_
map< string, QuantLib::ext::shared_ptr< BaseCorrelationShiftData > > baseCorrelationShiftData_
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > zeroInflationCurveShiftData_
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > yoyInflationCurveShiftData_
map< string, QuantLib::ext::shared_ptr< CapFloorVolShiftData > > yoyInflationCapFloorVolShiftData_
map< string, QuantLib::ext::shared_ptr< CapFloorVolShiftData > > zeroInflationCapFloorVolShiftData_
map< string, stringcreditCcys_
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > creditCurveShiftData_
map< string, QuantLib::ext::shared_ptr< SpotShiftData > > equityShiftData_
map< string, QuantLib::ext::shared_ptr< VolShiftData > > equityVolShiftData_
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > dividendYieldShiftData_
map< string, std::string > commodityCurrencies_
map< string, QuantLib::ext::shared_ptr< CurveShiftData > > commodityCurveShiftData_
map< string, QuantLib::ext::shared_ptr< VolShiftData > > correlationShiftData_
map< string, QuantLib::ext::shared_ptr< VolShiftData > > commodityVolShiftData_
map< string, QuantLib::ext::shared_ptr< SpotShiftData > > securityShiftData_
vector< pair< string, string > > crossGammaFilter_
bool computeGamma_
bool useSpreadedTermStructures_
bool parConversion_
set< ore::analytics::RiskFactorKey::KeyType > parConversionExcludes_
std::string parConversionExcludeFixings_
ore::data::ParConversionMatrixRegularisation parConversionMatrixRegularisation_
string getIndexCurrency (string indexName)
 Utilities.
void shiftDataFromXML (XMLNode *child, ShiftData &data)
void curveShiftDataFromXML (XMLNode *child, CurveShiftData &data)
void volShiftDataFromXML (XMLNode *child, VolShiftData &data, const bool requireShiftStrikes=true)
void shiftDataToXML (ore::data::XMLDocument &doc, XMLNode *node, const ShiftData &data) const
 toXML helper methods
void curveShiftDataToXML (ore::data::XMLDocument &doc, XMLNode *node, const CurveShiftData &data) const
void volShiftDataToXML (ore::data::XMLDocument &doc, XMLNode *node, const VolShiftData &data) const

Detailed Description

Description of sensitivity shift scenarios.