Logo
Reference manual - version orea_version
SensitivityStorageManager Class Referenceabstract
Inheritance diagram for SensitivityStorageManager:

Public Member Functions

virtual QuantLib::Size getRequiredSize () const =0
virtual void addSensitivities (QuantLib::ext::shared_ptr< ore::analytics::NPVCube > cube, const QuantLib::ext::shared_ptr< ore::data::Trade > &trade, const QuantLib::ext::shared_ptr< ore::data::Market > &market, const QuantLib::Size dateIndex=QuantLib::Null< QuantLib::Size >(), const QuantLib::Size sampleIndex=QuantLib::Null< QuantLib::Size >()) const =0
virtual QuantLib::ext::any getSensitivities (const QuantLib::ext::shared_ptr< ore::analytics::NPVCube > &cube, const std::string &nettingSetId, const QuantLib::Size dateIndex=QuantLib::Null< QuantLib::Size >(), const QuantLib::Size sampleIndex=QuantLib::Null< QuantLib::Size >()) const =0

Member Function Documentation

◆ getRequiredSize()

virtual QuantLib::Size getRequiredSize ( ) const
pure virtual

Get required size (i.e. number of floats / reals) to store sensitivities in cube.

Implemented in CamSensitivityStorageManager, and SimmSensitivityStorageManager.

◆ addSensitivities()

virtual void addSensitivities ( QuantLib::ext::shared_ptr< ore::analytics::NPVCube > cube,
const QuantLib::ext::shared_ptr< ore::data::Trade > & trade,
const QuantLib::ext::shared_ptr< ore::data::Market > & market,
const QuantLib::Size dateIndex = QuantLib::Null< QuantLib::Size >(),
const QuantLib::Size sampleIndex = QuantLib::Null< QuantLib::Size >() ) const
pure virtual

Add to the sensitivities for the given trade to the cube. The cube must contain an id matching the trade's netting set. The sensitivities are then added to this id. If dateIndex and sampleIndex are null, the T0 slice of the cube is populated, otherwise the cells for the given date and sample. The depth of the cube must at least be what getRequiredSize() returns.

Implemented in CamSensitivityStorageManager, and SimmSensitivityStorageManager.

◆ getSensitivities()

virtual QuantLib::ext::any getSensitivities ( const QuantLib::ext::shared_ptr< ore::analytics::NPVCube > & cube,
const std::string & nettingSetId,
const QuantLib::Size dateIndex = QuantLib::Null< QuantLib::Size >(),
const QuantLib::Size sampleIndex = QuantLib::Null< QuantLib::Size >() ) const
pure virtual

Get the stored sensitivities for a netting set for T0 (dateIndex = sampleIndex = null) or the given date and sample. The return value varies for each concrete implementation.

Implemented in CamSensitivityStorageManager, and SimmSensitivityStorageManager.