Skip to content

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:

  1. Counterparty type - Legal entity classification
  2. Product type - Facility/loan characteristics
  3. Size - Turnover, exposure amounts
  4. 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