Systemic Contagion Simulation 2026
Overview
Interactive Dash application that simulates systemic contagion risk by showing the cumulative total assets of critically undercapitalized U.S. banks. Banks are stress-tested using CRE default scenarios, and those with Adjusted Equity-to-Assets below 2% are identified as critically undercapitalized. Their total assets are sorted ascending and plotted cumulatively, revealing the scale of systemic exposure. Two historical reference lines provide context against the 2008 GFC and 2023 bank failures.
How It Works
Adjusted Equity-to-Assets Calculation
Each bank's adjusted capitalization ratio is computed as:
Adjusted Equity-to-Assets = (Total Equity - CRE Losses) / Total Assets
When the Unrealized Losses toggle is ON, unrealized securities losses are subtracted:
Adjusted Equity-to-Assets = (Total Equity - CRE Losses - Unrealized Losses) / Total Assets
Where:
CRE Losses = CRE Total x Default Rate x LGD
Unrealized losses are stored as positive values representing the magnitude of losses.
Critically Undercapitalized Filter
Banks with Adjusted Equity-to-Assets < 2% are classified as critically undercapitalized under the Prompt Corrective Action (PCA) framework.
Cumulative Aggregation
- Only critically undercapitalized banks (Adjusted Equity-to-Assets < 2%) are included
- Their total assets are sorted in ascending order (smallest to largest)
- A running cumulative sum is computed across these banks
- The result is plotted as a bar chart with banks on the x-axis and cumulative total assets ($M) on the y-axis
Reference Lines
Two horizontal reference lines provide historical context:
| Reference | Value | Description |
|---|---|---|
| 2008 GFC | $307B | Washington Mutual total assets |
| 2023 Bank Failures | $548B | SVB + Signature + First Republic combined total assets |
Controls
| Control | Range | Default | Description |
|---|---|---|---|
| CRE Default Rate | 0-50% | 10% | Percentage of CRE portfolio that defaults |
| Loss Given Default | 0-100% | 50% | Loss severity on defaulted loans |
| Total Assets | $10-100B | $10B | Minimum bank size filter |
| Unrealized Losses | ON/OFF | OFF | Include unrealized securities losses in stress calculation |
Display
Cumulative Total Assets Chart
A bar chart showing:
- X-axis: Critically undercapitalized banks sorted by total assets (ascending), fixed to max 147 banks
- Y-axis: Cumulative total assets in $M
- Red bars: Cumulative total assets of critically undercapitalized banks
- Purple reference lines: 2008 GFC ($307B Total Assets) and 2023 Bank Failures ($548B Total Assets)
Hover displays the bank index and cumulative total assets at that point.
A dynamic formula line above the chart shows the Adjusted Equity-to-Assets calculation and the < 2% filter threshold.
Data Source
The Banking Initiative at Florida Atlantic University — Q3 2025 FFIEC Call Reports.
Run Locally
pip install -r requirements.txt
python app.py
# Open http://localhost:8050
Customization
You can use this app with your own data by replacing the data.csv file. Your CSV must include the following columns in the same format:
| Column | Description | Example |
|---|---|---|
Ticker |
Stock ticker symbol (blank for non-public banks) | JPM |
Name |
Bank name | JPMORGAN CHASE BANK |
ST |
State abbreviation | NY |
Total Assets ($M) |
Total assets in millions | 3459261 |
Total Equity ($M) |
Total equity in millions | 312794 |
CRE Total ($M) |
Commercial real estate exposure in millions | 174381 |
CET1 Capital ($M) |
Common Equity Tier 1 capital in millions | 291288 |
Total Unrealized Loss ($M) |
Unrealized loss on investment securities in millions (positive values) | 1842 |
Price |
Latest stock closing price in dollars | 293.70 |
Volume |
Average 30-day trading volume | 44276127 |
Volatility |
30-day annualized volatility as percentage | 26.0 |