Logo
Fully annotated reference manual - version 1.8.12
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
SimmAnalytic Class Reference

#include <orea/app/analytics/simmanalytic.hpp>

+ Inheritance diagram for SimmAnalytic:
+ Collaboration diagram for SimmAnalytic:

Public Member Functions

 SimmAnalytic (const QuantLib::ext::shared_ptr< InputParameters > &inputs, const Crif &crif=Crif(), const bool hasNettingSetDetails=false, const bool determineWinningRegulations=true)
 
const Crifcrif () const
 
bool hasNettingSetDetails ()
 
bool determineWinningRegulations ()
 
virtual void loadCrifRecords (const QuantLib::ext::shared_ptr< ore::data::InMemoryLoader > &loader)
 Load CRIF from external source, override to generate CRIF. More...
 
- Public Member Functions inherited from Analytic
 Analytic ()
 Constructors. More...
 
 Analytic (std::unique_ptr< Impl > impl, const std::set< std::string > &analyticTypes, const QuantLib::ext::shared_ptr< InputParameters > &inputs, bool simulationConfig=false, bool sensitivityConfig=false, bool scenarioGeneratorConfig=false, bool crossAssetModelConfig=false)
 
virtual ~Analytic ()
 
virtual void runAnalytic (const QuantLib::ext::shared_ptr< ore::data::InMemoryLoader > &loader, const std::set< std::string > &runTypes={})
 Run only those analytic types that are inclcuded in the runTypes vector, run all if the runType vector is empty. More...
 
virtual void buildConfigurations (const bool=false)
 
virtual void setUpConfigurations ()
 
virtual void buildMarket (const QuantLib::ext::shared_ptr< ore::data::InMemoryLoader > &loader, const bool marketRequired=true)
 
virtual void buildPortfolio ()
 
virtual void marketCalibration (const QuantLib::ext::shared_ptr< MarketCalibrationReportBase > &mcr=nullptr)
 
virtual void modifyPortfolio ()
 
virtual void replaceTrades ()
 
const std::string label () const
 Inspectors. More...
 
const std::set< std::string > & analyticTypes () const
 
const QuantLib::ext::shared_ptr< InputParameters > & inputs () const
 
const QuantLib::ext::shared_ptr< ore::data::Market > & market () const
 
QuantLib::ext::shared_ptr< MarketImplgetMarket () const
 
const QuantLib::ext::shared_ptr< ore::data::Portfolio > & portfolio () const
 
void setInputs (const QuantLib::ext::shared_ptr< InputParameters > &inputs)
 
void setMarket (const QuantLib::ext::shared_ptr< ore::data::Market > &market)
 
void setPortfolio (const QuantLib::ext::shared_ptr< ore::data::Portfolio > &portfolio)
 
std::vector< QuantLib::ext::shared_ptr< ore::data::TodaysMarketParameters > > todaysMarketParams ()
 
const QuantLib::ext::shared_ptr< ore::data::Loader > & loader () const
 
Configurationsconfigurations ()
 
analytic_reportsreports ()
 Result reports. More...
 
analytic_npvcubesnpvCubes ()
 
analytic_mktcubesmktCubes ()
 
analytic_stresstestsstressTests ()
 
const bool getWriteIntermediateReports () const
 
void setWriteIntermediateReports (const bool flag)
 
bool match (const std::set< std::string > &runTypes)
 Check whether any of the requested run types is covered by this analytic. More...
 
const std::unique_ptr< Impl > & impl ()
 
std::set< QuantLib::Date > marketDates () const
 
std::vector< QuantLib::ext::shared_ptr< Analytic > > allDependentAnalytics () const
 

Private Attributes

Crif crif_
 
bool hasNettingSetDetails_
 
bool determineWinningRegulations_
 

Additional Inherited Members

- Public Types inherited from Analytic
typedef std::map< std::string, std::map< std::string, QuantLib::ext::shared_ptr< ore::data::InMemoryReport > > > analytic_reports
 
typedef std::map< std::string, std::map< std::string, QuantLib::ext::shared_ptr< NPVCube > > > analytic_npvcubes
 
typedef std::map< std::string, std::map< std::string, QuantLib::ext::shared_ptr< AggregationScenarioData > > > analytic_mktcubes
 
typedef std::map< std::string, std::map< std::string, QuantLib::ext::shared_ptr< StressTestScenarioData > > > analytic_stresstests
 
- Protected Attributes inherited from Analytic
std::unique_ptr< Implimpl_
 
std::set< std::string > types_
 list of analytic types run by this analytic More...
 
QuantLib::ext::shared_ptr< InputParametersinputs_
 contains all the input parameters for the run More...
 
Configurations configurations_
 
QuantLib::ext::shared_ptr< ore::data::Marketmarket_
 
QuantLib::ext::shared_ptr< ore::data::Loaderloader_
 
QuantLib::ext::shared_ptr< ore::data::Portfolioportfolio_
 
analytic_reports reports_
 
analytic_npvcubes npvCubes_
 
analytic_mktcubes mktCubes_
 
analytic_stresstests stressTests_
 
bool writeIntermediateReports_ = true
 

Detailed Description

Definition at line 42 of file simmanalytic.hpp.

Constructor & Destructor Documentation

◆ SimmAnalytic()

SimmAnalytic ( const QuantLib::ext::shared_ptr< InputParameters > &  inputs,
const Crif crif = Crif(),
const bool  hasNettingSetDetails = false,
const bool  determineWinningRegulations = true 
)

Definition at line 44 of file simmanalytic.hpp.

47 : Analytic(std::make_unique<SimmAnalyticImpl>(inputs), {"SIMM"}, inputs, false, false, false, false),
48 crif_(crif),
51 setWriteIntermediateReports(inputs->writeSimmIntermediateReports());
52 }
void setWriteIntermediateReports(const bool flag)
Definition: analytic.hpp:137
const QuantLib::ext::shared_ptr< InputParameters > & inputs() const
Definition: analytic.hpp:116
Analytic()
Constructors.
Definition: analytic.hpp:79
const Crif & crif() const

Member Function Documentation

◆ crif()

const Crif & crif ( ) const

Definition at line 54 of file simmanalytic.hpp.

54{ return crif_; }

◆ hasNettingSetDetails()

bool hasNettingSetDetails ( )

Definition at line 55 of file simmanalytic.hpp.

55{ return hasNettingSetDetails_; }

◆ determineWinningRegulations()

bool determineWinningRegulations ( )

Definition at line 56 of file simmanalytic.hpp.

◆ loadCrifRecords()

void loadCrifRecords ( const QuantLib::ext::shared_ptr< ore::data::InMemoryLoader > &  loader)
virtual

Load CRIF from external source, override to generate CRIF.

Definition at line 111 of file simmanalytic.cpp.

111 {
112 QL_REQUIRE(inputs_, "Inputs not set");
113 QL_REQUIRE(!inputs_->crif().empty(), "CRIF loader does not contain any records");
114
115 crif_ = inputs_->crif();
118}
const QuantLib::ext::shared_ptr< ore::data::Market > & market() const
Definition: analytic.hpp:117
QuantLib::ext::shared_ptr< InputParameters > inputs_
contains all the input parameters for the run
Definition: analytic.hpp:156
bool hasNettingSetDetails() const
Check if netting set details are used anywhere, instead of just the netting set ID.
Definition: crif.cpp:342
void fillAmountUsd(const QuantLib::ext::shared_ptr< ore::data::Market > market)
Definition: crif.cpp:351
+ Here is the call graph for this function:

Member Data Documentation

◆ crif_

Crif crif_
private

Definition at line 62 of file simmanalytic.hpp.

◆ hasNettingSetDetails_

bool hasNettingSetDetails_
private

Definition at line 63 of file simmanalytic.hpp.

◆ determineWinningRegulations_

bool determineWinningRegulations_
private

Definition at line 64 of file simmanalytic.hpp.