Skip to content

Specialised Lending

Specialised Lending exposures are those where repayment depends primarily on the cash flows generated by the financed assets rather than the independent capacity of the borrower. These exposures receive special treatment under both SA and IRB frameworks.

Overview

Specialised lending categories:

Category Abbreviation Description
Project Finance PF Financing of large, complex projects
Object Finance OF Financing of physical assets (ships, aircraft)
Commodities Finance CF Structured financing of commodities
Income-Producing Real Estate IPRE Real estate with rental/sale income
High Volatility Commercial Real Estate HVCRE Speculative CRE development

Slotting Approach

The Slotting Approach maps exposures to supervisory categories based on qualitative criteria, rather than estimating PD:

flowchart LR
    A[Exposure] --> B[Assess Criteria]
    B --> C{Map to Category}
    C --> D[Strong]
    C --> E[Good]
    C --> F[Satisfactory]
    C --> G[Weak]
    C --> H[Default]
    D --> I[Risk Weight]
    E --> I
    F --> I
    G --> I
    H --> J[RW = 0%]

Slotting Categories

Assessment Criteria

Each exposure is assessed against supervisory criteria:

Factor Strong Good Satisfactory Weak
Financial strength Excellent Good Acceptable Deteriorating
Political/legal Very low Low Acceptable High
Transaction characteristics Very favorable Favorable Acceptable Unfavorable
Asset strength Very strong Strong Adequate Weak
Sponsor strength Excellent Good Adequate Weak

Project Finance Criteria

Factor Strong Good Satisfactory Weak
Market conditions Few competing suppliers Few suppliers, demand stable Average Weak or declining
Financial ratios Strong coverage Good coverage Adequate Weak
Stress resilience Robust Good Limited Poor
Contractual arrangements Strong contracts Acceptable Some weaknesses Significant gaps
Reserve accounts Comprehensive Adequate Minimum Insufficient

IPRE Criteria

Factor Strong Good Satisfactory Weak
LTV <60% 60-75% 75-85% >85%
DSCR >1.35x 1.2-1.35x 1.0-1.2x <1.0x
Location Prime Good Acceptable Weak
Tenant quality Strong Adequate Variable Poor
Lease length Long-term Medium-term Short-term Month-to-month

Risk Weights

CRR Risk Weights

Under CRR Art. 153(5), risk weights are differentiated by HVCRE status and remaining maturity:

Non-HVCRE (PF, OF, CF, IPRE):

Category Maturity >= 2.5yr Maturity < 2.5yr
Strong 70% 50%
Good 90% 70%
Satisfactory 115% 115%
Weak 250% 250%
Default 0% 0%

HVCRE:

Category Maturity >= 2.5yr Maturity < 2.5yr
Strong 95% 70%
Good 120% 95%
Satisfactory 140% 140%
Weak 250% 250%
Default 0% 0%

Basel 3.1 Risk Weights

Basel 3.1 replaces the maturity-based split with three distinct tables:

Category Standard (Operational) PF Pre-Operational HVCRE
Strong 70% 80% 95%
Good 90% 100% 120%
Satisfactory 115% 120% 140%
Weak 250% 350% 250%
Default 0% 0% 0%

Basel 3.1 Project Finance Changes

Pre-operational project finance receives higher risk weights under Basel 3.1, reflecting the construction risk premium. Other non-HVCRE types use the same standard weights as CRR (at the >= 2.5yr maturity level).

Defaulted Exposures

Defaulted specialised lending exposures receive a 0% risk weight (RWA = 0). Expected loss treatment is handled separately via the provisions and EL comparison framework (see Provisions).

Calculation Example

Exposure: - IPRE loan, £20m - LTV: 65% - DSCR: 1.25x - Prime location - Strong tenant - Category assessment: Good - Non-HVCRE, maturity >= 2.5 years

CRR Calculation:

# Category: Good, Non-HVCRE, >= 2.5yr
Risk_Weight = 90%

# RWA
RWA = EAD × Risk_Weight
RWA = £20,000,000 × 90%
RWA = £18,000,000

Basel 3.1 Calculation:

# Standard (Operational) Good = 90% (same as CRR >= 2.5yr)
RWA = £20,000,000 × 90%
RWA = £18,000,000

SA Alternative

Specialised lending can also be treated under SA when the slotting approach is not used:

Type SA Treatment
Project Finance Corporate risk weights
Object Finance Corporate risk weights
Commodities Finance Corporate risk weights
IPRE CRE risk weights
HVCRE CRE risk weights

When to use SA vs Slotting:

Use SA when Use Slotting when
External rating available No PD estimate available
IRB not approved IRB approved for portfolio
Lower SA RW expected Specialized assessment needed

Implementation

Slotting Calculator

from rwa_calc.engine.slotting.calculator import SlottingCalculator
from rwa_calc.contracts.config import CalculationConfig

calculator = SlottingCalculator()

# calculate() takes a CRMAdjustedBundle and returns LazyFrameResult
result = calculator.calculate(
    data=crm_adjusted_bundle,
    config=CalculationConfig.crr(reporting_date=date(2026, 12, 31))
)

# result.frame is a LazyFrame, result.errors is list[CalculationError]
rwa_df = result.frame.collect()

For single-exposure calculations, build a single-row LazyFrame and call calculate_branch():

import polars as pl

df = pl.DataFrame({
    "exposure_reference": ["EX1"],
    "ead": [20_000_000.0],
    "slotting_category": ["good"],
    "is_hvcre": [False],
    "is_short_maturity": [False],
    "is_pre_operational": [False],
}).lazy()

result = calculator.calculate_branch(
    df, CalculationConfig.crr(reporting_date=date(2026, 12, 31))
).collect().to_dicts()[0]
# result["rwa"] -> 18_000_000.0

Risk Weight Lookup

from rwa_calc.data.tables.crr_slotting import lookup_slotting_rw
from rwa_calc.domain.enums import SlottingCategory

# Non-HVCRE, standard maturity (>= 2.5yr)
rw = lookup_slotting_rw(category=SlottingCategory.GOOD)
# Returns: Decimal('0.90')

# HVCRE
rw = lookup_slotting_rw(category=SlottingCategory.GOOD, is_hvcre=True)
# Returns: Decimal('1.20')

# Short maturity (< 2.5yr)
rw = lookup_slotting_rw(category=SlottingCategory.STRONG, is_short_maturity=True)
# Returns: Decimal('0.50')

Project Finance Detail

Pre-Operational Phase

Project is in construction or commissioning: - Construction risk present - Cash flows not yet established - Higher risk weights under Basel 3.1

Operational Phase

Project is generating cash flows: - Construction complete - Revenue stream established - Standard slotting weights apply

Phase Transition

# Basel 3.1 applies different weights for PF pre-operational
if framework == "BASEL_3_1" and lending_type == "PROJECT_FINANCE":
    if phase == "pre_operational":
        # Use higher pre-op weights
        weights = {"strong": 0.80, "good": 1.00, "satisfactory": 1.20, "weak": 3.50}
    else:
        # Use standard operational weights
        weights = {"strong": 0.70, "good": 0.90, "satisfactory": 1.15, "weak": 2.50}

HVCRE Treatment

High Volatility Commercial Real Estate receives higher risk weights due to: - Speculative development - No established cash flows - Higher correlation to economic cycles

HVCRE Criteria: - CRE development or land acquisition - Repayment from future sale or refinancing - Uncertain outcome

Risk Weight Comparison:

Category CRR Non-HVCRE (>=2.5yr) CRR HVCRE (>=2.5yr) Basel 3.1 HVCRE
Strong 70% 95% 95%
Good 90% 120% 120%
Satisfactory 115% 140% 140%
Weak 250% 250% 250%

Supporting Factors

Infrastructure project finance may qualify for the 0.75 infrastructure supporting factor under CRR (Art. 501a). This factor is applied by the SupportingFactorCalculator after slotting risk weights are determined, not within the slotting engine itself.

See Supporting Factors for eligibility criteria and application details.

Basel 3.1

Infrastructure factor is removed under Basel 3.1.

Regulatory References

Topic CRR Article BCBS CRE
Specialised lending definition Art. 147(8) CRE33.1
Slotting categories Art. 153(5) CRE33.2
Risk weights Art. 153(5) CRE33.3-4
HVCRE Art. 153(5) CRE33.5
Infrastructure factor Art. 501a N/A

Next Steps