Risk Intelligence Dashboard¶
| ID | MOD-171 |
| System | SD06 |
| Repo | bank-risk-platform |
| Build status | Deployed |
| Deployed | Yes |
| Last commit | 54197c02fff0ca78a988e6140d31778e59f05b46 |
The Risk Intelligence Dashboard is the primary human interface for the CRO, CFO, Treasurer, and Risk team to monitor the bank's quantitative risk position across capital, liquidity, interest rate risk, stress testing, and model outputs. It is a Snowflake Streamlit application that reads exclusively from the published views of the SD06 risk modules — all computation stays in its owning module; this dashboard is a read-only aggregation layer.
Why it exists¶
Every SD06 risk module (MOD-032, MOD-033, MOD-035, MOD-039, MOD-086, MOD-098) builds excellent Snowflake models and published views. But the CRO cannot be expected to open Snowsight and write SQL to read LCR numbers before their 8am risk committee meeting. This module converts those views into a board-ready real-time dashboard. The operating principle: every figure the CRO sees in this dashboard is the same figure the models compute — no manual extracts, no spreadsheet intermediaries.
RAF summary¶
The landing page is the Risk Appetite Framework summary. Each configured RAF indicator appears as a gauge or traffic light:
- CET1 ratio — from MOD-033 V_CAPITAL_CURRENT; threshold from RAF config table
- LCR — from MOD-032 V_LCR_CURRENT
- NSFR — from MOD-032 V_NSFR_CURRENT
- EVE sensitivity (maximum shock scenario) — from MOD-035 published view
- Stress test capital headroom — from MOD-034 when deployed
- Related party exposure % — from MOD-147 when deployed
- Customer risk concentration — from MOD-039 high-risk segment share
A breach (indicator outside RAF threshold) highlights the card red and was already alerted by the owning module's Snowflake Alert. The dashboard makes the breach visible to the human at the same time.
Each indicator shows a 90-day sparkline. The board risk report is auto-generated monthly from this page's data via a scheduled Snowflake Task.
Capital deep-dive¶
Sourced from MOD-033. Shows CET1, Tier 1, Total Capital, and RWA broken down by exposure class (corporate, retail, sovereign, securitisation). Period-over-period comparison. Each row links back to the V_CAPITAL_BY_PORTFOLIO row via model_run_id — full lineage to individual loan positions if needed.
Liquidity dashboard¶
Sourced from MOD-032. Shows LCR (HQLA, total net cash outflows, ratio) and NSFR (available stable funding, required stable funding, ratio) for the current day and prior 30 days. Intraday exposure overlay when MOD-032's intraday extension is deployed.
IRRBB sensitivity dashboard¶
Sourced from MOD-035. Shows EVE and NII sensitivity under each standard interest rate shock scenario (+200bp, -200bp, +100bp, -100bp, twist, parallel). Scenario comparison chart. Period delta vs. prior month-end. Limit headroom for each scenario.
Risk metrics overview¶
A single page showing three panels: (1) customer risk score distribution histogram from MOD-039; (2) FTP rate table by product / tenor from MOD-086; (3) cost allocation pie by system domain from MOD-098. Each panel has a "drill down" link to the owning module's own Streamlit page for further detail.
Architecture¶
Pure Streamlit — no DCM tables, no Lambdas, no dbt models. The module deploys a single Streamlit object (RISK_INTELLIGENCE.STREAMLIT_RISK_DASHBOARD) into a new RISK_INTELLIGENCE schema in BANK_{ENV}_RISK. Cross-schema SELECT grants on each source module's published views are required (same pattern as ADR-064 published view contracts applied to Snowflake cross-schema reads). Each source module's migration must grant SELECT on its published views to RISK_INTELLIGENCE_ROLE.
SSM outputs: /bank/{env}/risk-platform/risk-intelligence/streamlit-url — the Streamlit app URL for use in the portal navigation and internal dashboards.
Module dependencies¶
Depends on¶
| Module | Title | Required? | Contract | Reason |
|---|---|---|---|---|
| MOD-032 | LCR / NSFR calculator | Required | — | LCR and NSFR published views are the primary data source for the liquidity dashboard page (FR-811). |
| MOD-033 | RWA & capital ratio engine | Required | — | Capital adequacy published views (V_CAPITAL_CURRENT, V_CAPITAL_BY_PORTFOLIO) are the primary data source for the capital deep-dive page (FR-810). |
| MOD-034 | Stress testing scenario engine | Optional | — | Stress test scenario results are shown in the RAF summary and IRRBB page when MOD-034 is deployed. |
| MOD-035 | IRRBB / EVE / NII model | Required | — | IRRBB EVE and NII sensitivity published views are the primary data source for the IRRBB sensitivity page (FR-812). |
| MOD-039 | Customer risk score model | Required | — | Customer risk score distribution published view is displayed in the risk metrics overview (FR-813). |
| MOD-085 | Market rates ingestion & normalisation | Optional | — | Market rates published view provides context for the IRRBB page when deployed. |
| MOD-086 | Funds transfer pricing engine | Required | — | FTP rate table by product and tenor is displayed in the risk metrics overview (FR-813). |
| MOD-098 | Cost attribution engine | Required | — | Cost attribution by system domain is displayed in the risk metrics overview (FR-813). |
| MOD-102 | Snowflake account configuration & governance | Required | — | Snowflake account, RISK database, and governance provisioned by MOD-102 must exist before this module can create its Streamlit app and read published views. |
| MOD-104 | AWS shared infrastructure bootstrap | Required | — | AWS shared infrastructure required before this module can be deployed. |
Required by¶
| Module | Title | As | Contract |
|---|---|---|---|
| MOD-032 | LCR / NSFR calculator | Hard dependency | — |
| MOD-033 | RWA & capital ratio engine | Hard dependency | — |
| MOD-035 | IRRBB / EVE / NII model | Hard dependency | — |
| MOD-039 | Customer risk score model | Hard dependency | — |
| MOD-085 | Market rates ingestion & normalisation | Hard dependency | — |
| MOD-086 | Funds transfer pricing engine | Hard dependency | — |
| MOD-098 | Cost attribution engine | Hard dependency | — |
| MOD-177 | SD06 risk dashboard renderer | Hard dependency | — |
Policies satisfied¶
| Policy | Title | Mode | How |
|---|---|---|---|
| GOV-002 | Risk Appetite Statement Policy | CALC |
The RAF summary page continuously computes all configured risk appetite indicators (CET1, LCR, NSFR, EVE, stress headroom, related party exposure) from SD06 published views and displays them against board-approved thresholds — the dashboard IS the Risk Appetite Framework reporting required by GOV-002. |
| REP-002 | Prudential Reporting Policy | LOG |
Every metric shown in the dashboard is sourced from a published view with full model_run_id lineage, satisfying the prudential reporting data lineage LOG requirement — no figure is computed outside its owning module. |
| DT-005 | Model Risk Management Policy | LOG |
Model performance indicators (accuracy, PSI, drift alerts) for all deployed SD06 quantitative models are surfaced in the risk metrics overview, maintaining the model inventory and monitoring visibility required by DT-005. |
Capabilities satisfied¶
(No capabilities mapped)
Part of SD06 — Snowflake Analytics & Risk Platform
Compiled 2026-05-22 from source/entities/modules/MOD-171.yaml