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. | |
Allow for interpretation of how data is stored within cube and AggregationScenarioData.