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)withPnL = Ladder(PnL(shift), shift). - IPnLExplainFormulaProvider consistency cleanup: The new
getShiftFromMDFormulafunction has been added to theIPnLExplainFormulaProviderto transform market data into a shift. See IPnLExplainFormulaProvider consistency cleanup. - Removal of ActivePivotRemotingServicesConfig: The import of
ActivePivotRemotingServicesConfighas been removed from the configuration classMarketRiskConfig. - 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
getShiftFromMDFormulafunction has been added to theIPnLExplainFormulaProvider. - The import of
ActivePivotRemotingServicesConfighas been removed from the configuration classMarketRiskConfig.
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
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
mr-sensi-config module, the import of the following file has been added to the AllTaylorParameters class:
- VolgaTaylorParametersConfig
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 thecommon-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.
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 ofhttp.antMatchers(...) with http.securityMatchers(...).
As an example of the previous changes, the configuration for accessing the endpoint which exposes the JWT token changed from:
IPnLExplainFormulaProvider consistency cleanup
A newgetShiftFromMDFormula 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
ActivePivotRemotingServicesConfighas been removed from the configuration classMarketRiskConfig. - The following
antMatchershave been rmoved from the security configuration fileSecurityConfig:
Integration tests
In themr-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 VaRhave 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 VaRhave 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 Statisticshas been renamed totest-bookmarks/09 - Market Shifts Statisticsand its content has been changed to add queries for more sensitivity types than just delta. - The folder
test-bookmarks/08 - Volga Taylor VaRhas 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