Exposure Classes¶
Exposures are classified into regulatory categories that determine their treatment under the Standardised Approach (SA) and eligibility for Internal Ratings-Based (IRB) approaches.
Overview¶
flowchart TD
A[Exposure] --> B{Classification}
B --> C[Central Govt / Central Bank]
B --> D[Institution]
B --> E[Corporate]
B --> F[Retail]
B --> K[Real Estate]
B --> L[CIU]
B --> M[Covered Bond]
B --> G[Specialised Lending]
B --> H[Equity]
B --> I[Defaulted]
B --> J[Other]
Exposure Class Summary¶
| Class | Description | SA | F-IRB | A-IRB | Slotting |
|---|---|---|---|---|---|
| Central Govt / Central Bank | Governments and central banks | ||||
| Institution | Banks and investment firms | ||||
| Corporate | Non-financial companies | ||||
| Corporate SME | Small/medium enterprises | ||||
| Retail | Individuals and small businesses | ||||
| Retail Mortgage | Residential mortgages | ||||
| Retail QRRE | Qualifying revolving exposures | ||||
| Retail Other | Other retail exposures | ||||
| Real Estate (B31) | RE-secured loans (loan-splitting / income-producing / ADC) | ||||
| CIU | Collective Investment Undertakings | ||||
| Covered Bonds | Eligible covered bonds (Art. 129) | ||||
| Specialised Lending | Project/object/commodity finance | ||||
| Equity | Equity holdings | ||||
| Defaulted | Non-performing exposures | ||||
| Other | PSE, MDB, RGLA, etc. | Varies | Varies |
*Basel 3.1 restricts A-IRB for large corporates and institutions
Classification Process¶
The classifier assigns exposure classes based on:
- Counterparty type - Legal entity classification
- Product type - Facility/loan characteristics
- Size - Turnover, exposure amounts
- Performance status - Default indicators
from rwa_calc.engine.classifier import ExposureClassifier
classifier = ExposureClassifier()
# Classify exposures
result = classifier.classify(
exposures=resolved_exposures,
config=CalculationConfig.crr(date(2026, 12, 31))
)
# Each exposure now has exposure_class assigned
Classification Hierarchy¶
flowchart TD
A[Counterparty] --> B{Is Defaulted?}
B -->|Yes| C[DEFAULTED]
B -->|No| D{Counterparty Type}
D -->|Government| E[CENTRAL_GOVT_CENTRAL_BANK]
D -->|Central Bank| E
D -->|Bank| F[INSTITUTION]
D -->|Investment Firm| F
D -->|Corporate| G{SME?}
G -->|Yes| H[CORPORATE_SME]
G -->|No| I{Large?}
I -->|Yes| J[CORPORATE]
I -->|No| J
D -->|Individual| K{Exposure Type}
K -->|Mortgage| L[RETAIL_MORTGAGE]
K -->|Revolving| M[RETAIL_QRRE]
K -->|Other| N[RETAIL_OTHER]
D -->|Project Entity| O[SPECIALISED_LENDING]
Key Classification Criteria¶
SME Definition¶
An entity is classified as SME if: - Annual turnover ≤ EUR 50m (GBP 44m), AND - Total assets ≤ EUR 43m (GBP 37.84m)
Retail Criteria¶
An exposure qualifies as retail if: - To an individual or small business - Part of a pool of similar exposures - Total exposure to borrower ≤ EUR 1m (CRR, FX-converted) or ≤ GBP 880k (Basel 3.1, fixed)
QRRE Criteria¶
Qualifying Revolving Retail Exposures: - Revolving, unsecured - To individuals - Maximum line ≤ EUR 100k (CRR) or ≤ GBP 90k (Basel 3.1, Art. 147(5A)(c)) - Unconditionally cancellable
Specialised Lending¶
Project/object/commodity finance where: - Repayment from asset cash flows - Lender has substantial control - Primary security is the financed asset
Default Indicators¶
An exposure is classified as defaulted when either Art. 178 limb is met:
- Limb (a) — Unlikeliness to pay (UTP) in full without recourse to realising security (Art. 178(1)(a)). UTP indicators (Art. 178(3)) include: non-accrual status; specific credit risk adjustment for credit-quality decline; sale at material credit-related economic loss; distressed restructuring; institution-filed bankruptcy; or obligor-sought bankruptcy protection.
- Limb (b) — 90 days past due on any material credit obligation (Art. 178(1)(b)). Materiality under PS1/26 is hardcoded: retail > GBP 0 / > 0%; non-retail > GBP 440 / > 1% (Art. 178(2)(d)/(da)). Under CRR, materiality is set by the competent authority.
Retail may apply the definition at the facility level; non-retail defaults at the obligor
level. The calculator consumes default status via the upstream is_defaulted boolean —
no DPD counter or UTP inference runs in-engine.
Full Treatment
See the Default Definition (Art. 178) specification for the complete two-limb trigger, DPD counting rules, suspension paragraphs (Art. 178(1A)–(1D)), the 3-month cure, and the 1-year distressed-restructuring probation (Art. 178(5A)–(5C)).
# Upstream assessment (not performed by the calculator)
facility = {
"is_defaulted": True, # set by obligor-monitoring system
# ... other fields
}
Treatment by Class¶
Capital Calculation¶
| Class | SA Risk Weight Range | IRB Availability |
|---|---|---|
| Central Govt / Central Bank | 0% - 150% | F-IRB, A-IRB |
| Institution | 20% - 150% | F-IRB, A-IRB* |
| Corporate | 20% - 150% | F-IRB, A-IRB* |
| Corporate SME | 20% - 150% (+ factor) | F-IRB, A-IRB |
| Retail | 35% - 75% | A-IRB only |
| Specialised Lending | 70% - 250% | Slotting |
| Equity | 100% - 400% | Simple/PD/LGD |
| Defaulted | 100% - 150% | IRB (100% PD) |
CRM Eligibility¶
| Class | Financial Collateral | Physical Collateral | Guarantees |
|---|---|---|---|
| Central Govt / Central Bank | |||
| Institution | |||
| Corporate | |||
| Retail | Limited | ||
| Specialised Lending |
Supporting Factor Eligibility¶
| Class | SME Factor (CRR) | Infrastructure Factor (CRR) |
|---|---|---|
| Corporate SME | ||
| Retail (SME) | ||
| Specialised Lending (Infra) | ||
| Other |
Implementation¶
Exposure Class Enum¶
from rwa_calc.domain.enums import ExposureClass
# Available classes
ExposureClass.CENTRAL_GOVT_CENTRAL_BANK
ExposureClass.INSTITUTION
ExposureClass.CORPORATE
ExposureClass.CORPORATE_SME
ExposureClass.RETAIL_MORTGAGE
ExposureClass.RETAIL_QRRE
ExposureClass.RETAIL_OTHER
ExposureClass.SPECIALISED_LENDING
ExposureClass.EQUITY
ExposureClass.DEFAULTED
ExposureClass.PSE
ExposureClass.MDB
ExposureClass.RGLA
ExposureClass.OTHER
Classification Configuration¶
from rwa_calc.contracts.config import CalculationConfig
config = CalculationConfig.crr(
reporting_date=date(2026, 12, 31),
# Thresholds converted from EUR
eur_gbp_rate=Decimal("0.88")
)
# SME threshold: EUR 50m → GBP 44m
# CRR retail threshold: EUR 1m → GBP ~880k (at 0.88 rate)
# Basel 3.1 uses fixed GBP 880k (Art. 123(1)(b)(ii))
Detailed Documentation¶
- Central Govt / Central Bank - Government and central bank exposures
- Institution - Bank and investment firm exposures
- Corporate - Corporate and SME exposures
- Retail - Retail mortgage, QRRE, and other retail
- Real Estate (B31) - Loan-splitting, income-producing, and ADC under Art. 124–124L
- CIU - Collective investment undertakings: look-through, mandate-based, and 1,250% fallback
- Covered Bonds - Eligible covered bonds under Art. 129
- Other Classes - Equity, PSE, MDB, and defaulted exposures