Skip to content

Overview

Product

Field Value
Product rwa-calc
Version 0.1.37 (Pre-Release)
Author OpenAfterHours
License Apache 2.0

Executive Summary

The RWA Calculator is a Python-based regulatory capital engine that computes Risk-Weighted Assets (RWA) for credit risk under the UK implementation of the Basel framework. It supports both the current CRR regime (Basel 3.0, effective until 31 Dec 2026) and the forthcoming Basel 3.1 rules (PRA PS1/26, effective 1 Jan 2027) from a single codebase.

The product targets UK-regulated banks, building societies, and risk technology teams who need a transparent, auditable, and performant RWA calculation engine — whether for production use, parallel runs, regulatory impact analysis, or educational purposes.

Problem Statement

UK credit institutions face a major regulatory transition: migrating from CRR (EU 575/2013 as onshored) to Basel 3.1 (PRA PS1/26) by 1 January 2027. Key pain points:

  • Dual-regime operation: Firms must run CRR and Basel 3.1 in parallel during the transition period
  • Opacity of vendor solutions: Commercial RWA engines are black-box systems with limited auditability
  • Regulatory complexity: 14 exposure classes, 4 calculation approaches, CRM, supporting factors, output floors
  • Performance at scale: Calculations must complete in seconds for hundreds of thousands to millions of exposures

Target Users

Persona Role Needs
Credit Risk Analyst Day-to-day RWA reporting, scenario analysis Accurate calculations, clear audit trail, what-if capability
Risk Model Developer Building, validating IRB models Transparent IRB formulas, configurable PD/LGD/EAD inputs
Regulatory Capital Manager Capital planning, ICAAP, stress testing Dual-framework comparison, transitional schedule modelling
Risk Technology Engineer Integrating RWA into firm infrastructure Python API, documented contracts, performance guarantees
Internal Auditor Validating RWA methodology Full regulatory traceability, pre/post-CRM breakdowns
Student / Educator Learning Basel credit risk Interactive workbooks, hand-calculated reference scenarios

Scope

In Scope

Area Description
Credit Risk RWA SA, F-IRB, A-IRB, Slotting, Equity
Regulatory Frameworks UK CRR (Basel 3.0) and UK Basel 3.1 (PRA PS1/26)
Credit Risk Mitigation Collateral (9 types), guarantees (substitution), provisions (drawn-first SA, EL shortfall IRB)
Supporting Factors CRR SME tiered factor (0.7619/0.85), infrastructure factor (0.75)
Output Floor Basel 3.1 output floor with transitional phase-in (50%–72.5%, 2027–2032)
Multi-Currency FX conversion with haircut adjustments
Hierarchies Multi-level counterparty (10 levels, rating inheritance) and facility hierarchies
COREP Reporting C 07.00 (SA), C 08.01 (IRB totals), C 08.02 (IRB PD grade) templates
Interfaces Python API, Marimo web UI, CLI

Out of Scope

Market Risk (FRTB), Operational Risk, CVA Risk, Securitisation, Large Exposures, Leverage Ratio, Database integration, Authentication/Multi-tenancy.

Technology Stack

Component Technology Version
Language Python 3.13+
DataFrame Engine Polars 1.0+
Statistical Functions polars-normal-stats 0.2+
Excel Export fastexcel 0.19+
Web UI Marimo
Documentation Zensical
Testing Pytest + pytest-benchmark
Linting Ruff
Type Checking Mypy
Package Manager UV