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) |
![]() | |
Impl (const QuantLib::ext::shared_ptr< InputParameters > &inputs) | |
void | setLabel (const string &label) |
const std::string & | label () const |
void | setAnalytic (Analytic *analytic) |
Analytic * | analytic () 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< Analytic > | dependentAnalytic (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::EngineFactory > | engineFactory () 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< Portfolio > | classicRun (const QuantLib::ext::shared_ptr< Portfolio > &portfolio) |
QuantLib::ext::shared_ptr< EngineFactory > | amcEngineFactory (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< ScenarioSimMarket > | simMarket_ |
QuantLib::ext::shared_ptr< ScenarioSimMarket > | simMarketCalibration_ |
QuantLib::ext::shared_ptr< ScenarioSimMarket > | offsetSimMarket_ |
QuantLib::ext::shared_ptr< EngineFactory > | engineFactory_ |
QuantLib::ext::shared_ptr< CrossAssetModel > | model_ |
QuantLib::ext::shared_ptr< ScenarioGenerator > | scenarioGenerator_ |
QuantLib::ext::shared_ptr< Portfolio > | amcPortfolio_ |
QuantLib::ext::shared_ptr< Portfolio > | classicPortfolio_ |
QuantLib::ext::shared_ptr< NPVCube > | cube_ |
QuantLib::ext::shared_ptr< NPVCube > | nettingSetCube_ |
QuantLib::ext::shared_ptr< NPVCube > | cptyCube_ |
QuantLib::ext::shared_ptr< NPVCube > | amcCube_ |
QuantLib::RelinkableHandle< AggregationScenarioData > | scenarioData_ |
QuantLib::ext::shared_ptr< CubeInterpretation > | cubeInterpreter_ |
QuantLib::ext::shared_ptr< DynamicInitialMarginCalculator > | dimCalculator_ |
QuantLib::ext::shared_ptr< PostProcess > | postProcess_ |
QuantLib::ext::shared_ptr< Scenario > | offsetScenario_ |
QuantLib::ext::shared_ptr< ScenarioSimMarketParameters > | offsetSimMarketParams_ |
Size | cubeDepth_ = 0 |
QuantLib::ext::shared_ptr< DateGrid > | grid_ |
Size | samples_ = 0 |
bool | runSimulation_ = false |
bool | runXva_ = false |
![]() | |
QuantLib::ext::shared_ptr< InputParameters > | inputs_ |
std::string | label_ |
label for logging purposes primarily | |
std::map< std::string, QuantLib::ext::shared_ptr< Analytic > > | dependentAnalytics_ |