Logo
Reference manual - version orea_version
Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
XvaAnalyticImpl Class Reference
+ Inheritance diagram for XvaAnalyticImpl:

Public Member Functions

 XvaAnalyticImpl (const QuantLib::ext::shared_ptr< InputParameters > &inputs, const QuantLib::ext::shared_ptr< Scenario > &offsetScenario=nullptr, const QuantLib::ext::shared_ptr< ScenarioSimMarketParameters > &offsetSimMarketParams=nullptr)
 
virtual void runAnalytic (const QuantLib::ext::shared_ptr< ore::data::InMemoryLoader > &loader, const std::set< std::string > &runTypes={}) override
 
void setUpConfigurations () override
 
void checkConfigurations (const QuantLib::ext::shared_ptr< Portfolio > &portfolio)
 
- Public Member Functions inherited from Analytic::Impl
 Impl (const QuantLib::ext::shared_ptr< InputParameters > &inputs)
 
void setLabel (const string &label)
 
const std::string & label () const
 
void setAnalytic (Analytic *analytic)
 
Analyticanalytic () const
 
void setInputs (const QuantLib::ext::shared_ptr< InputParameters > &inputs)
 
bool generateAdditionalResults () const
 
void setGenerateAdditionalResults (const bool generateAdditionalResults)
 
bool hasDependentAnalytic (const std::string &key)
 
template<class T >
QuantLib::ext::shared_ptr< T > dependentAnalytic (const std::string &key) const
 
QuantLib::ext::shared_ptr< AnalyticdependentAnalytic (const std::string &key) const
 
const std::map< std::string, QuantLib::ext::shared_ptr< Analytic > > & dependentAnalytics () const
 
void addDependentAnalytic (const std::string &key, const QuantLib::ext::shared_ptr< Analytic > &analytic)
 
std::vector< QuantLib::ext::shared_ptr< Analytic > > allDependentAnalytics () const
 
virtual std::vector< QuantLib::Date > additionalMarketDates () const
 

Static Public Attributes

static constexpr const char * LABEL = "XVA"
 

Protected Member Functions

QuantLib::ext::shared_ptr< ore::data::EngineFactoryengineFactory () override
 build an engine factory
 
void buildScenarioSimMarket ()
 
void buildCrossAssetModel (bool continueOnError)
 
void buildScenarioGenerator (bool continueOnError)
 
void initCubeDepth ()
 
void initCube (QuantLib::ext::shared_ptr< NPVCube > &cube, const std::set< std::string > &ids, Size cubeDepth)
 
void initClassicRun (const QuantLib::ext::shared_ptr< Portfolio > &portfolio)
 
void buildClassicCube (const QuantLib::ext::shared_ptr< Portfolio > &portfolio)
 
QuantLib::ext::shared_ptr< PortfolioclassicRun (const QuantLib::ext::shared_ptr< Portfolio > &portfolio)
 
QuantLib::ext::shared_ptr< EngineFactoryamcEngineFactory (const QuantLib::ext::shared_ptr< QuantExt::CrossAssetModel > &cam, const std::vector< Date > &grid)
 
void buildAmcPortfolio ()
 
void amcRun (bool doClassicRun)
 
void runPostProcessor ()
 
Matrix creditStateCorrelationMatrix () const
 

Protected Attributes

QuantLib::ext::shared_ptr< ScenarioSimMarketsimMarket_
 
QuantLib::ext::shared_ptr< ScenarioSimMarketsimMarketCalibration_
 
QuantLib::ext::shared_ptr< ScenarioSimMarketoffsetSimMarket_
 
QuantLib::ext::shared_ptr< EngineFactoryengineFactory_
 
QuantLib::ext::shared_ptr< CrossAssetModelmodel_
 
QuantLib::ext::shared_ptr< ScenarioGeneratorscenarioGenerator_
 
QuantLib::ext::shared_ptr< PortfolioamcPortfolio_
 
QuantLib::ext::shared_ptr< PortfolioclassicPortfolio_
 
QuantLib::ext::shared_ptr< NPVCubecube_
 
QuantLib::ext::shared_ptr< NPVCubenettingSetCube_
 
QuantLib::ext::shared_ptr< NPVCubecptyCube_
 
QuantLib::ext::shared_ptr< NPVCubeamcCube_
 
QuantLib::RelinkableHandle< AggregationScenarioDatascenarioData_
 
QuantLib::ext::shared_ptr< CubeInterpretationcubeInterpreter_
 
QuantLib::ext::shared_ptr< DynamicInitialMarginCalculatordimCalculator_
 
QuantLib::ext::shared_ptr< PostProcesspostProcess_
 
QuantLib::ext::shared_ptr< ScenariooffsetScenario_
 
QuantLib::ext::shared_ptr< ScenarioSimMarketParametersoffsetSimMarketParams_
 
Size cubeDepth_ = 0
 
QuantLib::ext::shared_ptr< DateGridgrid_
 
Size samples_ = 0
 
bool runSimulation_ = false
 
bool runXva_ = false
 
- Protected Attributes inherited from Analytic::Impl
QuantLib::ext::shared_ptr< InputParametersinputs_
 
std::string label_
 label for logging purposes primarily
 
std::map< std::string, QuantLib::ext::shared_ptr< Analytic > > dependentAnalytics_