|
|
| ScenarioSimMarket (const bool handlePseudoCurrencies) |
| | Constructor.
|
|
| ScenarioSimMarket (const QuantLib::ext::shared_ptr< Market > &initMarket, const QuantLib::ext::shared_ptr< ScenarioSimMarketParameters > ¶meters, const std::string &configuration=Market::defaultConfiguration, const ore::data::CurveConfigurations &curveConfigs=ore::data::CurveConfigurations(), const ore::data::TodaysMarketParameters &todaysMarketParams=ore::data::TodaysMarketParameters(), const bool continueOnError=false, const bool useSpreadedTermStructures=false, const bool cacheSimData=false, const bool allowPartialScenarios=false, const QuantLib::ext::shared_ptr< IborFallbackConfig > &iborFallbackConfig=QuantLib::ext::make_shared< IborFallbackConfig >(IborFallbackConfig::defaultConfig()), const bool handlePseudoCurrencies=true, const QuantLib::ext::shared_ptr< Scenario > &offSetScenario=nullptr) |
|
| ScenarioSimMarket (const QuantLib::ext::shared_ptr< Market > &initMarket, const QuantLib::ext::shared_ptr< ScenarioSimMarketParameters > ¶meters, const QuantLib::ext::shared_ptr< FixingManager > &fixingManager, const std::string &configuration=Market::defaultConfiguration, const ore::data::CurveConfigurations &curveConfigs=ore::data::CurveConfigurations(), const ore::data::TodaysMarketParameters &todaysMarketParams=ore::data::TodaysMarketParameters(), const bool continueOnError=false, const bool useSpreadedTermStructures=false, const bool cacheSimData=false, const bool allowPartialScenarios=false, const QuantLib::ext::shared_ptr< IborFallbackConfig > &iborFallbackConfig=QuantLib::ext::make_shared< IborFallbackConfig >(IborFallbackConfig::defaultConfig()), const bool handlePseudoCurrencies=true, const QuantLib::ext::shared_ptr< Scenario > &offSetScenario=nullptr) |
|
virtual QuantLib::ext::shared_ptr< ScenarioGenerator > & | scenarioGenerator () |
| | Set scenario generator.
|
|
virtual const QuantLib::ext::shared_ptr< ScenarioGenerator > & | scenarioGenerator () const |
| | Get scenario generator.
|
|
virtual QuantLib::ext::shared_ptr< AggregationScenarioData > & | aggregationScenarioData () |
| | Set aggregation data.
|
|
virtual const QuantLib::ext::shared_ptr< AggregationScenarioData > & | aggregationScenarioData () const |
| | Get aggregation data.
|
|
virtual QuantLib::ext::shared_ptr< ScenarioFilter > & | filter () |
| | Set scenarioFilter.
|
|
virtual const QuantLib::ext::shared_ptr< ScenarioFilter > & | filter () const |
| | Get scenarioFilter.
|
| virtual void | preUpdate () override |
| | Update.
|
| virtual void | updateScenario (const Date &) override |
| | Retrieve next market scenario and apply this, but don't update date.
|
| virtual void | updateDate (const Date &) override |
| | Update to the given date.
|
| virtual void | postUpdate (const Date &d, bool withFixings) override |
| | Observable reset depending on selected mode, instrument updates.
|
| virtual void | updateAsd (const Date &) override |
| | Update aggregation scenario data.
|
| virtual void | reset () override |
| | Reset sim market to initial state.
|
| virtual QuantLib::ext::shared_ptr< Scenario > | baseScenario () const |
| virtual QuantLib::ext::shared_ptr< Scenario > | baseScenarioAbsolute () const |
| QuantLib::ext::shared_ptr< Scenario > | offsetScenario () const |
| bool | useSpreadedTermStructures () const |
| const QuantLib::ext::shared_ptr< FixingManager > & | fixingManager () const override |
| | Return the fixing manager.
|
|
virtual bool | isSimulated (const RiskFactorKey::KeyType &factor) const |
| | is risk factor key simulated by this sim market instance?
|
|
void | applyScenario (const QuantLib::ext::shared_ptr< Scenario > &scenario) |
|
| SimMarket (const bool handlePseudoCurrencies) |
|
virtual void | update (const Date &d) |
| | Generate or retrieve market scenario, update market, notify termstructures and update fixings.
|
|
Real | numeraire () |
| | Return current numeraire value.
|
|
const std::string & | label () |
| | Return current scenario label, if any.
|
|
|
void | writeSimData (std::map< RiskFactorKey, QuantLib::ext::shared_ptr< SimpleQuote > > &simDataTmp, std::map< RiskFactorKey, Real > &absoluteSimDataTmp, const RiskFactorKey::KeyType keyType, const std::string &name, const std::vector< std::vector< Real > > &coordinates) |
|
void | addYieldCurve (const QuantLib::ext::shared_ptr< Market > &initMarket, const std::string &configuration, const RiskFactorKey::KeyType rf, const string &key, const vector< Period > &tenors, bool &simDataWritten, bool simulate=true, bool spreaded=false) |
|
QuantLib::Handle< QuantLib::YieldTermStructure > | getYieldCurve (const std::string &key) const |
|
void | applyCurveAlgebra () |
|
void | applyCurveAlgebraSpreadedYieldCurve (const Handle< YieldTermStructure > &target, const std::vector< Handle< YieldTermStructure > > &bases, const std::vector< double > &multiplier) |
| QuantLib::Handle< QuantLib::YieldTermStructure > | getYieldCurve (const std::string &yieldSpecId, const ore::data::TodaysMarketParameters &todaysMarketParams, const std::string &configuration, const QuantLib::ext::shared_ptr< ore::data::Market > &market=nullptr) const |
| void | addSwapIndexToSsm (const std::string &indexName) |
|
|
const QuantLib::ext::shared_ptr< ScenarioSimMarketParameters > | parameters_ |
|
QuantLib::ext::shared_ptr< ScenarioGenerator > | scenarioGenerator_ |
|
QuantLib::ext::shared_ptr< AggregationScenarioData > | asd_ |
|
QuantLib::ext::shared_ptr< FixingManager > | fixingManager_ |
|
QuantLib::ext::shared_ptr< ScenarioFilter > | filter_ |
|
std::map< RiskFactorKey, QuantLib::ext::shared_ptr< SimpleQuote > > | simData_ |
|
QuantLib::ext::shared_ptr< Scenario > | baseScenario_ |
|
QuantLib::ext::shared_ptr< Scenario > | baseScenarioAbsolute_ |
|
std::vector< QuantLib::ext::shared_ptr< SimpleQuote > > | cachedSimData_ |
|
std::vector< bool > | cachedSimDataActive_ |
|
std::size_t | cachedSimDataKeysHash_ = 0 |
|
std::set< RiskFactorKey::KeyType > | nonSimulatedFactors_ |
|
bool | useSpreadedTermStructures_ |
|
std::map< RiskFactorKey, Real > | absoluteSimData_ |
|
std::set< std::tuple< RiskFactorKey::KeyType, std::string, std::vector< std::vector< Real > > > > | coordinatesData_ |
|
bool | cacheSimData_ |
|
bool | allowPartialScenarios_ |
|
QuantLib::ext::shared_ptr< IborFallbackConfig > | iborFallbackConfig_ |
|
std::set< ore::analytics::RiskFactorKey > | diffToBaseKeys_ |
|
QuantLib::ext::shared_ptr< Scenario > | currentScenario_ |
|
QuantLib::ext::shared_ptr< Scenario > | offsetScenario_ |
|
QuantLib::ext::shared_ptr< QuantExt::ScenarioInformationSetter > | scenarioInformationSetter_ |
|
Real | numeraire_ |
|
std::string | label_ |
Simulation Market updated with discrete scenarios.
If useSpreadedTermStructures is true, spreaded term structures over the initMarket for supported risk factors will be generated. This is used by the SensitivityScenarioGenerator.
If cacheSimData is true, the scenario application is optimised. This requires that all scenarios are SimpleScenario instances with identical key structure in their data.
If allowPartialScenarios is true, the check that all simData_ is touched by a scenario is disabled.