# 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 1. Only critically undercapitalized banks (Adjusted Equity-to-Assets < 2%) are included 2. Their total assets are **sorted in ascending order** (smallest to largest) 3. A **running cumulative sum** is computed across these banks 4. 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](https://business.fau.edu/departments/finance/banking-initiative/) — Q3 2025 FFIEC Call Reports. ## Run Locally ```bash 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` |