The analytics API allows the caller to specify intermediate results to be stored from simulations. This includes initial rates and trade MTMs, as well as rate scenarios, trade and portfolio MTMs from these scenarios and even rates used in a particular valuation (that have been interpolated off a curve or surface). All of these results are accessible via the risk engine’s drilldown web services.
A single simulation can generate huge quantities of drilldown data so in a production run much of the drilldown would typically be switched off. The system captures the original web service call allowing a user to re-run a calculation. A “slicing” object allows a user to request drilldown on an intersection of trades, curves, paths and time steps in the re-run targeting the area of concern.
The system can also capture an “enhanced” xml copy of the web service call including all of the rates that were picked up from the database. This allows the calculation to be faithfully re-run at any time in the future without reference to the risk engine database where rates might be updated.
The result viewers in the GUI make use of the extensive list of result services available.