Skip to content

Foundation IRB Specification

Foundation IRB calculation with supervisory LGD, PD floors, and correlation formulas.

Regulatory Reference: CRR Articles 153-154, 161-163, 178

Test Group: CRR-B


Requirements Status

ID Requirement Priority Status
FR-1.3 F-IRB capital requirement (K): PD, supervisory LGD, maturity adjustment P0 Done
FR-1.8 Defaulted exposure treatment: F-IRB (K=0) P0 Done

Default Definition — Art. 178

F-IRB defaulted exposures (PD = 100%, K = 0) are driven by the Art. 178 default trigger. The two-limb trigger (unlikeliness-to-pay and 90 DPD), UTP indicators, materiality threshold, suspension rules, and 3-month cure / 1-year distressed- restructuring probation are documented in the shared Default Definition (Art. 178) specification.


Supervisory LGD Values (CRR Art. 161)

Under F-IRB, LGD is prescribed by the regulator based on collateral type:

Art. 161(1) LGD Values

Category Supervisory LGD Reference
Senior unsecured 45% Art. 161(1)(a)
Subordinated unsecured 75% Art. 161(1)(b)
Covered bonds (Art. 129(4)/(5) eligible) 11.25% Art. 161(1)(d)
Senior purchased corporate receivables 45% Art. 161(1)(e)
Subordinated purchased corporate receivables 100% Art. 161(1)(f)
Dilution risk of purchased corporate receivables 75% Art. 161(1)(g)

Art. 161(1)(c) provides that institutions may recognise funded and unfunded credit protection in the LGD in accordance with Chapter 4.

Purchased Receivables (Art. 161(1)(e)–(g))

Art. 161(1)(e) and (f) apply where the institution cannot estimate PD for the purchased receivables pool (or estimates do not meet Section 6 requirements). When PD is estimable, the standard senior (45%) or subordinated (75%) LGD from (a)/(b) applies instead. Art. 161(1)(g) covers dilution risk — the risk that receivables amounts are reduced through credits or allowances to the obligor. It always applies to the dilution component regardless of PD estimation capability.

Purchased Receivables LGD — Implemented

purchased_receivables_subtype ("senior" / "subordinated" / "dilution_risk") on the Facility / Loan / Contingent input row routes the Art. 161(1)(e)/(f)/(g) supervisory LGD (engine/irb/transforms.py::apply_firb_lgd), taking precedence over the seniority-based selector and over the CRM-derived lgd_post_crm — these are unsecured supervisory rates that do not benefit from collateral adjustment.

Art. 160(2)/(6) Top-Down PD — Implemented (P1.278)

Art. 161(1)(e)/(f) and Art. 160(2) are a matched pair: the supervisory LGDs apply to exactly the population that cannot produce a Section-6 compliant PD, and for that population Art. 160(2) prescribes the PD instead of modelling it:

Subtype Derived PD Reference
senior el_estimate ÷ senior supervisory LGD (45% CRR / 40% B31) Art. 160(2)(a)
subordinated el_estimate (no division) Art. 160(2)(b)
dilution_risk el_dilution_estimate Art. 160(6), first sentence

Two nullable Float64 inputs carry the estimates — el_estimate (default risk) and el_dilution_estimate (dilution risk), both decimal rates of the exposure value (0.0225 = 2.25%), matching the identity EL = PD × LGD; neither is a monetary amount, and one never substitutes for the other. The derivation runs in the classify stage (engine/stages/classify/subtypes.py::derive_purchased_receivables_pd) because the IRB approach gate is internal_pd.is_not_null() — before this, a pool with no obligor PD fell to the Standardised Approach entirely.

Null semantics: a null, zero or negative EL estimate derives nothing and leaves the row exactly where it was (SA, absent any other PD) — an absent estimate never becomes PD 0%. A firm-supplied PD always wins, since Art. 160(2) applies only where the institution cannot produce one. The derived PD is capped at 100% (EL ÷ LGD is unbounded above) and is then floored downstream by the ordinary Art. 160(1) 0.03% (PS1/26 0.05%) input floor.

Class scope: purchased corporate receivables only — CORPORATE / CORPORATE_SME on exposure_class_irb. Art. 160(2) and Art. 160(6) both name the corporate population and the (a) denominator is a corporate supervisory LGD (Art. 161(1)(e)), so a retail row carrying a subtype derives nothing: retail IRB is own-estimate only, with no supervisory LGD and no Art. 163 senior EL/LGD limb to authorise the division.

Regime scope: both. PS1/26 Art. 160(2)(a)–(c) and 160(6) carry the CRR text over, and PS1/26 Art. 161(2)(a) extends the same supervisory LGDs to Advanced IRB firms using this PD — so no regime Feature gates it, only the pack's regime-keyed LGD values.

Deferred: Art. 160(2)(c) / 160(6) second sentence — the permission-gated decomposition of an EL estimate into its own PD and LGD (with PS1/26 Art. 161(2)(b) then requiring the decomposed LGD). That needs a decomposed PD/LGD input pair plus an Art. 143 permission flag, and is the only route by which an A-IRB firm may use own estimates for these pools.

The subtype LGD binds on A-IRB too — not only Foundation

The derived PD is what opens the IRB gate, and on the org-wide permission path airb_expr requires only has_internal_rating — it carries no modelled-LGD limb (engine/stages/classify/permissions.py::_build_orgwide_permission_exprs), unlike the model-permission path which does require has_modelled_lgd. A top-down pool with no LGD of any kind therefore can and does land on A-IRB. Do not reason that a null lgd forces the row to Foundation "where the supervisory LGD is applied" — that holds only under model-level permissions, and it is the premise that hid an anti-conservative LGD.

apply_firb_lgd consequently applies the Art. 161(1)(e)–(g) subtype LGD whenever a row carries a purchased_receivables_subtype and has no own or modelled LGD, on either IRB approach — it is not gated on approach == FIRB. That is what the articles require, not a convenience:

  • CRR Art. 161(1) opens "Institutions shall use the following LGD values" with no approach qualifier, and Art. 161(2) is its only escape — available where the institution "can decompose its EL estimates for purchased corporate receivables into PDs and LGDs" in a manner the competent authority considers reliable.
  • PS1/26 Art. 161(2)(a) states it positively: an institution using the Advanced IRB Approach "shall apply" points (e)/(f)/(g) of paragraph 1 where PD is determined under Art. 160(2)(a)/(b) or the first sentence of Art. 160(6).

A firm-supplied LGD still wins, because that is the decomposition escape (CRR Art. 161(2); PS1/26 Art. 161(2)(b)(i)–(ii) requires the decomposed LGD). This is why the condition keys on the absence of an own estimate rather than on the approach.

Before this, a subordinated pool on A-IRB took the generic senior-unsecured LGD (45% CRR / 40% B31) in place of 100%, and a dilution_risk pool in place of 75% CRR / 100% B31 — understating LGD by 30–60pp. Note IRBPermissions.full_irb_b31() masks the defect on a large corporate, because PS1/26 Art. 147A forces those rows to F-IRB anyway; it is reachable under both regimes wherever A-IRB is genuinely granted. Regressions: tests/unit/classifier/test_p1_278_top_down_pd.py.

Art. 230 Table 5 LGDS Values (Foundation Collateral Method)

When exposures are secured by eligible collateral, the LGD* formula (Art. 230) uses the following supervisory LGDS values for the secured portion:

Collateral Type LGDS (Senior) LGDS (Subordinated) C* C** Reference
Financial collateral 0% 0% 0% Art. 230 Table 5
Receivables 35% 65% 0% 125% Art. 230 Table 5
Residential / commercial RE 35% 65% 30% 140% Art. 230 Table 5
Other physical collateral 40% 70% 30% 140% Art. 230 Table 5

Where C* is the minimum collateralisation threshold (below which the collateral is not recognised) and C** is the overcollateralisation level at which the full LGDS applies to the entire exposure.

Covered Bond LGD (Art. 161(1)(d))

CRR Art. 161(1)(d) provides a permissive ("may be assigned") 11.25% LGD for covered bonds eligible under Art. 129(4) or (5). Basel 3.1 restructures this into a separate paragraph Art. 161(1B) with the same 11.25% value. Covered bonds use the Art. 161 mechanism, not the Art. 230 Table 5 LGDS/overcollateralisation framework.

Art. 161 vs Art. 230 Distinction

Art. 161(1)(a)–(g) covers unsecured LGD, subordinated LGD, covered bonds, purchased receivables, and dilution risk. The per-collateral-type LGDS values (0%/35%/40%) for the secured portion of the LGD* formula come from Art. 230 Table 5 (Foundation Collateral Method), not Art. 161. The Art. 230 LGDS subordinated column (65%/70%) applies when the underlying exposure is a subordinated claim — these are distinct from the Art. 161(1)(b) subordinated unsecured LGD of 75%.

Basel 3.1 F-IRB LGD Changes (PRA PS1/26 Art. 161(1))

Under Basel 3.1, senior unsecured LGD is differentiated by whether the counterparty is a financial sector entity (FSE):

Art. 161 LGD Comparison

Category CRR Basel 3.1 Reference
Senior unsecured (non-FSE) 45% 40% Art. 161(1)(a) → Art. 161(1)(aa)
Senior unsecured (FSE) 45% 45% Art. 161(1)(a)
Subordinated unsecured 75% 75% Art. 161(1)(b)
Covered bonds 11.25% 11.25% Art. 161(1)(d) → Art. 161(1B)
Senior purchased receivables 45% 40% Art. 161(1)(e)
Subordinated purchased receivables 100% 100% Art. 161(1)(f)
Dilution risk 75% 100% Art. 161(1)(g)

Art. 230 LGDS Comparison (Secured Portions)

Collateral Type CRR LGDS Basel 3.1 LGDS Reference
Financial collateral 0% 0% Art. 230 Table 5 / Art. 230(2)
Receivables 35% 20% Art. 230 Table 5 / CRE32.9
Residential RE 35% 20% Art. 230 Table 5 / CRE32.10
Commercial RE 35% 20% Art. 230 Table 5 / CRE32.11
Other physical 40% 25% Art. 230 Table 5 / CRE32.12

FSE Definition

Financial sector entity includes banks, building societies, investment firms, insurance companies, and any entity primarily engaged in financial intermediation (general FSE definition: CRR Art. 4(1)(27)). The "large FSE" total-assets threshold driving the 1.25x correlation multiplier (Art. 153(2)) is EUR 70 billion under CRR Art. 142(1)(4) and GBP 79 billion under Basel 3.1 (PS1/26 Glossary p. 78, with Note "corresponds to Article 142(1)(4) of CRR").

Key B31 Changes to Purchased Receivables / Dilution

Basel 3.1 aligns the senior purchased receivables LGD with the new non-FSE rate (45% → 40%, Art. 161(1)(e)). The dilution risk LGD increases from 75% to 100% (Art. 161(1)(g)), reflecting the PRA's view that dilution losses are not mitigated by collateral recovery. The subordinated purchased receivables LGD remains at 100% (Art. 161(1)(f)).

B31 Art. 230 — Subordinated LGDS Distinction Removed

CRR Art. 230 Table 5 has separate "senior" and "subordinated" LGDS columns (e.g., receivables 35%/65%). PRA PS1/26 Art. 230(2) replaces this with a single LGDS per collateral type (20%/20%/25%) with no subordinated distinction. The subordination effect is captured solely through the LGDU term (75% per Art. 161(1)(b)).

PD Floor

CRR: 0.03% (3 basis points) for every non-defaulted exposure class the two flooring articles reach — Art. 160(1) for corporates and institutions, Art. 163(1) for retail. Central governments and central banks are in neither: Art. 160(1) reads "The PD of an exposure to a corporate or an institution shall be at least 0,03 %", so a CRR CGCB IRB exposure carries no PD floor and its modelled PD passes through (P1.277). Basel 3.1 does floor sovereigns, at 0.05% (PS1/26 Art. 160(1)).

Basel 3.1 PD Floors by Exposure Class (PRA PS1/26 Art. 160/163)

Under Basel 3.1, PD floors are differentiated by exposure class:

Exposure Class CRR PD Floor Basel 3.1 PD Floor Reference
Corporate / SME 0.03% 0.05% Art. 160(1)
Sovereign none 0.05% Art. 160(1) — no CRR CGCB limb
Institution 0.03% 0.05% Art. 160(1)
Retail — mortgage 0.03% 0.10% Art. 163(1)(b)
Retail — QRRE (transactor) 0.03% 0.05% Art. 163(1)(c)
Retail — QRRE (revolver) 0.03% 0.10% Art. 163(1)(a)
Retail — other 0.03% 0.05% Art. 163(1)(c)

Sovereign Row is Regulatory Dead Letter under Basel 3.1 (Art. 147A(1)(a))

Under Basel 3.1, sovereign exposures (Art. 147(2)(a)) are restricted to the Standardised Approach by Art. 147A(1)(a); PS1/26 provides no grandfathering or transitional carve-out for pre-existing sovereign IRB models. The 0.05% sovereign row in the Basel 3.1 column is retained for completeness only — under Basel 3.1 it cannot bind on any live exposure.

Institutions (Art. 147(2)(b)) are capped at F-IRB by Art. 147A(1)(b) (A-IRB unavailable; SA applies only where permission has been granted under Art. 148 or Art. 150). The 0.05% institution PD floor applies normally to F-IRB institution exposures.

See Framework Differences and IRB Approach Restrictions for the full Art. 147A(1) class mapping.

Asset Correlation Formula (CRR Art. 153)

Corporate, Institution, Sovereign

PD-dependent correlation with exponential decay factor of 50:

f(PD) = (1 - exp(-50 x PD)) / (1 - exp(-50))
R = 0.12 x f(PD) + 0.24 x (1 - f(PD))

SME Firm-Size Adjustment

For corporates with turnover < EUR 50m, correlation is reduced:

CRR (Art. 153(4)):

s = max(5, min(turnover_EUR, 50))
adjustment = 0.04 x (1 - (s - 5) / 45)
R_adjusted = R - adjustment

Turnover is stored in GBP and converted to EUR via the configured FX rate (default: 0.8732).

Basel 3.1 (PRA PS1/26): Thresholds converted to GBP:

Parameter CRR (EUR) Basel 3.1 (GBP)
SME threshold EUR 50m GBP 44m
Floor turnover EUR 5m GBP 4.4m
Adjustment range 45 39.6
s = max(4.4, min(turnover_GBP, 44))
adjustment = 0.04 x (1 - (s - 4.4) / 39.6)
R_adjusted = R - adjustment

Retail Mortgage

Fixed correlation: R = 0.15

Qualifying Revolving Retail (QRRE)

Fixed correlation: R = 0.04

Other Retail

PD-dependent correlation with exponential decay factor of 35:

f(PD) = (1 - exp(-35 x PD)) / (1 - exp(-35))
R = 0.03 x f(PD) + 0.16 x (1 - f(PD))

FI Scalar (CRR Art. 153(2))

A 1.25x multiplier applied to the asset correlation coefficient (R) for large financial sector entities (LFSEs) (total assets ≥ EUR 70 billion per CRR Art. 142(1)(4)) and unregulated financial sector entities (per CRR Art. 153(2)).

Two distinct thresholds — do not conflate

  • LFSE total-assets thresholdEUR 70 billion under CRR Art. 142(1)(4); GBP 79 billion under Basel 3.1 (PS1/26 Glossary p. 78, which cites CRR Art. 142(1)(4) as the corresponding pre-revocation provision). Triggers the 1.25x correlation multiplier (Art. 153(2)) for large FSEs and all unregulated FSEs under both frameworks.
  • GBP 440m annual revenue → F-IRB only approach restriction (Art. 147A(1)(e), Basel 3.1 only). Does not affect correlation.
  • The Art. 147A(1)(e) F-IRB restriction applies to all FSEs regardless of size — it is separate from the correlation uplift which only applies to large or unregulated FSEs.

Derivation (mandatory, not an election)

The multiplier is a mandatory treatment ("shall multiply … by 1.25"), so requires_fi_scalar is derived in the classification stage (engine/stages/classify/subtypes.py::classify_exposure_subtypes), not driven solely by the user flag:

requires_fi_scalar = apply_fi_scalar
                     OR (is_financial_sector_entity AND total_assets ≥ threshold)
  • Threshold — read from the pack lfse_total_assets_threshold through the FX seam (engine/thresholds.py::regulatory_threshold): CRR EUR 70bn × EUR/GBP rate → GBP; Basel 3.1 GBP 79bn native. total_assets is a GBP figure, mirroring the SME balance-sheet gate.
  • User override — the explicit apply_fi_scalar election is an authoritative True-override (a firm may know an entity is a large or unregulated FSE even when the data says otherwise). It can never suppress a derived True. It is also the interim recognition path for the unregulated FSE limb (below).
  • Null total_assets on a flagged FSE — largeness is undetermined, so the multiplier is not applied (the LFSE base rate among FSEs is low, so a conservative-apply default would over-state most of the FSE population). Because a genuinely-large FSE with missing data would then be under-stated, the classifier emits CLS009 (both regimes) to flag the gap — never a silent pass-through. The warning is suppressed when an explicit apply_fi_scalar election already resolves the treatment.

Unregulated FSE limb — deferred

CRR Art. 142(1)(5) / Art. 153(2) apply the 1.25× multiplier to unregulated FSEs regardless of size. The schema carries no regulated-status signal, so this size-independent limb is not yet derived; apply_fi_scalar=True is the interim recognition path for a known unregulated FSE. Enabling it fully is a schema-enablement change (a nullable regulated-status input with a conservative default).

Capital Requirement Formula

K = LGD x N[(1-R)^(-0.5) x G(PD) + (R/(1-R))^(0.5) x G(0.999)] - PD x LGD

Where:

  • N(x) = cumulative normal distribution function
  • G(x) = inverse normal CDF
  • G(0.999) = 3.0902323061678132
  • K is floored at 0

Effective Maturity (CRR Art. 162)

Applied to non-retail exposures only (retail exposures use MA = 1.0).

Art. 162(1) — F-IRB Fixed Supervisory Maturities

Institutions that have not received permission to use own LGDs and own conversion factors (i.e. F-IRB firms) shall assign:

Exposure Type Supervisory Maturity Reference
Repo-style transactions (repos, securities/commodities lending or borrowing) 0.5 years Art. 162(1)
All other exposures 2.5 years Art. 162(1)

0.5-Year Repo Maturity — Implemented

F-IRB exposures flagged with is_sft = True on the Facility/Loan/Contingent input row receive M = 0.5 years under CRR, overriding any maturity_date-derived value (engine/irb/transforms.py prepare_columns). The override is gated on the CRR framework only — Basel 3.1 deleted Art. 162(1), so B31 F-IRB calculates M per Art. 162(2A). Regression: tests/unit/irb/test_firb_sft_maturity.py.

Alternatively, the competent authority may require the institution to calculate M for each exposure using the A-IRB methods in Art. 162(2).

2.5-Year Fixed Maturity — Implemented as an Election (firb_fixed_maturity)

Which of the two Art. 162(1) sentences binds is a fact about the firm's Art. 143 permission, not about the regime, so the fixed 2.5-year value for "all other exposures" is a CalculationConfig election rather than a regime Feature: CalculationConfig.crr(..., firb_fixed_maturity=True) pins every F-IRB non-repo-style row to 2.5 years (derivatives included — Art. 162(1) carves out repos and securities-or-commodities lending only). The regulatory values live on the cited pack scalars firb_sft_supervisory_maturity_years (0.5) and firb_fixed_supervisory_maturity_years (2.5), and regime availability on the CRR-only firb_fixed_supervisory_maturity Feature — PS1/26 Art. 162(1) is "[Note: Provision left blank]", so the election cannot fire under Basel 3.1.

The default is False, i.e. the calculator applies the Art. 162(1) second-sentence alternative (per-exposure Art. 162(2) M) unless a firm opts in — do not read the default as an assertion that no Art. 143 permission requires the fixed values. With the election off, a non-repo-style F-IRB row keeps the maturity_date derivation clipped to [1, 5] years and only falls back to 2.5 years when maturity_date is null. The election leaves A-IRB rows untouched. Regressions: tests/unit/irb/test_p1_249_firb_fixed_maturity.py, tests/acceptance/crr/test_p1_249_art_162_1_firb_fixed_maturity.py.

Known divergence — the one-day floor outranks the paragraph-1 fixed values

In the engine's maturity priority chain (engine/irb/transforms.py::_build_maturity_exprs) both Art. 162(1) fixed values sit below the Art. 162(3) one-day carve-out and below an explicit effective_maturity input. An F-IRB row with the election on and has_one_day_maturity_floor set therefore resolves to one day (1/365 ≈ 0.00274 years), not 2.5 years — a large RWA reduction.

The primary text does not support that ordering. Art. 162(3) contains no "notwithstanding paragraphs 1 and 2" clause. It reaches exposures only because paragraph 2 pulls it in: Art. 162(2) directs firms permitted to use own LGDs and own conversion factors to calculate M "as set out in points (a) to (e) of this paragraph and subject to paragraphs 3 to 5 of this Article" (CRR Art. 162(2), first sentence). Read plainly, the one-day floor is a paragraph-2 carve-out and does not displace a paragraph-1 firm's fixed M — which is how Art. 162(3) is scoped below ("overriding the longer minimums in paragraph 2"). The two passages agree; the engine is the outlier.

The divergence is recorded and retained deliberately, not an oversight. The ordering pre-dates this election — the one-day floor has always outranked the 0.5-year repo-style sibling of the same sentence — so reordering it would move live numbers on today's F-IRB SFT rows carrying a one-day floor, beyond the scope of adding the 2.5-year election. Because firb_fixed_maturity defaults to False, the 2.5-year limb is opt-in only and inert at the default: no live number is exposed by it. Pinned by test_one_day_floor_still_outranks_the_fixed_value.

The same precedence question applies to an explicit effective_maturity input outranking the fixed value (test_firm_supplied_effective_maturity_still_outranks_the_fixed_value): a firm on the paragraph-1 fixed values arguably has no per-exposure M to supply at all. That rung is likewise pre-existing and left unchanged here.

Art. 162(2) — A-IRB Effective Maturity Calculation

Institutions permitted to use own LGDs and CCFs (A-IRB) must calculate M per exposure. M shall not exceed 5 years (except under Art. 384(1) for CVA). Key methods:

Method Applies To Formula / Rule Minimum M
(a) Cash-flow schedule Instruments with known cash flows M = max(1, min(Σ(t × CF_t) / Σ(CF_t), 5)) 1 year
(b) Derivatives (MNA) Derivatives under master netting agreement Notional-weighted average remaining maturity 1 year
(c) Fully collateralised derivatives + margin lending (MNA) Daily remargined and revalued (Annex II) Weighted average remaining maturity 10 days
(d) Repo-style transactions (MNA) Daily remargined and revalued repos/SFTs Notional-weighted average remaining maturity 5 days
(e) Purchased corporate receivables Drawn amounts (own PD permitted) Exposure-weighted average maturity 90 days
(f) Other instruments When (a) cannot be calculated Max remaining time to discharge obligations 1 year
(g) IMM netting sets Longest-dated contract > 1 year IMM formula with effective EE 1 year
(j) Double-default protection Art. 153(3) credit protection Effective maturity of protection 1 year

Art. 162(3) — One-Day Maturity Floor Exceptions

Where documentation requires daily re-margining and daily revaluation with provisions for prompt liquidation or set-off of collateral, M shall be at least one day (overriding the longer minimums in paragraph 2 — paragraph 2 itself makes its M "subject to paragraphs 3 to 5 of this Article", and paragraph 1 has no equivalent hook; see the known divergence recorded under Art. 162(1), where the engine nonetheless applies this floor over the fixed values) for:

  • (a) Fully/nearly-fully collateralised derivatives (Annex II)
  • (b) Fully/nearly-fully collateralised margin lending
  • (c) Repurchase transactions, securities or commodities lending or borrowing

The same one-day floor applies to qualifying short-term exposures not part of ongoing financing, including:

  • (a) FX settlement exposures to institutions
  • (b) Self-liquidating short-term trade finance (residual maturity ≤ 1 year, Art. 4(1)(80))
  • (c) Securities settlement within usual delivery period or 2 business days
  • (d) Cash settlement/electronic payment exposures, including failed-transaction overdrafts

Implementation Note — has_one_day_maturity_floor Flag + the ccr_effective_maturity carrier

The code implements Art. 162(3) via a boolean flag has_one_day_maturity_floor. When the flag is set, the IRB maturity chain (engine/irb/transforms.py::_build_maturity_exprs) does drive the effective-maturity column down to one day (1/365 ≈ 0.00274 years), and the maturity adjustment then suppresses its own 1-year floor so the sub-1-year M survives into MA. The flag has a second, independent consumer — CRM maturity-mismatch ineligibility (Art. 237(2): any mismatch zeroes protection value for one-day-floor exposures) — but it is not only a CRM-side flag.

For synthetic CCR / SFT rows the one-day signal is not a firm input. The FCCM SFT producer and the SA-CCR derivative producer compute the Art. 162 effective maturity at netting-set grain and surface it on a dedicated ccr_effective_maturity Float64 carrier (declared on CCR_EXIT_EDGE, propagated through the classifier / CRM / RE-split CCR edges). A new rung in _build_maturity_exprs coalesces that carrier into the IRB M column (AIRB-gated, so it never displaces the F-IRB fixed M), and sets has_one_day_maturity_floor from the winning rung — so when the carrier resolves to the Art. 162(3) one-day value, the maturity adjustment uses the actual sub-1-year M rather than re-flooring to 1 year. Because the flag is derived inside the IRB chain (downstream of CRM), CRM never sees a CCR one-day signal and no collateral is silently zeroed by Art. 237(2).

The F-IRB 0.5-year repo carve-out (Art. 162(1)) reaches CCR / SFT rows via a widened gate: _apply_firb_sft_supervisory_maturity now fires on (is_sft OR risk_type == CCR_SFT) — so a CCR_SFT row routed to F-IRB receives M = 0.5 years without ever setting the lending-side is_sft flag (which stays a CRM-only input). CCR_DERIVATIVE rows are deliberately excluded from this gate.

Art. 162(4) — SME Maturity Simplification

For exposures to corporates situated in the UK with consolidated sales and consolidated assets < EUR 500 million, institutions may consistently apply the F-IRB fixed maturities from Art. 162(1) instead of calculating per Art. 162(2). The EUR 500m threshold rises to EUR 1,000m for corporates that primarily own and let non-speculative residential property.

Not Yet Implemented

The code does not implement the Art. 162(4) SME maturity simplification. All A-IRB exposures calculate maturity from maturity_date or default to 2.5 years.

Maturity Adjustment Formula

b = (0.11852 - 0.05478 x ln(PD))^2
MA = (1 + (M - 2.5) x b) / (1 - 1.5 x b)

Where M is clamped to the range [1.0, 5.0] years (per Art. 162(1)/(2) floor and cap).

Basel 3.1 Changes to Art. 162

PRA PS1/26 makes significant changes to Art. 162:

Aspect CRR Basel 3.1 Reference
F-IRB fixed maturities (§1) 0.5yr repo / 2.5yr other Deleted — all IRB firms must calculate M Art. 162(1)
Scope A-IRB only (Art. 143 permission) F-IRB and A-IRB (Art. 147A) Art. 162(2)
Revolving exposures Repayment date of current drawing Max contractual termination date Art. 162(2A)(k)
Mixed MNA (derivatives + repos) Not addressed 10-day floor Art. 162(2A)(da)
Purchased receivables minimum M 90 days 1 year Art. 162(2A)(e)
Collateral daily condition Re-margining and revaluation Re-margining or revaluation Art. 162(2A)(c)/(d)
SME simplification (§4) Available (EUR 500m threshold) Deleted Art. 162(4)

See the Basel 3.1 F-IRB specification for full details.

Previous Description Was Wrong

This section previously stated "unconditionally cancellable revolving facilities are assigned a maturity of 1 year". Art. 162(2A)(k) actually requires the maximum contractual termination date — not a 1-year default. Using 1 year instead of the facility termination date would systematically understate maturity and therefore RWA for revolving corporate exposures.

RWA Calculation

CRR Corporate/Institution (Art. 153(1)(iii)): RWA = K x 12.5 x 1.06 x EAD x MA

CRR Retail (Art. 154(1)(ii)): RWA = K x 12.5 x 1.06 x EAD (MA = 1.0 for retail)

Under CRR the 1.06 scaling factor applies uniformly to corporate, institution, sovereign and retail IRB RWA. The factor is embedded in the risk weight formulae in both Art. 153(1)(iii) (corporate/institution/sovereign) and Art. 154(1)(ii) (retail) — each ends ... × 12,5 × 1,06.

Previous Spec Error Corrected

An earlier version of this section claimed that retail CRR RWA does not include the 1.06 factor. That was wrong — the factor is written explicitly into the Art. 154(1)(ii) retail formula in the onshored CRR. The 1.06 scaling is removed only under Basel 3.1 (PRA PS1/26 sets it to 1.0 for all IRB exposure classes); under CRR it applies to both Art. 153 and Art. 154 outputs.

Expected Loss

EL = PD x LGD x EAD

Used for comparison against provisions (see Provisions).

Key Scenarios

Scenario ID Description Key Parameters
CRR-B1 Corporate F-IRB, senior unsecured, low PD PD=0.10%, LGD=45%, M=2.5y
CRR-B2 Corporate F-IRB, senior unsecured, high PD PD=5.00%, LGD=45%, M=2.5y
CRR-B3 Subordinated debt — supervisory LGD 75% PD=0.50%, LGD=75% (Art. 161(1)(b))
CRR-B4 Financial collateral — blended LGD Collateral reduces effective LGD (Art. 161(1)(d))
CRR-B5 SME corporate with firm-size adjustment + supporting factor Turnover < EUR 50m, correlation reduced (Art. 153(4))
CRR-B6 PD floor binding — input PD below 0.03% floor Input PD=0.01% → floored to 0.03% (Art. 160(1))
CRR-B7 Long maturity — contractual 7Y capped to 5Y M clamped to [1, 5] range (Art. 162(2))

FI Scalar Coverage

The 1.25x correlation multiplier for large/unregulated FSEs (Art. 153(2)) is validated within CRR-B5 and through the B31-B group (B31-B7 specifically tests FSE LGD differentiation). See FI Scalar for details.

Acceptance Tests

Group Scenarios Tests Pass Rate
CRR-B: Foundation IRB B1–B7 13 100% (13/13)