Logo
Reference manual - version orea_version
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ReportWriter Class Reference

Write ORE outputs to reports. More...

#include <orea/app/reportwriter.hpp>

Public Member Functions

 ReportWriter (const std::string &nullString="#NA")
 
virtual void writeNpv (ore::data::Report &report, const std::string &baseCurrency, boost::shared_ptr< ore::data::Market > market, const std::string &configuration, boost::shared_ptr< Portfolio > portfolio)
 
virtual void writeCashflow (ore::data::Report &report, const std::string &baseCurrency, boost::shared_ptr< ore::data::Portfolio > portfolio, boost::shared_ptr< ore::data::Market > market=boost::shared_ptr< ore::data::Market >(), const std::string &configuration=ore::data::Market::defaultConfiguration, const bool includePastCashflows=false)
 
virtual void writeCashflowNpv (ore::data::Report &report, const ore::data::InMemoryReport &cashflowReport, boost::shared_ptr< ore::data::Market > market, const std::string &configuration, const std::string &baseCcy, const Date &horizon=Date::maxDate())
 
virtual void writeCurves (ore::data::Report &report, const std::string &configID, const DateGrid &grid, const TodaysMarketParameters &marketConfig, const boost::shared_ptr< Market > &market, const bool continueOnError=false)
 
virtual void writeTradeExposures (ore::data::Report &report, boost::shared_ptr< PostProcess > postProcess, const std::string &tradeId)
 
virtual void writeNettingSetExposures (ore::data::Report &report, boost::shared_ptr< PostProcess > postProcess, const std::string &nettingSetId)
 
virtual void writeNettingSetExposures (ore::data::Report &report, boost::shared_ptr< PostProcess > postProcess)
 
virtual void writeNettingSetCvaSensitivities (ore::data::Report &report, boost::shared_ptr< PostProcess > postProcess, const std::string &nettingSetId)
 
virtual void writeNettingSetColva (ore::data::Report &report, boost::shared_ptr< PostProcess > postProcess, const std::string &nettingSetId)
 
virtual void writeXVA (ore::data::Report &report, const string &allocationMethod, boost::shared_ptr< Portfolio > portfolio, boost::shared_ptr< PostProcess > postProcess)
 
virtual void writeAggregationScenarioData (ore::data::Report &report, const AggregationScenarioData &data)
 
virtual void writeScenarioReport (ore::data::Report &report, const boost::shared_ptr< SensitivityCube > &sensitivityCube, QuantLib::Real outputThreshold=0.0)
 
virtual void writeSensitivityReport (ore::data::Report &report, const boost::shared_ptr< SensitivityStream > &ss, QuantLib::Real outputThreshold=0.0, QuantLib::Size outputPrecision=2)
 
virtual void writeSensitivityConfigReport (ore::data::Report &report, const std::map< RiskFactorKey, QuantLib::Real > &shiftSizes, const std::map< RiskFactorKey, QuantLib::Real > &baseValues, const std::map< RiskFactorKey, std::string > &keyToFactor)
 
virtual void writeAdditionalResultsReport (ore::data::Report &report, boost::shared_ptr< ore::data::Portfolio > portfolio, boost::shared_ptr< Market > market, const std::string &baseCurrency)
 
virtual void writeMarketData (ore::data::Report &report, const boost::shared_ptr< ore::data::Loader > &loader, const QuantLib::Date &asof, const set< string > &quoteNames, bool returnAll)
 
virtual void writeFixings (ore::data::Report &report, const boost::shared_ptr< ore::data::Loader > &loader)
 
virtual void writeDividends (ore::data::Report &report, const boost::shared_ptr< ore::data::Loader > &loader)
 
virtual void writePricingStats (ore::data::Report &report, const boost::shared_ptr< Portfolio > &portfolio)
 
virtual void writeCube (ore::data::Report &report, const boost::shared_ptr< NPVCube > &cube, const std::map< std::string, std::string > &nettingSetMap=std::map< std::string, std::string >())
 
const std::string & nullString () const
 
virtual void writeSIMMReport (const std::map< SimmConfiguration::SimmSide, std::map< NettingSetDetails, std::pair< std::string, SimmResults >>> &simmResultsMap, const boost::shared_ptr< ore::data::Report > report, const bool hasNettingSetDetails=false, const std::string &simmResultCcy="", const std::string &simmCalcCcy="", const std::string &reportCcy="", QuantLib::Real fxSpot=1.0, QuantLib::Real outputThreshold=0.005)
 
virtual void writeSIMMReport (const std::map< SimmConfiguration::SimmSide, std::map< NettingSetDetails, std::map< std::string, SimmResults >>> &simmResultsMap, const boost::shared_ptr< ore::data::Report > report, const bool hasNettingSetDetails=false, const std::string &simmResultCcy="", const std::string &simmCalcCcy="", const std::string &reportCcy="", const bool isFinalSimm=true, QuantLib::Real fxSpot=1.0, QuantLib::Real outputThreshold=0.005)
 
virtual void writeSIMMData (const SimmNetSensitivities &simmData, const boost::shared_ptr< ore::data::Report > &dataReport, const bool hasNettingSetDetails=false)
 Write the SIMM data report i.e. the netted CRIF records used in a SIMM calculation.
 
virtual void writeCrifReport (const boost::shared_ptr< ore::data::Report > &report, const SimmNetSensitivities &crifRecords)
 Write out CRIF records to a report.
 
virtual void writeScenarioStatistics (const boost::shared_ptr< ore::analytics::ScenarioGenerator > &generator, const std::vector< ore::analytics::RiskFactorKey > &keys, QuantLib::Size numPaths, const std::vector< QuantLib::Date > &dates, ore::data::Report &report)
 
virtual void writeScenarioDistributions (const boost::shared_ptr< ore::analytics::ScenarioGenerator > &generator, const std::vector< ore::analytics::RiskFactorKey > &keys, QuantLib::Size numPaths, const std::vector< QuantLib::Date > &dates, QuantLib::Size distSteps, ore::data::Report &report)
 

Protected Member Functions

void addMarketDatum (ore::data::Report &report, const ore::data::MarketDatum &md, const QuantLib::Date &actualDate=Date())
 

Protected Attributes

std::string nullString_
 

Detailed Description

Write ORE outputs to reports.

Constructor & Destructor Documentation

◆ ReportWriter()

ReportWriter ( const std::string &  nullString = "#NA")

Constructor.

Parameters
nullStringused to represent string values that are not applicable.

Member Function Documentation

◆ writeSIMMReport()

virtual void writeSIMMReport ( const std::map< SimmConfiguration::SimmSide, std::map< NettingSetDetails, std::pair< std::string, SimmResults >>> &  simmResultsMap,
const boost::shared_ptr< ore::data::Report report,
const bool  hasNettingSetDetails = false,
const std::string &  simmResultCcy = "",
const std::string &  simmCalcCcy = "",
const std::string &  reportCcy = "",
QuantLib::Real  fxSpot = 1.0,
QuantLib::Real  outputThreshold = 0.005 
)
virtual

Write out the SIMM results contained in the resultsMap and additionalMargin. The parameter resultsMap is a map containing the SIMM results containers for a set of portfolios. The key is the portfolio ID and the value is the SIMM results container for that portfolio. Similarly, the parameter additionalMargin contains the additional margin element for each portfolio.