Logo
Reference manual - version orea_version
Public Member Functions | List of all members
CubeInterpretation Class Reference

Allow for interpretation of how data is stored within cube and AggregationScenarioData. More...

#include <orea/cube/cubeinterpretation.hpp>

Public Member Functions

 CubeInterpretation (const bool storeFlows, const bool withCloseOutLag, const QuantLib::Handle< AggregationScenarioData > &aggregationScenarioData=QuantLib::Handle< AggregationScenarioData >(), const QuantLib::ext::shared_ptr< DateGrid > &dateGrid=nullptr, const Size storeCreditStateNPVs=0, const bool flipViewXVA=false)
 
bool storeFlows () const
 inspectors
 
bool withCloseOutLag () const
 
const QuantLib::Handle< AggregationScenarioData > & aggregationScenarioData () const
 
const QuantLib::ext::shared_ptr< DateGrid > & dateGrid () const
 
Size storeCreditStateNPVs () const
 
bool flipViewXVA () const
 
Size requiredNpvCubeDepth () const
 npv cube depth that is at least required to work with this interpretation
 
Size defaultDateNpvIndex () const
 indices in depth direction, might be Null<Size>() if not applicable
 
Size closeOutDateNpvIndex () const
 
Size mporFlowsIndex () const
 
Size creditStateNPVsIndex () const
 
Real getGenericValue (const QuantLib::ext::shared_ptr< NPVCube > &cube, Size tradeIdx, Size dateIdx, Size sampleIdx, Size depth) const
 Retrieve an arbitrary value from the Cube (user needs to know the precise location within depth axis)
 
Real getDefaultNpv (const QuantLib::ext::shared_ptr< NPVCube > &cube, Size tradeIdx, Size dateIdx, Size sampleIdx) const
 Retrieve the default date NPV from the Cube.
 
Real getCloseOutNpv (const QuantLib::ext::shared_ptr< NPVCube > &cube, Size tradeIdx, Size dateIdx, Size sampleIdx) const
 Retrieve the close-out date NPV from the Cube.
 
Real getMporPositiveFlows (const QuantLib::ext::shared_ptr< NPVCube > &cube, Size tradeIdx, Size dateIdx, Size sampleIdx) const
 Retrieve the aggregate value of Margin Period of Risk positive cashflows from the Cube.
 
Real getMporNegativeFlows (const QuantLib::ext::shared_ptr< NPVCube > &cube, Size tradeIdx, Size dateIdx, Size sampleIdx) const
 Retrieve the aggregate value of Margin Period of Risk negative cashflows from the Cube.
 
Real getMporFlows (const QuantLib::ext::shared_ptr< NPVCube > &cube, Size tradeIdx, Size dateIdx, Size sampleIdx) const
 Retrieve the aggregate value of Margin Period of Risk cashflows from the Cube.
 
Real getDefaultAggregationScenarioData (const AggregationScenarioDataType &dataType, Size dateIdx, Size sampleIdx, const std::string &qualifier="") const
 Retrieve a (default date) simulated risk factor value from AggregationScenarioData.
 
Real getCloseOutAggregationScenarioData (const AggregationScenarioDataType &dataType, Size dateIdx, Size sampleIdx, const std::string &qualifier="") const
 Retrieve a (default date) simulated risk factor value from AggregationScenarioData.
 
Size getMporCalendarDays (const QuantLib::ext::shared_ptr< NPVCube > &cube, Size dateIdx) const
 Number of Calendar Days between a given default date and corresponding close-out date.
 

Detailed Description

Allow for interpretation of how data is stored within cube and AggregationScenarioData.