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 --> 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 ✅ ✅
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 (GBP 880k)

QRRE Criteria

Qualifying Revolving Retail Exposures: - Revolving, unsecured - To individuals - Maximum line ≤ EUR 100k - 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 if: - Past due > 90 days on material amount - Unlikely to pay in full - Subject to distressed restructuring - Bankruptcy/insolvency proceedings - Non-accrual status

# Default check
if (days_past_due > 90 and past_due_amount > materiality_threshold) or
   unlikely_to_pay or
   distressed_restructuring:
    exposure_class = ExposureClass.DEFAULTED

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
# Retail threshold: EUR 1m → GBP 880k

Detailed Documentation