EU-DA parameter set. It lists the relief taken from the EU delegated act and the CRR3 provisions added, then explains how to enable the two optional treatments. The delegated act is Commission Delegated Regulation (EU) 2026/1221 of 4 June 2026. It amends Regulation (EU) No 575/2013, the Capital Requirements Regulation that CRR3 amends as well. It was published in the Official Journal on 11 September 2026 and applies from 1 January 2027. Its relief provisions run until 31 December 2029. The Commission summarized the changes in Temporary adjustments to Basel III market risk rules.
Atoti FRTB 6.0.10 adds an EU-DA parameter set and every treatment on this page. This page builds on the CRR3 support.
Which treatments does the EU-DA parameter set add?
The ERM II currencies of Article 325bd(5a) and bucket 3b of Article 325as are permanent CRR3 provisions. They ship underEU-DA so that existing CRR3 results are unchanged.
Which configuration files are added?
TheEU-DA parameter set is declared in the ParameterSet configuration file, with CRR3 as its parent. The configuration that differs from CRR3 ships in four files in sample-data/configuration/EU-DA/, each row carrying EU-DA in its ParameterSet column. A deployment with its own configuration directory copies the four files into it and adds the EU-DA,CRR3 row to its ParameterSet.csv.
Every FRTBParameters parameter not in the
EU-DA file falls back to CRR3, following the fallback logic of Parameter sets. The currency list, the commodity buckets and the divisor list are each overridden as a whole set. The rows declared under EU-DA are the set EU-DA uses. A deployment maintaining its own set must restate it under EU-DA.
The shipped EU-DA rows are dated 2016-01-01 with no end date, so the relief applies to every as-of date from then on. Ending it after 31 December 2029 is the deployment’s responsibility.
What changes for the SBM Risk Charge?
Until 31 December 2029, Article 495s(1) multiplies the capital requirement of the sensitivities-based method, under Article 325h(4), by 0.9. Thesa.sbm-risk-charge.multiplier parameter holds this multiplier per parameter set and AsOfDate. EU-DA sets it to 0.9; every other parameter set keeps the default of 1.0. The SBM Risk Charge (transitional) measure applies it:
A parameter set that overrides the multiplier in its own FRTBParameters rows sees the reduction in its capital requirement.
What changes for carbon trading?
Article 325as splits commodity bucket 3 into an electricity bucket and two carbon trading buckets, EU ETS and non-EU ETS.CRR3 ships buckets 3 and 3a only; EU-DA adds bucket 3b and relabels 3a. Articles 325at and 325au, which set the intra-bucket and inter-bucket correlations, are not amended. Table 10 of Article 325at still names only bucket 3, “electricity and carbon trading”, at 40%. Applying that 0.4 to 3a and 3b, and the inter-bucket correlation between buckets 3, 3a and 3b, are therefore interpretations.
Commodity_Buckets assigns each underlying one bucket for all parameter sets. A row in Underlying_Desc_Overrides moves an underlying to another bucket under one parameter set. The row names the underlying, the bucket and the parameter set. Inheritance applies, so a row declared under
CRR3 also holds under EU-DA. As an example, the sample data assigns carbon emissions trading and non-EU ETS carbon emissions trading to bucket 3. It then moves the first to 3a under CRR3 and the second to 3b under EU-DA.
Until 31 December 2029, Article 495r also divides the Delta tenor correlation of EU ETS carbon trading by 99.1%. EU-DA ships this as the 3a=0.991 entry of sa.commodity.rho-tenor.correlation.bucket-divisors, which takes bucket=divisor entries separated by ;. Bucket 3a’s tenor correlation is therefore 0.99 / 0.991 under EU-DA, and a bucket with no entry keeps the 0.99 set by sa.commodity.rho-tenor.correlation.
What changes for ERM II currencies?
Article 325bd(5a) places the currencies of Member States in Exchange Rate Mechanism II (ERM II) in the most-liquid-currency sub-category. Article 325ae(3) divides the GIRR risk weights of that sub-category by the square root of 2. Therefore,EU-DA ships its own major currency list, GIRR_Major_Currency_EU-DA.csv, holding the seven Basel currencies plus DKK, the only ERM II currency. For the major currencies and how they are configured, see GIRR_Major_Currency.
What changes for RRAO?
Until 31 December 2029, Article 495p applies a zero multiplier to the residual risk add-on of three instrument categories. It applies only if the instrument attracts no residual risk add-on for another reason. The categories are:- Instruments referencing future realized volatility as an underlying.
- Options exercisable on a finite set of predetermined dates.
- Options on the difference between two constant maturity swap rates in the same currency.
EU-DA must therefore enable the treatment and flag them. The RRAO Zero Risk Weight flag, supplied in the input data, marks a position as eligible for the zero multiplier. The property is global: the flag applies under every parameter set, not only EU-DA. RRAO rows synthesized from Trade_Attributes.csv under rrao.use-trade-attributes=true carry no flag and always take N. Flagging such a trade requires migrating it to RRAO_Trade.csv.
The flag can be overridden per parameter set through the RRAOOverrides store, so one jurisdiction can apply the zero multiplier while another does not. A row flagged Y that leaves RRAO Category empty gets ZRW appended to its derived category, for example RRAO Y Y ZRW instead of RRAO Y Y. An override keyed on the old derived category must be re-keyed. A row carrying N, or no value, keeps the category it derived before 6.0.10.
Enabling the treatment adds:
- An
RRAO Zero Risk Weightcolumn at the end of the RRAO Trade, RRAO Summary and RRAO Overrides input files, where the flag is supplied. The trade and summary columns are added only whilefrtb.eu-da.rrao-zero-risk-weight.add-input-file-columnistrue, its default. - A field of the same name on the RRAO and RRAOOverrides stores, holding the flag.
- An RRAO Zero Risk Weight level in the
Riskdimension of the SA cube.
RRAO Zero Risk Weight = Y contributes to the RRAO measures as follows. A position flagged Residual Risk = N is shown for comparison.
What changes for DRC?
Until 31 December 2029, Article 495q lets an institution reassign the maturity of two kinds of equity exposure. Cash equity positions hedging derivatives may take the maturity of those derivatives. Equity derivative exposures may take a flat three months. It derogates from Article 325x(4) and is optional. A Default Risk Charge exposure therefore carries two maturities: the contractual one, and the assigned one the calculation uses after reassignment. The existingMaturity column supplies the assigned maturity. The ContractualMaturity field keeps the contractual one beside it, for reporting only: no measure reads it. The property is global: the field exists under every parameter set, not only EU-DA.
Enabling the treatment adds:
- A
ContractualMaturitycolumn at the end of the SA DRC trade and SA DRC summary input files, where the contractual maturity is supplied. - A field of the same name on the SASensitivities store, holding the contractual maturity.
- A DRC Contractual Maturity level in the
Default Risk Chargedimension of the SA cube.
How to enable the opt-in treatments
These steps cover the two opt-in treatments, RRAO Zero Risk Weight and DRC contractual maturity. Each step names the treatment it applies to.Step 1: Migrate a DirectQuery database
An Atoti DirectQuery database needs the new columns before the application restarts with a property set. WithoutCONTRACTUAL_MATURITY, the application fails at startup. In-memory deployments skip this step.
- RRAO Zero Risk Weight: a nullable
RRAO_ZERO_RISK_WEIGHTstring, last on the RRAO and RRAOOVERRIDES tables. - DRC contractual maturity: a nullable
CONTRACTUAL_MATURITYstring on SASENSITIVITIES.
CONTRACTUAL_MATURITY from the assigned MATURITY of the matching RISK_FACTOR_DESCRIPTION row. The columns are nullable, so a script can be applied before the properties are set.
The backfill runs once. Every later load must fill CONTRACTUAL_MATURITY itself: with the contractual maturity, or with the assigned MATURITY where there is none.
For RRAO Zero Risk Weight, a null RRAO_ZERO_RISK_WEIGHT reads as a null member on the level rather than N. See the RRAO store.
Step 2: Set the properties
Set the property of each treatment infrtb-config.properties. Both enabled properties are listed in Startup properties.
- A project that maintains its own
frtb-config.propertiesmust also carryfrtb.eu-da.rrao-zero-risk-weight.level, the descriptor of the RRAO Zero Risk Weight cube level. See Cube levels for post-processors. - The property appends the column to the shipped
rraoFileColumnsandrraoSummaryFileColumnsbeans only. A project that overrides those beans must append the column itself.
Step 3: Update pinned parser columns
Only in-memory deployments load CSV topics, so Atoti DirectQuery skips this step. The shipped Java configuration appends each new column to the parser columns of its topics. It cannot append to aparser.columns list pinned in a Data Load Controller file. A deployment whose Data Load Controller file pins those lists, as sample-data/application-dlc-in-memory.yaml does for all five topics, must append the columns by hand.
For RRAO Zero Risk Weight, the RRAO and RRAO_Summary topics take RRAO Zero Risk Weight after Asset Class:
DRC, DRC_Summary and IMA_DRC topics take ContractualMaturity after Instrument Type. The IMA_DRC topic reads the same trade file as DRC, so it must parse the column, which it then ignores:
Maturity value is stored instead. That fallback runs on in-memory loads only, not under Atoti DirectQuery.
Step 4: Update Java customizations
RRAOWeightedNotional receives RRAO Zero Risk Weight as a second leaf level, held in protected ILevelInfo zeroRiskWeightLevel. A subclass that overrides init without calling super.init(properties), or that overrides evaluateLeaf, loses the treatment silently.
EuDelegatedActProperties.class is registered by both FRTBConfig and SADatastoreConfig, so replacing either one alone is safe. A project that replaces both must add the class to its own @EnableConfigurationProperties.
A project bean that changes the SASensitivities field layout must declare @Order(DatastoreCustomisationSpringBeanOrder.PROJECT), as described in How are customizations ordered?. A project publishing SASensitivities tuples positionally supplies one extra value for ContractualMaturity. The field sits at its ACCELERATOR position, before project and sign-off fields, so read the resulting field order first.
Step 5: Update extracts and dashboards
TheSACubeRRAOExport extract, frtb-application/src/main/resources/DEETemplateOrders/SACubeRRAOExport.json, writes an RRAO_Summary file that is loaded back in as an input file. It exports the pre-6.0.10 columns, so once RRAO Zero Risk Weight is enabled its output no longer matches the expected file layout. A deployment reloading it must do one of the following:
- Make the extract export the flag, by adding the RRAO Zero Risk Weight level to its query and to its output columns.
- Keep the old summary layout, by setting
frtb.eu-da.rrao-zero-risk-weight.add-input-file-column=falseand pinning the parser columns by hand. TheRRAOtopic takes the flag column, theRRAO_Summarytopic does not. Positions loaded from the extract then carry no flag.
Step 6: Supply the values in the input files
AddRRAO Zero Risk Weight (Y or N) to RRAO Trade, RRAO Summary or RRAO Overrides, and ContractualMaturity to SA DRC trade or SA DRC summary. Under Atoti DirectQuery, fill the matching table columns on every load.
Step 7: Restart and verify
Restart the application, then check the load:- Search the application log for
SourceLoadingExceptionentries naming a DRC file. - Query the DRC Contractual Maturity and RRAO Zero Risk Weight levels of the SA cube. A null member means a load left the column empty.