Migration notes 5.2

This page explains the changes required to migrate to the stated version of Atoti FRTB.

Migrate to 5.2.0

Upgrading from version 5.1.0, see Atoti FRTB 5.2 Release Notes.

Atoti FRTB 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.

For clients licensed to use ActiveMonitor, a skeleton module based on version 6.0.9 is included with the Atoti FRTB 5.2.0 release.

Breaking Changes

  • DRC non-Sec risk-weights configuration : A “bucket” column has been added to the Default_Risk_Weights configuration file. This column must be added to existing files, but it may be empty.
  • Variable name changes in Topic Config : Changes to variable names and references for the topic configs.
  • Java 17: Java 17 is now required to run Atoti FRTB and additional JVM options are needed.
  • “Category” Hierarchies removed: For SBM Equity and CSR, the technical “Category” hierarchies are no longer needed and have been removed.
  • “DRC Seniority Ranking” level removed: This technical level is no longer needed and has been removed.
  • Security Configuration upgraded: The security configuration has been upgraded to Spring Security 5.8 and no longer uses deprecated classes.
  • CSR Correlation configuration: The CSR gamma correlations are now fully defined by bucket pairs, instead of just the “sector” component.
  • Equity Correlation configuration: The Equity gamma correlations are now defined by bucket pairs in a new file.
  • DirectQuery Database: The SASensitivities table is now used for the RRAO Notional, instead of the SATradeDescription table.

Summary

  • 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).
  • Added “bucket” column to the Default_Risk_Weights configuration file.
  • Updated configuration files to include support for US-NPR parameter set.
  • Changed variable names and references for the topic configs.
  • In the Stress Calibration cube:
    • Replaced PnL vector with PV vector and base PV.
    • Added scenario FX rates.
  • Added file formats for loading SA summary data.
  • Move to Java 17.
  • Schema clean-up.
  • Variable name changes in topic configs.
  • Reference configuration data for non-BCBS Parameter sets have been separated into their own folders. Additionally, file names for separated data have suffixes denoting parameter set.

DirectQuery Database Schema

We have made the following changes to clean up the DirectQuery Database Schema:

The following tables are no longer needed:

  • SENIORITY_DESCRIPTION
  • CSRBUCKET_DESC
  • EQUITY_BUCKET_DESC

The Notional used for RRAO will be stored in the SASENSITIVITIES table instead of the SATRADE_DESCRIPTION table.

Configuration Files

The gamma correlations for CSR and Equity are now configured by bucket pairs in configuration files. Previously, only the “sector” component of the CSR gamma correlations was stored this way, and the Equity gamma correlations were configured through several properties.

The DRC Seniority Description file has been changed into a configuration file and the “as-of date” column removed. As part of this move, the SeniorityDescription table has been removed from the star Schema, and the “DRC Seniority Ranking” level is no longer available in the cube.

RRAO File

A new RRAO file has been added. This replaces the RRAO columns in the Trade Attributes file.

The old trade attributes files can still be loaded, but the RRAO-related columns have been deprecated. A script is included to generate the new RRAO files from old trade attributes files.

“Category” Hierarchies Removed

The technical “Category” hierarchies used for the Equity and CSR risk classes have been removed. For each of the removed hierarchies, there is a non-Category hierarchy that may be used in its place.

While we don’t expect these hierarchies to be used in saved queries or bookmarks, if you would like to restore these hierarchies as a customization, please contact us.

Spring Security Upgrade

We have upgraded to Spring Security 5.8.7, see Spring’s migration guide.

The frtb-common module has been removed and security configurations which were previously found there have been moved into frtb-starter.

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.

note

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. Note that in our reference implementation these can now be found inside FRTBSecurityFilterChainsConfig.

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:

@Configuration
@Order(1)
public static abstract class AJwtSecurityConfigurer extends WebSecurityConfigurerAdapter {

  @Autowired
  protected ApplicationContext context;

  @Autowired
  @Qualifier(BASIC_AUTH_BEAN_NAME)
  protected AuthenticationEntryPoint authenticationEntryPoint;

  @Override
  protected void configure(HttpSecurity http) throws Exception {
	  http
            .antMatcher(JwtRestServiceConfig.REST_API_URL_PREFIX + "/**")
            // As of Spring Security 4.0, CSRF protection is enabled by default.
            .csrf().disable()
            // Configure CORS
            .cors().and()
            .authorizeRequests()
            .antMatchers("/**").hasAnyAuthority(ROLE_USER)
            .and()
            .httpBasic().authenticationEntryPoint(authenticationEntryPoint);
  }
}

to

@Bean
@Order(1)
protected SecurityFilterChain jwtSecurityFilterChain(HttpSecurity http, ApplicationContext applicationContext) throws Exception {
final AuthenticationEntryPoint basicAuthenticationEntryPoint = applicationContext.getBean(BASIC_AUTH_BEAN_NAME, AuthenticationEntryPoint.class);
        return http
                // As of Spring Security 4.0, CSRF protection is enabled by default.
                .csrf(AbstractHttpConfigurer::disable)
                // Configure CORS
                .cors().and()
                .securityMatcher(url(JwtRestServiceConfig.REST_API_URL_PREFIX, WILDCARD))
                .authorizeHttpRequests(auth -> auth.requestMatchers(HttpMethod.OPTIONS, url(WILDCARD))
                    .permitAll()
                    .anyRequest()
                    .permitAll()
                )
                .httpBasic(basic -> basic.authenticationEntryPoint(basicAuthenticationEntryPoint))
                .build();
        }
Removed imports of ActivePivotRemotingServicesConfig

This class imports org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter, which may (if used) expose access to CVE-2016-1000027 in the Spring-web project.

Variable name changes in topic configs

We have changed variable names and references for the topic configurations in our source configs. While the variables used have been changed or removed, the values themselves remain unchanged.

Here’s a summary of the variable name and reference changes:

  • Removed redundant static variables in source configs, which were duplicates of existing static store name variables.
  • Made use of store name variables from datastore configs in source configs, DLC, tuple publishers, and column calculators, where appropriate.
  • Prefixed all topic variables with “TOPIC_”.
  • Suffixed all store name variables with “_STORE_NAME”.
Source config changes
AConfigurationSourceConfig
Old Topic Old Store Reference New Topic Store Reference
COMMODITY_BUCKETS_RISK_WEIGHT_STORE COMMODITY_BUCKETS_RISK_WEIGHT_STORE TOPIC_COMMODITY_BUCKETS_RISK_WEIGHT ParametersDatastoreConfig.COMMODITY_BUCKETS_RISK_WEIGHT_STORE_NAME
COMMODITY_INTRA_BUCKET_CORRELATIONS_STORE COMMODITY_INTRA_BUCKET_CORRELATIONS_STORE TOPIC_COMMODITY_INTRA_BUCKET_CORRELATIONS ParametersDatastoreConfig.COMMODITY_INTRA_BUCKET_CORRELATIONS_STORE_NAME
DRC_WEIGHT_STORE DRC_WEIGHT_STORE TOPIC_DRC_WEIGHT ParametersDatastoreConfig.DRC_WEIGHT_STORE_NAME
EQUITY_BUCKETS_RISK_WEIGHT_STORE EQUITY_BUCKETS_RISK_WEIGHT_STORE TOPIC_EQUITY_BUCKETS_RISK_WEIGHT ParametersDatastoreConfig.EQUITY_BUCKETS_RISK_WEIGHT_STORE_NAME
ERBA_RISK_WEIGHT_STORE ERBA_RISK_WEIGHT_STORE TOPIC_ERBA_RISK_WEIGHT ParametersDatastoreConfig.ERBA_RISK_WEIGHT_STORE_NAME
FRTB_PARAMETERS_STORE FRTB_PARAMETERS_STORE TOPIC_FRTB_PARAMETERS ParametersDatastoreConfig.FRTB_PARAMETERS_STORE_NAME
CALENDAR_STORE_NAME CALENDAR_STORE_NAME TOPIC_CALENDAR DatastoreConfig.CALENDAR_STORE_NAME
FX_DELTA_SPECIAL_CROSSES_STORE FX_DELTA_SPECIAL_CROSSES_STORE TOPIC_FX_DELTA_SPECIAL_CROSSES ParametersDatastoreConfig.FX_DELTA_SPECIAL_CROSSES_STORE_NAME
GIRR_DELTA_WEIGHTING_STORE GIRR_DELTA_WEIGHTING_STORE TOPIC_GIRR_DELTA_WEIGHTING ParametersDatastoreConfig.GIRR_DELTA_WEIGHTING_STORE_NAME
GIRR_MAJOR_CURRENCY_STORE GIRR_MAJOR_CURRENCY_STORE TOPIC_GIRR_MAJOR_CURRENCY ParametersDatastoreConfig.GIRR_MAJOR_CURRENCY_STORE_NAME
INSTRUMENT_TO_LGD_STORE INSTRUMENT_TO_LGD_STORE TOPIC_INSTRUMENT_TO_LGD ParametersDatastoreConfig.INSTRUMENT_TO_LGD_STORE_NAME
LIQUIDITY_HORIZONS_STORE LIQUIDITY_HORIZONS_STORE TOPIC_LIQUIDITY_HORIZONS ParametersDatastoreConfig.LIQUIDITY_HORIZONS_STORE_NAME
OBLIGOR_TO_RISK_WEIGHT_STORE OBLIGOR_TO_RISK_WEIGHT_STORE TOPIC_OBLIGOR_TO_RISK_WEIGHT ParametersDatastoreConfig.OBLIGOR_TO_RISK_WEIGHT_STORE_NAME
OPTION_RESIDUAL_MATURITY_VERTICES_STORE OPTION_RESIDUAL_MATURITY_VERTICES_STORE TOPIC_OPTION_RESIDUAL_MATURITY_VERTICES ParametersDatastoreConfig.OPTION_RESIDUAL_MATURITY_VERTICES_STORE_NAME
PARAMETER_SET_STORE PARAMETER_SET_STORE TOPIC_PARAMETER_SET ParameterSetDatastoreConfig.PARAMETER_SET_STORE_NAME
VEGA_LIQUIDITY_HORIZONS_STORE VEGA_LIQUIDITY_HORIZONS_STORE TOPIC_VEGA_LIQUIDITY_HORIZONS ParametersDatastoreConfig.VEGA_LIQUIDITY_HORIZONS_STORE_NAME
VERTICES_STORE VERTICES_STORE TOPIC_VERTICES ParametersDatastoreConfig.VERTICES_STORE_NAME
FX_RISK_WEIGHT_OVERRIDES_STORE FX_RISK_WEIGHT_OVERRIDES_STORE TOPIC_FX_RISK_WEIGHT_OVERRIDES ParametersDatastoreConfig.FX_RISK_WEIGHT_OVERRIDES_STORE_NAME
GIRR_CORRELATION_OVERRIDES_STORE GIRR_CORRELATION_OVERRIDES_STORE TOPIC_GIRR_CORRELATION_OVERRIDES ParametersDatastoreConfig.GIRR_CORRELATION_OVERRIDES_STORE_NAME
SENSITIVITY_SCALING_STORE SENSITIVITY_SCALING_STORE TOPIC_SENSITIVITY_SCALING ParametersDatastoreConfig.SENSITIVITY_SCALING_STORE_NAME
TOPIC_CSR_BUCKET_NONSEC CSR_NS_BUCKETS_STORE TOPIC_CSR_BUCKET_NONSEC SADatastoreConfig.CSR_BUCKETS_NON_SEC_STORE_NAME
TOPIC_CSR_BUCKET_SECNONCTP CSR_SEC_NON_CTP_BUCKETS_STORE TOPIC_CSR_BUCKET_SECNONCTP SADatastoreConfig.CSR_BUCKETS_SEC_NON_CTP_STORE_NAME
TOPIC_CSR_BUCKET_SECCTP CSR_SEC_CTP_BUCKETS_STORE TOPIC_CSR_BUCKET_SECCTP SADatastoreConfig.CSR_BUCKETS_SEC_CTP_STORE_NAME
TOPIC_CSR_BUCKET_RISK_WEIGHTS_NONSEC CSR_NS_BUCKETS_RISK_WEIGHT_STORE TOPIC_CSR_BUCKET_RISK_WEIGHTS_NONSEC ParametersDatastoreConfig.CSR_BUCKETS_RISK_WEIGHT_STORE_NAME
TOPIC_CSR_BUCKET_RISK_WEIGHTS_SECNONCTP CSR_SEC_NON_CTP_BUCKETS_RISK_WEIGHT_STORE TOPIC_CSR_BUCKET_RISK_WEIGHTS_SECNONCTP ParametersDatastoreConfig.CSR_BUCKETS_RISK_WEIGHT_STORE_NAME
TOPIC_CSR_BUCKET_RISK_WEIGHTS_SECCTP CSR_SEC_CTP_BUCKETS_RISK_WEIGHT_STORE TOPIC_CSR_BUCKET_RISK_WEIGHTS_SECCTP ParametersDatastoreConfig.CSR_BUCKETS_RISK_WEIGHT_STORE_NAME
TOPIC_CSR_BUCKET_CORRELATIONS_NONSEC CSR_NS_BUCKETS_CORRELATIONS_STORE TOPIC_CSR_BUCKET_CORRELATIONS_NONSEC ParametersDatastoreConfig.CSR_BUCKET_CORRELATIONS_STORE_NAME
CSR_NON_SEC_HIGH_RATINGS_STORE CSR_NON_SEC_HIGH_RATINGS_STORE TOPIC_CSR_NON_SEC_HIGH_RATINGS ParametersDatastoreConfig.CSR_NON_SEC_HIGH_RATINGS_STORE_NAME
IMA_MULTIPLIER_STORE_NAME IMA_MULTIPLIER_STORE_NAME TOPIC_IMA_MULTIPLIER ParametersDatastoreConfig.IMA_MULTIPLIER_STORE_NAME
ASensiSourceConfig
Old Topic Old Store Reference New Topic Store Reference
SbmDeltaFileConstants.TOPIC_SENSITIVITIES SA_SENSITIVITIES_STORE SbmDeltaFileConstants.TOPIC_SENSITIVITIES SADatastoreConfig.SA_SENSITIVITIES_STORE_NAME
SbmVegaFileConstants.TOPIC_SENSITIVITIES SA_SENSITIVITIES_STORE SbmVegaFileConstants.TOPIC_SENSITIVITIES SADatastoreConfig.SA_SENSITIVITIES_STORE_NAME
SbmCurvatureFileConstants.TOPIC_SENSITIVITIES SA_SENSITIVITIES_STORE SbmCurvatureFileConstants.TOPIC_SENSITIVITIES SADatastoreConfig.SA_SENSITIVITIES_STORE_NAME
CrifFileConstants.TOPIC_CRIF SA_SENSITIVITIES_STORE CrifFileConstants.TOPIC_CRIF SADatastoreConfig.SA_SENSITIVITIES_STORE_NAME
TOPIC_UPDATE_OPTIONALITY SA_SENSITIVITIES_STORE TOPIC_UPDATE_OPTIONALITY SADatastoreConfig.SA_SENSITIVITIES_STORE_NAME
ASourceConfig
Old Topic Old Store Reference New Topic Store Reference
SENIORITY_DESCRIPTION_STORE SENIORITY_DESCRIPTION_STORE TOPIC_SENIORITY_DESCRIPTION ParametersDatastoreConfig.SENIORITY_DESCRIPTION_STORE_NAME
FX_STORE FX_STORE TOPIC_FX DatastoreConfig.FX_STORE_NAME
TOPIC_FX_HISTORICAL FX_STORE TOPIC_FX_HISTORICAL DatastoreConfig.FX_STORE_NAME
ES_SCENARIO_FX_STORE ES_SCENARIO_FX_STORE TOPIC_ES_SCENARIO_FX IMADatastoreConfig.ES_SCENARIO_FX_STORE_NAME
TOPIC_ES_SCENARIO_FX_HISTORICAL ES_SCENARIO_FX_STORE TOPIC_ES_SCENARIO_FX_HISTORICAL IMADatastoreConfig.ES_SCENARIO_FX_STORE_NAME
SCENARIOS_STORE SCENARIOS_STORE TOPIC_SCENARIOS IMADatastoreConfig.SCENARIOS_STORE_NAME
LEGAL_ENTITY_ATTRIBUTES_STORE LEGAL_ENTITY_ATTRIBUTES_STORE TOPIC_LEGAL_ENTITY_ATTRIBUTES DatastoreConfig.LEGAL_ENTITY_ATTRIBUTES_STORE_NAME
EQUITY_BUCKETS_STORE EQUITY_BUCKETS_STORE TOPIC_EQUITY_BUCKETS SADatastoreConfig.EQUITY_BUCKETS_STORE_NAME
COMMODITY_BUCKETS_STORE COMMODITY_BUCKETS_STORE TOPIC_COMMODITY_BUCKETS SADatastoreConfig.COMMODITY_BUCKET_STORE_NAME
DRC_SEC_NON_CTP_BUCKETS_STORE DRC_SEC_NON_CTP_BUCKETS_STORE TOPIC_DRC_SEC_NON_CTP_BUCKETS SADatastoreConfig.DRC_SEC_NON_CTP_BUCKETS_STORE_NAME
TOPIC_EQUITY_BUCKET_DESCRIPTION EQUITY_BUCKETS_DESCRIPTION_STORE TOPIC_EQUITY_BUCKET_DESCRIPTION SADatastoreConfig.EQUITY_BUCKET_DESCRIPTION_STORE_NAME
IMA_RISK_FACTORS_STORE IMA_RISK_FACTORS_STORE TOPIC_IMA_RISK_FACTORS IMADatastoreConfig.IMA_RISK_FACTORS_STORE_NAME
TOPIC_IMA_RISK_FACTORS_HISTORICAL IMA_RISK_FACTORS_STORE TOPIC_IMA_RISK_FACTORS_HISTORICAL IMADatastoreConfig.IMA_RISK_FACTORS_STORE_NAME
PL_SCENARIO_STORE PL_SCENARIO_STORE TOPIC_PL_SCENARIOS IMADatastoreConfig.PL_SCENARIOS_STORE_NAME
PL_SUMMARY_SCENARIOS_STORE PL_SCENARIO_STORE TOPIC_PL_SUMMARY_SCENARIOS IMADatastoreConfig.PL_SCENARIOS_STORE_NAME
DRC_SCENARIOS_STORE DRC_SCENARIOS_STORE TOPIC_DRC_SCENARIOS IMADatastoreConfig.DRC_SCENARIOS_STORE_NAME
TOPIC_CSR_BUCKET_DESCRIPTION_NONSEC CSR_NS_BUCKETS_DESCRIPTION_STORE TOPIC_CSR_BUCKET_DESCRIPTION_NONSEC SADatastoreConfig.CSR_BUCKET_DESCRIPTION_STORE_NAME
TOPIC_CSR_BUCKET_DESCRIPTION_SECNONCTP CSR_SEC_NON_CTP_BUCKETS_DESCRIPTION_STORE TOPIC_CSR_BUCKET_DESCRIPTION_SECNONCTP SADatastoreConfig.CSR_BUCKET_DESCRIPTION_STORE_NAME
TOPIC_CSR_BUCKET_DESCRIPTION_SECCTP CSR_SEC_CTP_BUCKETS_DESCRIPTION_STORE TOPIC_CSR_BUCKET_DESCRIPTION_SECCTP SADatastoreConfig.CSR_BUCKET_DESCRIPTION_STORE_NAME
STRESS_CALIBRATION_SCENARIOS_STORE STRESS_CALIBRATION_SCENARIOS_STORE TOPIC_STRESS_CALIBRATION_SCENARIOS StressCalibrationDatastoreConfig.STRESS_CALIBRATION_SCENARIOS_STORE_NAME
CombinedBookParentChildDeskFileConstants.TOPIC_COMBINED_BOOK_PARENT_CHILD_DESK BOOK_PARENT_CHILD_STORE_NAME CombinedBookParentChildDeskFileConstants.TOPIC_COMBINED_BOOK_PARENT_CHILD_DESK DatastoreConfig.BOOK_PARENT_CHILD_STORE_NAME
TOPIC_BOOK_PARENT_CHILD BOOK_PARENT_CHILD_STORE_NAME TOPIC_BOOK_PARENT_CHILD DatastoreConfig.BOOK_PARENT_CHILD_STORE_NAME
TOPIC_BOOK_PARENT_CHILD_HISTORICAL BOOK_PARENT_CHILD_STORE_NAME TOPIC_BOOK_PARENT_CHILD_HISTORICAL DatastoreConfig.BOOK_PARENT_CHILD_STORE_NAME
TOPIC_BOOK_DESK_MAPPING BOOK_DESK_MAPPING_STORE_NAME TOPIC_BOOK_DESK_MAPPING DatastoreConfig.BOOK_DESK_MAPPING_STORE_NAME
TOPIC_BOOK_DESK_MAPPING_HISTORICAL BOOK_DESK_MAPPING_STORE_NAME TOPIC_BOOK_DESK_MAPPING_HISTORICAL DatastoreConfig.BOOK_DESK_MAPPING_STORE_NAME
TOPIC_DESK_DESCRIPTION_STORE DESK_DESCRIPTION_STORE_NAME TOPIC_DESK_DESCRIPTION DatastoreConfig.DESK_DESCRIPTION_STORE_NAME
LEGAL_ENTITY_PARENT_CHILD_STORE LEGAL_ENTITY_PARENT_CHILD_STORE TOPIC_LEGAL_ENTITY_PARENT_CHILD DatastoreConfig.LEGAL_ENTITY_PARENT_CHILD_STORE_NAME
RISK_FACTOR_DESCRIPTION_OVERRIDES_STORE RISK_FACTOR_DESCRIPTION_OVERRIDES_STORE TOPIC_RISK_FACTOR_DESCRIPTION_OVERRIDES SADatastoreConfig.RISK_FACTOR_DESCRIPTION_OVERRIDES_STORE_NAME
UNDERLYING_DESCRIPTION_OVERRIDES_STORE UNDERLYING_DESCRIPTION_OVERRIDES_STORE TOPIC_UNDERLYING_DESCRIPTION_OVERRIDES SADatastoreConfig.UNDERLYING_DESCRIPTION_OVERRIDES_STORE_NAME
OBLIGOR_OVERRIDES_STORE OBLIGOR_OVERRIDES_STORE TOPIC_OBLIGOR_OVERRIDES SADatastoreConfig.OBLIGOR_OVERRIDES_STORE_NAME
TRANCHE_OVERRIDES_STORE TRANCHE_OVERRIDES_STORE TOPIC_TRANCHE_OVERRIDES SADatastoreConfig.TRANCHE_OVERRIDES_STORE_NAME
RRAO_OVERRIDES_STORE RRAO_OVERRIDES_STORE TOPIC_RRAO_OVERRIDES SADatastoreConfig.RRAO_OVERRIDES_STORE_NAME
LEGAL_ENTITY_IMPORTS_STORE LEGAL_ENTITY_IMPORTS_STORE TOPIC_LEGAL_ENTITY_IMPORTS DatastoreConfig.LEGAL_ENTITY_IMPORTS_STORE_NAME
LEGAL_ENTITY_IMPORTS_STORE LEGAL_ENTITY_IMPORTS_STORE TOPIC_LEGAL_ENTITY_IMPORTS DatastoreConfig.LEGAL_ENTITY_IMPORTS_STORE_NAME
PL_STORE_NAME PL_STORE_NAME TOPIC_PL_TRADES IMADatastoreConfig.PL_STORE_NAME
PL_SUMMARY_STORE PL_STORE_NAME TOPIC_PL_SUMMARY IMADatastoreConfig.PL_STORE_NAME
DRCScenarioCountFileConstants.TOPIC_DRC_SCENARIO_COUNT DRC_SCENARIOS_COUNT_STORE DRCScenarioCountFileConstants.TOPIC_DRC_SCENARIO_COUNT IMADatastoreConfig.DRC_SCENARIOS_COUNT_STORE_NAME
TradeAttributesFileConstants.TOPIC_TRADES SA_SENSITIVITIES_STORE TradeAttributesFileConstants.TOPIC_TRADES SADatastoreConfig.SA_SENSITIVITIES_STORE_NAME
DRCFileConstants.TOPIC_DRC IMA_DRC_STORE DRCFileConstants.TOPIC_DRC IMADatastoreConfig.IMA_DRC_STORE_NAME
DRCFileConstants.TOPIC_DRC SA_SENSITIVITIES_STORE DRCFileConstants.TOPIC_DRC SADatastoreConfig.SA_SENSITIVITIES_STORE_NAME
DRCNonLinearRecoveryFileConstants.TOPIC_DRC_NONLINEAR_RECOVERY IMA_DRC_STORE DRCNonLinearRecoveryFileConstants.TOPIC_DRC_NONLINEAR_RECOVERY IMADatastoreConfig.IMA_DRC_STORE_NAME
IMATradesFileConstants.TOPIC_IMA_TRADES IMA_TRADES_STORE IMATradesFileConstants.TOPIC_IMA_TRADES IMADatastoreConfig.IMA_TRADES_STORE_NAME
IMASummaryFileConstants.TOPIC_IMA_SUMMARY IMA_TRADES_STORE IMASummaryFileConstants.TOPIC_IMA_SUMMARY IMADatastoreConfig.IMA_TRADES_STORE_NAME
IMADRCSummaryFileConstants.TOPIC_IMA_DRC_SUMMARY IMA_DRC_STORE IMADRCSummaryFileConstants.TOPIC_IMA_DRC_SUMMARY IMADatastoreConfig.IMA_DRC_STORE_NAME
StressCalibrationTradesFileConstants.TOPIC_STRESS_CALIBRATION_TRADES STRESS_CALIBRATION_TRADES_STORE StressCalibrationTradesFileConstants.TOPIC_STRESS_CALIBRATION_TRADES StressCalibrationDatastoreConfig.STRESS_CALIBRATION_TRADES_STORE_NAME
Datastore variable changes
Old Store New Store
STRESS_CALIBRATION_DATA_SET_STORE STRESS_CALIBRATION_DATA_SET_STORE_NAME
CSR_BUCKETS_NON_SEC_STORE CSR_BUCKETS_NON_SEC_STORE_NAME
CSR_BUCKETS_SEC_CTP_STORE CSR_BUCKETS_SEC_CTP_STORE_NAME
CSR_BUCKETS_SEC_NON_CTP_STORE CSR_BUCKETS_SEC_NON_CTP_STORE_NAME

Reference configuration data for non-BCBS Parameter sets

There are now separate directories holding the configuration for the individual parameter sets CRR2, CRR3, NPR, and PRA. The top-level configuration directory now retains just the BCBS parameter set.

Input file formats

Added

File Details
RRAO File format for trade-level Residual Risk Add On
Stress Calibration Scenario FX Rates Provides FX spot rates used in stress calibration scenarios
Summary Curvature File format for summary StandardisedApproachCube Curvature data
Delta Summary File format for summary StandardisedApproachCube Delta data
Vega Summary File format for summary StandardisedApproachCube Vega data
SA DRC Summary File format for summary StandardisedApproachCube DRC data
RRAO Summary File format for summary Residual Risk Add On

note

Input file formats for trade-level Curvature, Delta, Vega, and DRC are now distinguished as Trade-level Curvature, Trade-level Delta, Trade-level Vega, and Trade-level DRC respectively).

Modified

Modification File Field Optional Description
Deleted Stress Calibration PL Trades PnL N Replaced with PV.
Added Stress Calibration PL Trades PV N Replaces PnL (backwards compatible).
Added Stress Calibration PL Trades Base PV Y If present, subtracted from PV to get PnL.
Deprecated Trade Attributes ExoticUnderlying RRAO now has its own file type RRAO. Loading RRAO via the Trade Attributes file is now deprecated.
Deprecated Trade Attributes Notional As above & previously deprecated just for DRC
Deprecated Trade Attributes Notional Ccy As above & previously deprecated just for DRC
Deprecated Trade Attributes OtherResidualRiskType As above
Deprecated Trade Attributes ResidualRisk As above
Deprecated Trade Attributes RRAO Category As above

Configuration files

Files Added

DRC Seniority Description.csv

Changed the DRC Seniority Description input file into a configuration file, DRC Seniority Description.csv without the AsOfDate column.

Equity Bucket Correlations

The gamma correlations between Equity buckets is now configured in the Equity_Bucket_Correlations file.

Files Modified

Default_Risk_Weights
Modification Field Optional Description
Added Bucket Y Bucket may be used to look up DRC non-Sec risk-weights
frtb-config.properties

Deleted properties:

Property Name Comment
delta.ccy.level Property is no longer used now that stores have been merged into SASensitivities store
vega.ccy.level As above
risk-weight.level As above
commodity.curvature.double-sums.levels As above
nb.elemts.analysis.hierarchy As above
ima.desk.level As above
pl.index.hierarchy.level As above
book.level As above
book.hierarchy As above
legal-entity.hierarchy As above
rrao.category.level As above
ima.drc.seniority.level As above
drc.seniority.ranking.level DRC Seniority Ranking level no longer exists as SeniorityDescription store has been removed from the star schema
equity.market-data.sector.category.level Level intended to be used with properties has been removed
equity.market-data.market-cap.category.level As above
equity.market-data.economy.category.level As above
csr-ns.market-data.rating.category.level As above
csr-ns.market-data.sector.category.level As above
csr-sec-ctp.market-data.rating.category.level As above
csr-sec-ctp.market-data.sector.category.level As above
csr-sec-non-ctp.market-data.rating.category.level As above
csr-sec-non-ctp.market-data.sector.category.level As above
frtb-data-load.properties

New properties:

Property Name Optional Value Description
drc.summary.file-pattern **/DRC_Summary_*.csv{,.gz} File pattern for DRC summary files
rrao.summary.file-pattern **/RRAO_Summary*.csv{,.gz} File pattern for RRAO summary files
rrao.trade.file-pattern **/RRAO_Trade*.csv{,.gz} File pattern for RRAO trade-level files
sbm.summary.delta.sensitivities.file-pattern **/SBM_Summary*_Delta_Sensitivities*.csv{,.gz} File pattern for Delta summary files
sbm.summary.vega.sensitivities.file-pattern **/SBM_Summary*_Vega_Sensitivities*.csv{,.gz} File pattern for Vega summary files
sbm.summary.curvature.sensitivities.file-pattern **/SBM_Summary*_Curvature_Sensitivities*.csv{,.gz} File pattern for Curvature summary files

Deleted properties:

Property Name Comment
sa.csr-nonsec.delta.gamma-rating.correlation Correlations are directly defined instead of being calculated at runtime, therefore this parameter is no longer being used.
sa.equity.large-emerging-market.correlation As above
sa.equity.large-advanced.correlation As above
sa.equity.small-emerging-market.correlation As above
sa.equity.small-advanced.correlation As above
sa.equity.index.correlation As above
sa.other.bucket.csr.secctp As above
sa.csr-sec-non-ctp.delta.non-senior.rw-scale As above
sa.csr-sec-non-ctp.delta.high-yield.rw-scale As above
sa.csr-sec-non-ctp.delta.other-sector.rw As above
CSRNS Bucket Correlations

The CSRNS Bucket Correlations file now contains the (full) gamma correlation, instead of just the “sector” component of the correlation.

Startup properties

Deleted properties:

Property Name Comment
publishing.pre-interpolated-tuple-detection.logger-level Property removed as it was not being used

Datastores

Added stores

Store Details
StressCalibrationScenarioFxRates The Scenario FX Rates for the Stress Calibration cube

Modified stores

Modification Store Field Type Description
Modified SeniorityDescription The store has been removed from the star schema and is now a configuration store
Deleted StressCalibrationTrades PnL N Replaced with PV
Added StressCalibrationTrades PV N Replaces PnL (backwards compatible)
Added StressCalibrationTrades Base PV Y If present, subtracted from PV to get PnL

Databases

Deleted tables

The following tables are no longer part of the star schema, so they are not needed in DirectQuery anymore:

  • CSRBUCKET_DESC
  • EQUITY_BUCKET_DESC
  • SENIORITY_DESCRIPTION

Cube schema

Removed

Cube Dimension Hierarchy Levels Datastore fields Details
SA Default Risk Charge DRC Seniority DRC Seniority Ranking Ranking Level is no longer being used in calculations
SA Market Data Equity Market Cap Category Equity Market Cap Category Market Cap Category As above
SA Market Data Equity Economy Category Equity Economy Category Economy Category As above
SA Market Data Equity Sector Category Equity Sector Category Sector Category As above
SA Market Data CSR Quality Category CSR Quality Category Rating Category As above
SA Market Data CSR non-Sec Rating Category CSR non-Sec Rating Category As above As above
SA Market Data CSR Sec CTP Rating Category CSR Sec CTP Rating Category As above As above
SA Market Data CSR Sec non-CTP Rating Category CSR Sec non-CTP Rating Category As above As above
SA Market Data CSR Sector Category CSR Sector Category Sector Category As above
SA Market Data CSR non-Sec Sector Category CSR non-Sec Sector Category As above As above
SA Market Data CSR Sec CTP Sector Category CSR Sec CTP Sector Category As above As above
SA Market Data CSR Sec non-CTP Sector Category CSR Sec non-CTP Sector Category As above As above

Other changes

Java 17 JVM Options

To run Atoti FRTB using Java 17, the following needs to be added to the JVM options:

--add-opens java.base/java.util.concurrent=ALL-UNNAMED

See the Atoti Server documentation for more details.