Skip to main content
This page explains the changes since 5.3.0-beta, plus any changes required to migrate from 5.3.0-beta to the stated version of Atoti Market Risk.

Changes since 5.3.0-beta

Added

Changed

Removed

Fixed

Migrate to 5.3.0

Upgrading from version 5.3.0-beta, see Atoti Market Risk 5.3 Release Notes. Atoti Market Risk uses Atoti Server 6.0.9 and Atoti UI 5.1.x. For new features and fixes included in these releases, please see the Atoti UI documentation and Atoti UI Migration Notes, and the release notes for Atoti Server.

Summary

  • Java 17 upgrade : The Atoti Market Risk is now compatible with, and requires Java 17.
  • Spring Security upgrade : We have upgraded Spring Security to version 5.8.7 to resolve vulnerabilities and prepare for the upgrade to Spring Security 6.0 (via Spring Boot 3).
  • Atoti Server upgrade : The Atoti Market Risk has been upgraded to Atoti Server 6.0.9.
  • Solutions Tools BOM upgrade : The Solutions Tools BOM dependency has been upgraded to 2.0-AS6.0. All included tools are compatible with, and require Java 17.
  • Volga Taylor VaR measures: Volga Taylor VaR measures have been added to the Solution.
  • Statistical measures for interpolated market shift measures: The minimum, maximum, average, and percentile measures have been added for interpolated market shift measures.
  • PnL Explain and Taylor VaR: The ladder computation has been fixed by replacing PnL = PnL(Ladder(shift), sensi) with PnL = Ladder(PnL(shift), shift).
  • IPnLExplainFormulaProvider consistency cleanup: The new getShiftFromMDFormula function has been added to the IPnLExplainFormulaProviderto transform market data into a shift. See IPnLExplainFormulaProvider consistency cleanup.
  • Removal of ActivePivotRemotingServicesConfig: The import of ActivePivotRemotingServicesConfig has been removed from the configuration class MarketRiskConfig.
  • Made ladder-based sensitivity measures optional: Ladder-based sensitivity measures can now be excluded from the configuration. If the configuration classes are excluded, no visible measures will be present in the cube. If the Solution is configured to use ladders as an input to PnL Explain and Taylor VaR calculations, the result will be NaN.

Breaking Changes

  • The MR 5.3.0 release is now compatible with, and requires Java 17.
  • The Solutions Tools BOM dependency has been upgraded to 2.0-AS6.0. All included tools are compatible with, and require Java 17.
  • The Spring Security configuration has been upgraded to version 5.8.7, for future compatibility with Spring 6.0. Customizations built on previous versions will need to be migrated.
  • A new getShiftFromMDFormula function has been added to the IPnLExplainFormulaProvider.
  • The import of ActivePivotRemotingServicesConfig has been removed from the configuration class MarketRiskConfig.

Properties

Properties Added

Beans

Added

The following beans have been added to define parameters related to Volga Taylor VaR: Those constants are defined in the SpringConstants class of the mr-common-lib module, and the beans are defined in the mr-sensi-config module. In the following files in the mr-sensi-config module:
  • CashShiftViewerChain
  • CorrelationShiftViewerChain
  • CrossGammaShiftViewerChain
  • DeltaShiftViewerChain
  • GammaShiftViewerChain
  • VannaShiftViewerChain
  • VegaShiftViewerChain
  • VolgaShiftViewerChain
the following beans have been added to define statistical measures on interpolated market shift measures: In the mr-sensi-config module, the following classes containing the definition of Volga Taylor VaR measures have been added: In the mr-sensi-config module, imports of the following configuration files have been added to the VolgaTaylorMeasuresConfig class:
  • VolgaTaylorETGContextualChain
  • VolgaTaylorETGFixedConfidenceChain
  • VolgaTaylorVAEContextualChain
  • VolgaTaylorVAEFixedConfidenceChain
  • VolgaTaylorWVAEContextualChain
  • VolgaTaylorWVAEFixedConfidenceChain
  • VolgaTaylorWVARContextualChain
  • VolgaTaylorWVARFixedConfidenceChain
  • VolgaTaylorESContextualChain
  • VolgaTaylorESFixedConfidenceChain
  • VolgaTaylorVaRContextualChain
  • VolgaTaylorVaRFixedConfidenceChain
  • VolgaTaylorChain
In the mr-sensi-config module, the import of the following file has been added to the AllTaylorParameters class:
  • VolgaTaylorParametersConfig
In the mr-sensi-lib module, the following constants have been added in the file SensiMeasureParameters:

Measures

Added

Other changes

Java 17 upgrade

The Solution is now built and intended to be run within a Java 17 JVM. Some functionality in the full application and in the regressions tests requires deep reflection access to Java packages. To enable access, please use the following JVM parameters, either through the command line or maven surefire/failsafe configuration.
The Solution will not work in a Java 11 JVM.

Spring Security upgrade

We have upgraded to Spring Security 5.8.7. To do so, we override the version of Spring Security in Spring Boot by importing the common-dependencies-bom version 1.2.0 into the parent pom file. The common-dependencies-bom overrides the Spring Security version using Spring’s migration guide. You will eventually need to migrate your own custom security configuration(s) in preparation for Spring Security 6.0. We have upgraded our out-of-the-box security configurations to help in this migration.
We recommend using your own custom security configuration(s) and referring to the out-of-the-box security configuration provided only as a sample.
The default security users and roles have not changed, only the way we implement the security. We have done so by making the following changes:
Stop Using WebSecurityConfigurerAdapter
We have replaced instances of WebSecurityConfigurerAdapter with SecurityFilterChain beans.
Use the new requestMatchers methods
In Authorize Http Requests, we have replaced invocations of http.authorizeHttpRequests((authz) -> authz.antMatchers(...)) with http.authorizeHttpRequests((authz) -> authz.requestMatchers(...)).
Use the new securityMatchers methods
We have replaced invocations of http.antMatchers(...) with http.securityMatchers(...). As an example of the previous changes, the configuration for accessing the endpoint which exposes the JWT token changed from:
to

IPnLExplainFormulaProvider consistency cleanup

A new getShiftFromMDFormula function has been added to the IPnLExplainFormulaProvider, used to transform a couple of market data into a shift. It returns a lambda function (double quoteT, double quoteTMinus1) -> shift. The PnLExplainFormulaProvider implementation has been cleaned up to reduce the cases: the getPnlExplainFormula implementation has been replaced with pnlExplainFormula = (sensitivity, quoteT, quoteTMinus1) -> vaRExplainFormula.applyAsDouble(sensitivity, shiftFormula.applyAsDouble(quoteT, quoteTMinus1)) This bean returns null instead of (...) -> 0.0 when no formula has been found, to avoid printing out an incorrect null PnL.

Removal of ActivePivotRemotingServicesConfig

  • The import of ActivePivotRemotingServicesConfig has been removed from the configuration class MarketRiskConfig.
  • The following antMatchers have been rmoved from the security configuration file SecurityConfig:

Integration tests

In the mr-application-tests module, the following changes have been made in the file used for integration tests:
  • The files present in the folder test-bookmarks/07 - Aggregate Taylor VaR have been updated to reflect the changes in the Taylor VaR measure numbers introduced by the addition of the Taylor VaR measures.
  • The files present in the folder test-bookmarks-combined/03 - Taylor VaR have been updated to reflect the changes in the Taylor VaR measure numbers introduced by the addition of the Taylor VaR measures.
  • The folder test-bookmarks/08 - Market Shifts Statistics has been renamed to test-bookmarks/09 - Market Shifts Statistics and its content has been changed to add queries for more sensitivity types than just delta.
  • The folder test-bookmarks/08 - Volga Taylor VaR has been created to test Volga Taylor VaR measures
  • The following files have been created to test the statistical in the market data cube:
    • test-bookmarks/MarketDataCube/shiftStats.query
    • test-bookmarks/MarketDataCube/shiftStats.csv
    • test-bookmarks-combined/MarketDataCube/shiftStats.query
    • test-bookmarks-combined/MarketDataCube/shiftStats.csv