API Reference¶
This section provides complete API documentation for the RWA calculator modules.
Module Overview¶
| Module | Purpose |
|---|---|
| Service API | High-level facade: CreditRiskCalc, response models |
| Pipeline | Low-level orchestration and custom pipeline construction |
| Configuration | Configuration classes and factories |
| Engine | Calculation components |
| Contracts | Interfaces and data contracts |
| Domain | Enumerations and core types |
Quick Reference¶
Main Entry Point¶
from datetime import date
from rwa_calc.api import CreditRiskCalc
response = CreditRiskCalc(
data_path="/path/to/data",
framework="CRR",
reporting_date=date(2026, 12, 31),
permission_mode="irb",
).calculate()
if response.success:
print(f"Total RWA: {response.summary.total_rwa:,.0f}")
df = response.collect_results()
Pipeline API (Advanced)¶
For custom loaders or direct pipeline access:
from datetime import date
from rwa_calc.engine.pipeline import create_pipeline
from rwa_calc.contracts.config import CalculationConfig
pipeline = create_pipeline()
config = CalculationConfig.crr(reporting_date=date(2026, 12, 31))
result = pipeline.run(config)
Configuration¶
from rwa_calc.contracts.config import CalculationConfig
# CRR configuration
config = CalculationConfig.crr(
reporting_date=date(2026, 12, 31),
)
# Basel 3.1 configuration
config = CalculationConfig.basel_3_1(
reporting_date=date(2027, 1, 1),
)
Enumerations¶
from rwa_calc.domain.enums import (
RegulatoryFramework,
ExposureClass,
ApproachType,
CQS,
CollateralType,
)
Data Contracts¶
from rwa_calc.contracts.bundles import (
RawDataBundle,
ResolvedHierarchyBundle,
ClassifiedExposuresBundle,
CRMAdjustedBundle,
SAResultBundle,
IRBResultBundle,
SlottingResultBundle,
AggregatedResultBundle,
)
API Sections¶
- Service API - High-level facade (
CreditRiskCalc) - Pipeline API - Pipeline creation and execution
- Configuration API - Configuration classes
- Engine API - Calculation components
- Contracts API - Data contracts and protocols
- Domain API - Enumerations and types