Cross Asset Model Builder. More...
#include <ored/model/crossassetmodelbuilder.hpp>
Public Member Functions | |
| CrossAssetModelBuilder (const ObservableValue< QuantLib::ext::shared_ptr< Market > > &market, const QuantLib::ext::shared_ptr< CrossAssetModelData > &config, const std::string &configurationLgmCalibration=Market::defaultConfiguration, const std::string &configurationFxCalibration=Market::defaultConfiguration, const std::string &configurationEqCalibration=Market::defaultConfiguration, const std::string &configurationInfCalibration=Market::defaultConfiguration, const std::string &configurationCrCalibration=Market::defaultConfiguration, const std::string &configurationFinalModel=Market::defaultConfiguration, const bool dontCalibrate=false, const bool continueOnError=false, const std::string &referenceCalibrationGrid_="", const std::string &id="unknown", const bool allowChangingFallbacksUnderScenarios=false, const bool allowModelFallbacks=false) | |
| ~CrossAssetModelBuilder () | |
| Default destructor. | |
| Handle< QuantExt::CrossAssetModel > | model () const |
| return the model | |
| const QuantLib::ext::shared_ptr< CrossAssetModelData > & | modelData () const |
| return the model data | |
Inspectors | |
| const std::vector< Real > & | swaptionCalibrationErrors () |
| const std::vector< Real > & | fxOptionCalibrationErrors () |
| const std::vector< Real > & | eqOptionCalibrationErrors () |
| const std::vector< Real > & | inflationCalibrationErrors () |
| const std::vector< Real > & | comOptionCalibrationErrors () |
ModelBuilder interface | |
| void | forceRecalculate () override |
| bool | requiresRecalibration () const override |
| void | recalibrate () const override |
| void | newCalcWithoutRecalibration () const override |
Cross Asset Model Builder.
CrossAssetModelBuilder takes a market snapshot, market conventions (the latter two passed to the constructor), and a model configuration (passed to the "build" member function) to build and calibrate a cross asset model.
| CrossAssetModelBuilder | ( | const ObservableValue< QuantLib::ext::shared_ptr< Market > > & | market, |
| const QuantLib::ext::shared_ptr< CrossAssetModelData > & | config, | ||
| const std::string & | configurationLgmCalibration = Market::defaultConfiguration, | ||
| const std::string & | configurationFxCalibration = Market::defaultConfiguration, | ||
| const std::string & | configurationEqCalibration = Market::defaultConfiguration, | ||
| const std::string & | configurationInfCalibration = Market::defaultConfiguration, | ||
| const std::string & | configurationCrCalibration = Market::defaultConfiguration, | ||
| const std::string & | configurationFinalModel = Market::defaultConfiguration, | ||
| const bool | dontCalibrate = false, | ||
| const bool | continueOnError = false, | ||
| const std::string & | referenceCalibrationGrid_ = "", | ||
| const std::string & | id = "unknown", | ||
| const bool | allowChangingFallbacksUnderScenarios = false, | ||
| const bool | allowModelFallbacks = false ) |
The market for the calibration can possibly be different from the final market defining the curves attached to the marginal LGM models; for example domestic OIS curves may be used for the in currency swaption calibration while the global model is operated under FX basis consistent discounting curves relative to the collateral OIS curve.
| market | Market object |
| config | cam configuration |
| configurationLgmCalibration | Market configuration for interest rate model calibration |
| configurationFxCalibration | Market configuration for FX model calibration |
| configurationEqCalibration | Market configuration for EQ model calibration |
| configurationInfCalibration | Market configuration for INF model calibration |
| configurationCrCalibration | Market configuration for CR model calibration |
| configurationFinalModel | Market configuration for simulation |
| dontCalibrate | calibrate the model? |
| continueOnError | continue if bootstrap error exceeds tolerance |
| referenceCalibrationGrid_ | reference calibration grid |
| id | id of the builder |
| allowChangingFallbacksUnderScenarios | allow changing fallbacks under scenarios in lgm sub builders |
| allowModelFallbacks | allow fallback during model build if market objects are missing (e.g. vol surfaces) |