Logo
Reference manual - version orea_version
Classes | Typedefs | Enumerations | Functions
ore::analytics Namespace Reference

Classes

class  DummyMarket
 
class  CollateralAccount
 Collateral Account. More...
 
class  CollateralExposureHelper
 Collateral Exposure Helper. More...
 
class  CreditMigrationCalculator
 Credit Migration Calculator. More...
 
class  CreditMigrationHelper
 
class  CreditSimulationParameters
 Credit simulation description. More...
 
class  CVASpreadSensitivityCalculator
 CVA Spread Sensitivity Calculator. More...
 
class  DynamicInitialMarginCalculator
 Dynamic Initial Margin Calculator base class. More...
 
class  FlatDynamicInitialMarginCalculator
 Dynamic Initial Margin Calculator using flat extrapolation of t0 IM. More...
 
class  RegressionDynamicInitialMarginCalculator
 Dynamic Initial Margin Calculator using polynomial regression. More...
 
class  DynamicCreditXvaCalculator
 XVA Calculator base with dynamic credit. More...
 
class  ExposureAllocator
 Exposure allocator base class. More...
 
class  RelativeFairValueNetExposureAllocator
 
class  RelativeFairValueGrossExposureAllocator
 
class  RelativeXvaExposureAllocator
 
class  NoneExposureAllocator
 
class  ExposureCalculator
 XVA Calculator base class. More...
 
class  NettedExposureCalculator
 XVA Calculator base class. More...
 
class  PostProcess
 Exposure Aggregation and XVA Calculation. More...
 
class  StaticCreditXvaCalculator
 XVA Calculator base with static credit. More...
 
class  ValueAdjustmentCalculator
 XVA Calculator base class. More...
 
class  Analytic
 
class  MarketDataAnalyticImpl
 
class  MarketDataAnalytic
 
class  AbstractAnalyticBuilder
 TradeBuilder base class. More...
 
class  AnalyticBuilder
 Template AnalyticBuilder class. More...
 
class  AnalyticFactory
 AnalyticFactory. More...
 
class  IMScheduleAnalyticImpl
 
class  IMScheduleAnalytic
 
class  ParConversionAnalyticImpl
 
class  ParConversionAnalytic
 
class  ParStressConversionAnalyticImpl
 
class  ParStressConversionAnalytic
 
class  PnlAnalyticImpl
 
class  PnlAnalytic
 
class  PnlExplainAnalyticImpl
 
class  PnlExplainAnalytic
 
class  PricingAnalyticImpl
 
class  PricingAnalytic
 
class  ScenarioAnalyticImpl
 
class  ScenarioAnalytic
 
class  ScenarioStatisticsAnalyticImpl
 
class  ScenarioStatisticsAnalytic
 
class  SimmAnalyticImpl
 
class  SimmAnalytic
 
class  StressTestAnalyticImpl
 
class  StressTestAnalytic
 
class  VarAnalyticImpl
 
class  VarAnalytic
 
class  ParametricVarAnalyticImpl
 
class  ParametricVarAnalytic
 
class  HistoricalSimulationVarAnalyticImpl
 
class  HistoricalSimulationVarAnalytic
 
class  XvaAnalyticImpl
 
class  XvaAnalytic
 
class  XvaSensitivityAnalyticImpl
 
class  XvaSensitivityAnalytic
 
class  XvaStressAnalyticImpl
 
class  XvaStressAnalytic
 
class  ZeroToParShiftAnalyticImpl
 
class  ZeroToParShiftAnalytic
 
class  AnalyticsManager
 
class  CleanUpThreadLocalSingletons
 
class  CleanUpThreadGlobalSingletons
 
class  CleanUpLogSingleton
 
class  InputParameters
 Base class for input data, also exposed via SWIG. More...
 
class  OutputParameters
 Traditional ORE input via ore.xml and various files, output into files. More...
 
class  MarketCalibrationReportBase
 
class  MarketCalibrationReport
 
class  MarketDataCsvLoaderImpl
 
class  MarketDataCsvLoader
 
class  MarketDataInMemoryLoaderImpl
 
class  MarketDataInMemoryLoader
 
class  StructuredFixingWarningMessage
 Utility class for Structured Fixing warnings. More...
 
class  MarketDataLoaderImpl
 
class  MarketDataLoader
 
class  OREApp
 Orchestrates the processes covered by ORE, data loading, analytics and reporting. More...
 
class  OREAppInputParameters
 
class  Parameters
 Provides the input data and references to input files used in OREApp. More...
 
class  ReportWriter
 Write ORE outputs to reports. More...
 
class  SensitivityRunner
 
class  StructuredAnalyticsErrorMessage
 
class  StructuredAnalyticsWarningMessage
 
class  XvaRunner
 
class  ZeroSensitivityLoader
 
struct  NPVCubeWithMetaData
 
class  CubeCsvReader
 Read an NPV cube from a human readable text file. More...
 
class  CubeInterpretation
 Allow for interpretation of how data is stored within cube and AggregationScenarioData. More...
 
class  CubeWriter
 Write an NPV cube to a human readable text file. More...
 
class  InMemoryCubeBase
 InMemoryCube stores the cube in memory using nested STL vectors. More...
 
class  InMemoryCube1
 InMemoryCube of fixed depth 1. More...
 
class  InMemoryCubeN
 InMemoryCube of variable depth. More...
 
class  TradeBlock
 
class  DepthCalculator
 
class  ConstantDepthCalculator
 
class  JaggedCube
 JaggedCube stores the cube in memory using a vector of trade specific blocks. More...
 
class  JointNPVCube
 
class  JointNPVSensiCube
 
class  NPVCube
 NPV Cube class stores both future and current NPV values. More...
 
class  NPVSensiCube
 NPVSensiCube class stores NPVs resulting from risk factor shifts on an as of date. More...
 
class  SensiCube
 SensiCube stores only npvs not equal to the base npvs. More...
 
class  SensitivityCube
 SensitivityCube is a wrapper for an npvCube that gives easier access to the underlying cube elements. More...
 
class  SparseNpvCube
 
class  AMCValuationEngine
 AMC Valuation Engine. More...
 
class  BufferedSensitivityStream
 
class  CounterpartyCalculator
 CounterpartyCalculator interface. More...
 
class  SurvivalProbabilityCalculator
 SurvivalProbabilityCalculator. More...
 
class  DecomposedSensitivityStream
 Class that wraps a sensitivity stream and decompose default, equity and commodity risk records given weights. More...
 
class  FilteredSensitivityStream
 Class that wraps a sensitivity stream and filters out negligible records. More...
 
class  HistoricalPnlGenerator
 
class  PNLCalculator
 
class  CovarianceCalculator
 
class  HistoricalSensiPnlCalculator
 
class  HistoricalSimulationVarCalculator
 
class  HistoricalSimulationVarReport
 HistoricalSimulation VaR Calculator. More...
 
class  MarketRiskBacktest
 
class  BacktestPNLCalculator
 
class  MarketRiskGroupBase
 
class  MarketRiskGroupBaseContainer
 
class  TradeGroupBase
 
class  TradeGroupBaseContainer
 
class  MarketRiskGroup
 
class  MarketRiskGroupContainer
 
class  TradeGroup
 
class  TradeGroupContainer
 
class  MarketRiskReport
 
class  MPORCalculator
 MPORCalculator. More...
 
class  MultiStateNPVCalculator
 MultiStateNPVCalculator. More...
 
class  MultiThreadedValuationEngine
 
struct  NpvRecord
 
class  ObservationMode
 The Global Observation setting. More...
 
class  ParametricVarCalculator
 
class  ParametricVarReport
 Parametric VaR Calculator. More...
 
class  ParSensitivityAnalysis
 Par Sensitivity Analysis. More...
 
class  ParSensitivityConverter
 ParSensitivityConverter class. More...
 
class  ParSensitivityCubeStream
 
class  ParSensitivityInstrumentBuilder
 
class  ParStressTestConverter
 
class  ParStressScenarioConverter
 Convert all par shifts in a single stress test scenario to zero shifts. More...
 
class  PnlExplainReport
 
class  MarketRiskConfiguration
 
class  RiskFilter
 Risk Filter. More...
 
class  SensitivityAggregator
 
class  SensitivityAnalysis
 Sensitivity Analysis. More...
 
class  SensitivityCubeStream
 
class  SensitivityInputStream
 Class for streaming SensitivityRecords from csv file. More...
 
class  SensitivityFileStream
 
class  SensitivityBufferStream
 
class  SensitivityInMemoryStream
 Class for streaming SensitivityRecords from csv file. More...
 
struct  SensitivityRecord
 
class  SensitivityReportStream
 Class for streaming SensitivityRecords from csv file. More...
 
class  SensitivityStream
 Base Class for streaming SensitivityRecords. More...
 
class  StressTest
 Stress Test Analysis. More...
 
class  ValuationCalculator
 ValuationCalculator interface. More...
 
class  NPVCalculator
 NPVCalculator. More...
 
class  CashflowCalculator
 CashflowCalculator. More...
 
class  NPVCalculatorFXT0
 NPVCalculatorFXT0. More...
 
class  ValuationEngine
 Valuation Engine. More...
 
class  VarCalculator
 VaR Calculator. More...
 
class  VarReport
 
class  XvaEngineCG
 
class  ZeroToParCube
 ZeroToParCube class. More...
 
class  ZeroToParShiftConverter
 
class  AggregationScenarioData
 Container for storing simulated market data. More...
 
class  InMemoryAggregationScenarioData
 A concrete in memory implementation of AggregationScenarioData. More...
 
class  ClonedScenarioGenerator
 
class  CloneScenarioFactory
 Factory class for cloning scenario objects. More...
 
class  CrossAssetModelScenarioGenerator
 Scenario Generator using cross asset model paths. More...
 
class  CSVScenarioGenerator
 Class for generating scenarios from a csv file assumed to be in a format compatible with ScenarioWriter. More...
 
class  DeltaScenario
 Delta Scenario class. More...
 
class  DeltaScenarioFactory
 Factory class for cloning scenario objects. More...
 
class  HistoricalScenarioFileReader
 Class for reading historical scenarios from a csv file. More...
 
class  ReturnConfiguration
 Return type for historical scenario generation (absolute, relative, log) More...
 
class  HistoricalScenarioGenerator
 Historical Scenario Generator. More...
 
class  HistoricalScenarioGeneratorRandom
 Historical scenario generator generating random scenarios, for testing purposes. More...
 
class  HistoricalScenarioGeneratorTransform
 Historical scenario generator transform. More...
 
class  HistoricalScenarioGeneratorWithFilteredDates
 
class  HistoricalScenarioLoader
 Class for loading historical scenarios. More...
 
class  HistoricalScenarioReader
 Base Class for reading historical scenarios. More...
 
class  LgmScenarioGenerator
 Scenario Generator using LGM model paths. More...
 
class  RiskFactorKey
 Data types stored in the scenario class. More...
 
class  Scenario
 Scenario Base Class. More...
 
class  ScenarioFactory
 Scenario factory base class. More...
 
class  RiskFactorTypeScenarioFilter
 Filter that will only allow specified RiskFactorKey::KeyTypes. More...
 
class  RiskFactorScenarioFilter
 Filter that will only allow specified keys. More...
 
class  CompositeScenarioFilter
 Filter for combining the above. More...
 
class  ScenarioGenerator
 Scenario generator base class. More...
 
class  ScenarioPathGenerator
 Scenario generator that generates an entire path. More...
 
class  StaticScenarioGenerator
 
class  ScenarioGeneratorBuilder
 Build a ScenarioGenerator. More...
 
class  ScenarioGeneratorData
 Scenario Generator description. More...
 
class  ScenarioGeneratorTransform
 
class  ScenarioShiftCalculator
 
class  ScenarioFilter
 A scenario filter can exclude certain key from updating the scenario. More...
 
class  ScenarioSimMarket
 Simulation Market updated with discrete scenarios. More...
 
class  ScenarioSimMarketParameters
 ScenarioSimMarket description. More...
 
class  ScenarioWriter
 Class for writing scenarios to file. More...
 
class  SensitivityScenarioData
 Description of sensitivity shift scenarios. More...
 
class  SensitivityScenarioGenerator
 Sensitivity Scenario Generator. More...
 
class  ShiftScenarioGenerator
 Shift Scenario Generator. More...
 
class  SimpleScenario
 
class  SimpleScenarioFactory
 Factory class for building simple scenario objects. More...
 
class  StressTestScenarioData
 Description of sensitivity shift scenarios. More...
 
class  StressScenarioGenerator
 Stress Scenario Generator. More...
 
struct  crifRecordIsSimmParameter
 
class  Crif
 
class  CrifConfiguration
 
class  CrifLoader
 
class  StringStreamCrifLoader
 
class  CsvFileCrifLoader
 
class  CsvBufferCrifLoader
 
struct  CrifRecord
 
class  IMScheduleCalculator
 
struct  IMScheduleResult
 
class  IMScheduleResults
 
class  SimmBasicNameMapper
 
class  SimmBucketMapper
 
class  BucketMapping
 
class  SimmBucketMapperBase
 
class  SimmCalculator
 A class to calculate SIMM given a set of aggregated CRIF results for one or more portfolios. More...
 
class  SimmCalibration
 
class  SimmCalibrationData
 
class  SimmConcentration
 
class  SimmConcentrationBase
 
class  SimmConcentrationCalibration
 Class giving the ISDA SIMM concentration thresholds as defined by a SIMM calibration. More...
 
class  SimmConcentration_ISDA_V1_3
 
class  SimmConcentration_ISDA_V1_3_38
 Class giving the SIMM concentration thresholds for v1.3.38. More...
 
class  SimmConcentration_ISDA_V2_0
 
class  SimmConcentration_ISDA_V2_1
 
class  SimmConcentration_ISDA_V2_2
 
class  SimmConcentration_ISDA_V2_3
 
class  SimmConcentration_ISDA_V2_3_8
 
class  SimmConcentration_ISDA_V2_5
 
class  SimmConcentration_ISDA_V2_5A
 
class  SimmConcentration_ISDA_V2_6
 
class  SimmConfiguration
 Abstract base class defining the interface for a SIMM configuration. More...
 
class  SimmConfigurationBase
 
class  SimmConfigurationCalibration
 
class  SimmConfiguration_ISDA_V1_0
 
class  SimmConfiguration_ISDA_V1_3
 
class  SimmConfiguration_ISDA_V1_3_38
 Class giving the SIMM configuration for v1.3.38. More...
 
class  SimmConfiguration_ISDA_V2_0
 
class  SimmConfiguration_ISDA_V2_1
 
class  SimmConfiguration_ISDA_V2_2
 
class  SimmConfiguration_ISDA_V2_3
 
class  SimmConfiguration_ISDA_V2_3_8
 
class  SimmConfiguration_ISDA_V2_5
 
class  SimmConfiguration_ISDA_V2_5A
 
class  SimmConfiguration_ISDA_V2_6
 
class  SimmNameMapper
 
class  SimmResults
 
class  FixingManager
 Pseudo Fixings Manager. More...
 
class  SimMarket
 Simulation Market. More...
 

Typedefs

typedef std::map< QuantLib::Date, std::set< std::string > > QuoteMap
 
typedef std::map< std::string, RequiredFixings::FixingDatesFixingMap
 
using SinglePrecisionInMemoryCube = InMemoryCube1< float >
 InMemoryCube of depth 1 with single precision floating point numbers.
 
using DoublePrecisionInMemoryCube = InMemoryCube1< double >
 InMemoryCube of depth 1 with double precision floating point numbers.
 
using SinglePrecisionInMemoryCubeN = InMemoryCubeN< float >
 InMemoryCube of depth N with single precision floating point numbers.
 
using DoublePrecisionInMemoryCubeN = InMemoryCubeN< double >
 InMemoryCube of depth N with double precision floating point numbers.
 
using SinglePrecisionJaggedCube = JaggedCube< float >
 Jagged cube with single precision floating point numbers.
 
using DoublePrecisionJaggedCube = JaggedCube< double >
 Jagged cube with double precision floating point numbers.
 
using SinglePrecisionSensiCube = SensiCube< float >
 Sensi cube with single precision floating point numbers.
 
using DoublePrecisionSensiCube = SensiCube< double >
 Sensi cube with double precision floating point numbers.
 
using SinglePrecisionSparseNpvCube = SparseNpvCube< float >
 
using RealPrecisionSparseNpvCube = SparseNpvCube< Real >
 
using TradePnLStore = std::vector< std::vector< QuantLib::Real > >
 
typedef std::pair< RiskFactorKey, RiskFactorKeyCrossPair
 

Enumerations

enum class  AggregationScenarioDataType : unsigned int {
  IndexFixing = 0 , FXSpot = 1 , Numeraire = 2 , CreditState = 3 ,
  SurvivalWeight = 4 , RecoveryRate = 5 , Generic = 6
}
 
enum class  ShiftScheme { Forward , Backward , Central }
 
enum class  ShiftType { Absolute , Relative }
 
enum  IMScheduleLabel {
  Credit2 , Credit5 , Credit100 , Commodity ,
  Equity , FX , Rates2 , Rates5 ,
  Rates100 , Other
}
 
enum class  SimmVersion {
  V1_0 , V1_1 , V1_2 , V1_3 ,
  V1_3_38 , V2_0 , V2_1 , V2_2 ,
  V2_3 , V2_3_8 , V2_5 , V2_5A ,
  V2_6
}
 Ordered SIMM versions.
 

Functions

CollateralExposureHelper::CalculationType parseCollateralCalculationType (const string &s)
 Convert text representation to CollateralExposureHelper::CalculationType.
 
CreditMigrationHelper::CreditMode parseCreditMode (const std::string &s)
 
CreditMigrationHelper::LoanExposureMode parseLoanExposureMode (const std::string &s)
 
CreditMigrationHelper::Evaluation parseEvaluation (const std::string &s)
 
bool lessThan (const Array &a, const Array &b)
 
ExposureAllocator::AllocationMethod parseAllocationMethod (const string &s)
 Convert text representation to ExposureAllocator::AllocationMethod.
 
std::ostream & operator<< (std::ostream &out, ExposureAllocator::AllocationMethod m)
 Convert ExposureAllocator::AllocationMethod to text representation.
 
QuantLib::ext::shared_ptr< ore::data::LoaderimplyBondSpreads (const Date &asof, const QuantLib::ext::shared_ptr< InputParameters > &params, const QuantLib::ext::shared_ptr< ore::data::TodaysMarketParameters > &todaysMarketParams, const QuantLib::ext::shared_ptr< ore::data::Loader > &loader, const QuantLib::ext::shared_ptr< ore::data::CurveConfigurations > &curveConfigs, const std::string &excludeRegex)
 
QuantLib::ext::shared_ptr< AnalyticsManagerparseAnalytics (const std::string &s, const QuantLib::ext::shared_ptr< InputParameters > &inputs, const QuantLib::ext::shared_ptr< MarketDataLoader > &marketDataLoader)
 
void initBuilders (const bool registerOREAnalytics=true)
 
std::vector< std::string > getFileNames (const std::string &fileString, const std::filesystem::path &path)
 
NPVCubeWithMetaData loadCube (const std::string &filename, const bool doublePrecision=false)
 
void saveCube (const std::string &filename, const NPVCubeWithMetaData &cube, const bool doublePrecision=false)
 
QuantLib::ext::shared_ptr< AggregationScenarioDataloadAggregationScenarioData (const std::string &filename)
 
void saveAggregationScenarioData (const std::string &filename, const AggregationScenarioData &cube)
 
std::ostream & operator<< (std::ostream &out, const SensitivityCube::crossPair &cp)
 
std::ostream & operator<< (std::ostream &out, const QuantLib::ext::shared_ptr< MarketRiskGroupBase > &riskGroup)
 
std::ostream & operator<< (std::ostream &out, const QuantLib::ext::shared_ptr< TradeGroupBase > &tradeGroup)
 
std::ostream & operator<< (std::ostream &out, const NpvRecord &nr)
 Enable writing of a NpvRecord.
 
ParametricVarCalculator::ParametricVarParams::Method parseParametricVarMethod (const std::string &method)
 
std::ostream & operator<< (std::ostream &out, const ParametricVarCalculator::ParametricVarParams::Method &method)
 
void writeParConversionMatrix (const ore::analytics::ParSensitivityAnalysis::ParContainer &parSensitivities, ore::data::Report &reportOut)
 Write par instrument sensitivity report.
 
Real impliedQuote (const QuantLib::ext::shared_ptr< QuantLib::Instrument > &i)
 Computes the implied quote.
 
bool riskFactorKeysAreSimilar (const ore::analytics::RiskFactorKey &x, const ore::analytics::RiskFactorKey &y)
 true if key type and name are equal, do not care about the index though
 
double impliedVolatility (const QuantLib::CapFloor &cap, double targetValue, const QuantLib::Handle< QuantLib::YieldTermStructure > &d, double guess, QuantLib::VolatilityType type, double displacement)
 
double impliedVolatility (const QuantLib::YoYInflationCapFloor &cap, double targetValue, const QuantLib::Handle< QuantLib::YieldTermStructure > &d, double guess, QuantLib::VolatilityType type, double displacement, const QuantLib::Handle< QuantLib::YoYInflationIndex > &index={})
 
double impliedVolatility (const RiskFactorKey &key, const ParSensitivityInstrumentBuilder::Instruments &instruments)
 
std::set< RiskFactorKey::KeyTypedisabledParRates (bool irCurveParRates, bool irCapFloorParRates, bool creditParRates)
 
std::ostream & operator<< (std::ostream &out, const MarketRiskConfiguration::RiskClass &rc)
 
std::ostream & operator<< (std::ostream &out, const MarketRiskConfiguration::RiskType &rt)
 
MarketRiskConfiguration::RiskClass parseVarRiskClass (const std::string &rc)
 
MarketRiskConfiguration::RiskType parseVarRiskType (const std::string &rt)
 
Real getShiftSize (const RiskFactorKey &key, const SensitivityScenarioData &sensiParams, const QuantLib::ext::shared_ptr< ScenarioSimMarket > &simMarket, const std::string &marketConfiguration="")
 
std::ostream & operator<< (std::ostream &out, const SensitivityRecord &sr)
 Enable writing of a SensitivityRecord.
 
std::ostream & operator<< (std::ostream &out, const AggregationScenarioDataType &t)
 
std::ostream & operator<< (std::ostream &out, const ReturnConfiguration::ReturnType t)
 
QuantLib::ext::shared_ptr< HistoricalScenarioGeneratorbuildHistoricalScenarioGenerator (const QuantLib::ext::shared_ptr< HistoricalScenarioReader > &hsr, const QuantLib::ext::shared_ptr< ore::data::AdjustmentFactors > &adjFactors, const TimePeriod &period, Calendar calendar, Size mporDays, const QuantLib::ext::shared_ptr< ScenarioSimMarketParameters > &simParams, const QuantLib::ext::shared_ptr< TodaysMarketParameters > &marketParam, const bool overlapping=true)
 
QuantLib::ext::shared_ptr< HistoricalScenarioGeneratorbuildHistoricalScenarioGenerator (const QuantLib::ext::shared_ptr< HistoricalScenarioReader > &hsr, const QuantLib::ext::shared_ptr< ore::data::AdjustmentFactors > &adjFactors, const std::set< QuantLib::Date > &dates, const QuantLib::ext::shared_ptr< ScenarioSimMarketParameters > &simParams, const QuantLib::ext::shared_ptr< TodaysMarketParameters > &marketParam)
 
std::size_t hash_value (const RiskFactorKey &k)
 
bool operator< (const RiskFactorKey &lhs, const RiskFactorKey &rhs)
 
bool operator== (const RiskFactorKey &lhs, const RiskFactorKey &rhs)
 
bool operator> (const RiskFactorKey &lhs, const RiskFactorKey &rhs)
 
bool operator<= (const RiskFactorKey &lhs, const RiskFactorKey &rhs)
 
bool operator>= (const RiskFactorKey &lhs, const RiskFactorKey &rhs)
 
bool operator!= (const RiskFactorKey &lhs, const RiskFactorKey &rhs)
 
std::ostream & operator<< (std::ostream &out, const RiskFactorKey::KeyType &type)
 
std::ostream & operator<< (std::ostream &out, const RiskFactorKey &key)
 
RiskFactorKey::KeyType parseRiskFactorKeyType (const string &str)
 
RiskFactorKey parseRiskFactorKey (const string &str)
 
ShiftScheme parseShiftScheme (const std::string &s)
 
std::ostream & operator<< (std::ostream &out, const ShiftScheme &shiftScheme)
 
ShiftType parseShiftType (const std::string &s)
 
std::ostream & operator<< (std::ostream &out, const ShiftType &shiftType)
 
RiskFactorKey::KeyType yieldCurveRiskFactor (const ore::data::YieldCurveType y)
 Map a yield curve type to a risk factor key type.
 
Real getDifferenceScenario (const RiskFactorKey::KeyType keyType, const Real v1, const Real v2)
 
QuantLib::ext::shared_ptr< ScenariogetDifferenceScenario (const QuantLib::ext::shared_ptr< Scenario > &s1, const QuantLib::ext::shared_ptr< Scenario > &s2, const Date &targetScenarioAsOf=Date(), const Real targetScenarioNumeraire=0.0)
 
Real addDifferenceToScenario (const RiskFactorKey::KeyType keyType, const Real v, const Real d)
 
QuantLib::ext::shared_ptr< ScenarioaddDifferenceToScenario (const QuantLib::ext::shared_ptr< Scenario > &s, const QuantLib::ext::shared_ptr< Scenario > &d, const Date &targetScenarioAsOf=Date(), const Real targetScenarioNumeraire=0.0)
 
QuantLib::ext::shared_ptr< ScenariorecastScenario (const QuantLib::ext::shared_ptr< Scenario > &scenario, const std::map< std::pair< RiskFactorKey::KeyType, std::string >, std::vector< std::vector< Real >>> &oldCoordinates, const std::map< std::pair< RiskFactorKey::KeyType, std::string >, std::vector< std::vector< Real >>> &newCoordinates)
 
QuantLib::ext::shared_ptr< ScenariorecastScenario (const QuantLib::ext::shared_ptr< Scenario > &scenario, const std::map< std::pair< RiskFactorKey::KeyType, std::string >, std::vector< std::vector< Real >>> &oldCoordinates, const std::set< std::tuple< RiskFactorKey::KeyType, std::string, std::vector< std::vector< Real >>>> &newCoordinates)
 
std::set< std::string > getShiftSpecKeys (const SensitivityScenarioData &d)
 
std::ostream & operator<< (std::ostream &out, const ShiftScenarioGenerator::ScenarioDescription &scenarioDescription)
 
std::pair< RiskFactorKey, std::string > deconstructFactor (const std::string &factor)
 
std::string reconstructFactor (const RiskFactorKey &key, const std::string &desc)
 Reconstruct the string description from a risk factor key and its index description desc.
 
QuantLib::ext::shared_ptr< RiskFactorKeyparseRiskFactorKey (const std::string &str, std::vector< std::string > &addTokens)
 risk factor key parser that takes into account additional tokens occurring in sensitivity risk factor keys
 
bool operator< (const ShiftScenarioGenerator::ScenarioDescription &lhs, const ShiftScenarioGenerator::ScenarioDescription &rhs)
 
bool operator== (const ShiftScenarioGenerator::ScenarioDescription &lhs, const ShiftScenarioGenerator::ScenarioDescription &rhs)
 
std::ostream & operator<< (std::ostream &out, const CrifRecord &cr)
 Enable writing of a CrifRecord.
 
std::ostream & operator<< (std::ostream &out, const CrifRecord::RiskType &rt)
 
std::ostream & operator<< (std::ostream &out, const CrifRecord::ProductClass &pc)
 
std::ostream & operator<< (std::ostream &out, const CrifRecord::CurvatureScenario &scenario)
 
CrifRecord::RiskType parseRiskType (const std::string &rt)
 
CrifRecord::ProductClass parseProductClass (const std::string &pc)
 
CrifRecord::CurvatureScenario parseFrtbCurvatureScenario (const std::string &scenario)
 
bool operator< (const SimmBucketMapper::FailedMapping &a, const SimmBucketMapper::FailedMapping &b)
 
bool operator< (const BucketMapping &a, const BucketMapping &b)
 
std::ostream & operator<< (std::ostream &out, const SimmConfiguration::SimmSide &side)
 
std::ostream & operator<< (std::ostream &out, const SimmConfiguration::RiskClass &rc)
 
std::ostream & operator<< (std::ostream &out, const SimmConfiguration::MarginType &mt)
 
std::ostream & operator<< (std::ostream &out, const SimmConfiguration::IMModel &model)
 
std::ostream & operator<< (std::ostream &out, const SimmConfiguration::Regulation &regulation)
 
SimmConfiguration::SimmSide parseSimmSide (const std::string &side)
 
SimmConfiguration::RiskClass parseSimmRiskClass (const std::string &rc)
 
SimmConfiguration::MarginType parseSimmMarginType (const std::string &mt)
 
SimmConfiguration::IMModel parseIMModel (const std::string &pc)
 
SimmConfiguration::Regulation parseRegulation (const std::string &regulation)
 
std::string combineRegulations (const std::string &, const std::string &)
 
std::set< std::string > parseRegulationString (const std::string &regsString, const std::set< std::string > &valueIfEmpty={"Unspecified"})
 Reads a string containing regulations applicable for a given CRIF record.
 
std::string sortRegulationString (const std::string &regsString)
 
std::string removeRegulations (const std::string &regsString, const std::vector< std::string > &regsToRemove)
 Removes a given vector of regulations from a string of regulations and returns a string with the regulations removed.
 
std::string filterRegulations (const std::string &regsString, const std::vector< std::string > &regsToFilter)
 
SimmConfiguration::Regulation getWinningRegulation (const std::vector< std::string > &winningRegulations)
 From a vector of regulations, determine the winning regulation based on order of priority.
 
std::ostream & operator<< (std::ostream &out, const SimmResults::Key &resultsKey)
 Enable writing of Key.
 
std::vector< std::string > loadFactorList (const std::string &inputFileName, const char delim='\n')
 
std::vector< std::vector< double > > loadScenarios (const std::string &inputFileName, const char delim='\n')
 
QuantLib::Matrix loadCovarianceMatrix (const std::string &inputFileName, const char delim='\n')
 
SimmVersion parseSimmVersion (const std::string &version)
 
QuantLib::ext::shared_ptr< SimmConfigurationbuildSimmConfiguration (const std::string &simmVersion, const QuantLib::ext::shared_ptr< SimmBucketMapper > &simmBucketMapper, const QuantLib::ext::shared_ptr< SimmCalibrationData > &simmCalibrationData=nullptr, const QuantExt::Size &mporDays=10)
 
std::string escapeCommaSeparatedList (const std::string &str, const char &csvQuoteChar)
 

Detailed Description

Analytics namespace

Function Documentation

◆ getShiftSize()

Real ore::analytics::getShiftSize ( const RiskFactorKey key,
const SensitivityScenarioData sensiParams,
const QuantLib::ext::shared_ptr< ScenarioSimMarket > &  simMarket,
const std::string &  marketConfiguration = "" 
)

Returns the absolute shift size corresponding to a particular risk factor key given sensitivity parameters sensiParams and a simulation market simMarket

◆ deconstructFactor()

std::pair<RiskFactorKey, std::string> ore::analytics::deconstructFactor ( const std::string &  factor)

Retrieve the RiskFactorKey and index description from the result of ScenarioDescription::factor1() or ScenarioDescription::factor2()

◆ sortRegulationString()

std::string ore::analytics::sortRegulationString ( const std::string &  regsString)

Cleans a string defining regulations so that different permutations of the same set will be seen as the same string, e.g. "APRA,SEC,ESA" and "SEC,ESA,APRA" should be equivalent.

◆ filterRegulations()

std::string ore::analytics::filterRegulations ( const std::string &  regsString,
const std::vector< std::string > &  regsToFilter 
)

Filters a string of regulations on a given vector of regulations and returns a string containing only those filtered regulations

◆ escapeCommaSeparatedList()

std::string ore::analytics::escapeCommaSeparatedList ( const std::string &  str,
const char &  csvQuoteChar 
)

If the input str is a comma seperated list the method quotation marks " if the csvQuoteChar is '\0' Example: commaSeparatedListToJsonArrayString("item1,item2", '') -> "item1, item2" commaSeparatedListToJsonArrayString("item", '') -> "item"