Replies: 2 comments 1 reply
-
Beta Was this translation helpful? Give feedback.
-
|
I don't think changing the order they run will have any benefit because the parametric VaR analytic relies on loading sensitivities from a sensitivity stream in InputParameters, and I can't see the SENSITIVITY analytic setting this anywhere. However the change to a set was intentional, we don't want to rely on the order analytics are added to a vector. We should use the dependentAnalytic logic. ParametricVarAnalyhticImpl should create a dependent SENSITIVITY analytic - setting useCache to true. Then if a SENSITIVITY analytic was requested separately at input stage it would use the output from that, otherwise create a new one. A similar example of this is here: https://github.com/OpenSourceRisk/Engine/blob/master/OREAnalytics/orea/app/analytics/simmanalytic.hpp#L59 |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Dear all!
In an old ORE version (1.6), the VAR analysis was run AFTER the sensitivity analysis, making it possible to run this in one go:
ORE starting
Reference... OK
Curve configuration... OK
Market data loader... OK
Market... OK
Engine factory... OK
Portfolio... OK
Curve Report... OK
NPV Report... OK
Additional Results... OK
TodaysMarket Calibration... OK
Cashflow Report... OK
Write Base Scenario... SKIP
Sensitivity Report... OK
Stress testing... SKIP
Parametric VaR Report... OK
Now it's the other way round:
Loading inputs OK
Requested analytics CASHFLOW,NPV,PARAMETRIC_VAR,SENSITIVITY
Risk: Build Market for VaR OK
Risk: Build Portfolio for VaR OK
Risk: VaR Calculation OK
Pricing: Build Market OK
Pricing: Build Portfolio OK
Pricing: Cashflow Report OK
Pricing: NPV Report OK
Pricing: Curves Report OK
Risk: Sensitivity Report OK
I see from the definition of std::setstd::string analytics_ in https://github.com/OpenSourceRisk/Engine/blob/master/OREAnalytics/orea/app/inputparameters.hpp#L789 that the analytics are a set and can't be ordered by definition, but this would really reduce a lot of extra calls.
Would it hurt to change that into a std::vector?
I‘ve also seen that the std::set is returning its constituents in ordered Fashion (alphabetically) and the reason why the var analytics is now before the scenario analysis is the renaming to PARAMETRIC_VAR (in 1.8.9 it was VAR).
would it be possible to rename it to VAR_PARAMETRIC (and historical var to VAR_HISTSIM) so it could then be run after SENSITIVITY? This would be the simplest solution.
-regards,
Roland
Beta Was this translation helpful? Give feedback.
All reactions