{ "cells": [ { "cell_type": "markdown", "id": "4777cf60", "metadata": {}, "source": [ "# Risk Decomposition via PCA\n", "\n", "## Purpose\n", "\n", "The backtest in the previous notebook tells us whether the strategy makes money. This notebook will tell us where its risk comes from. \n", "\n", "Portfolio risk is the quadratic form\n", "$$ \\langle \\Sigma w, w \\rangle = w^T \\Sigma w $$\n", "where $\\Sigma$ is the $N \\times N$ covariance matrix and $w$ is our vector of weights. We use the eigendecomposition of $\\Sigma$ to split the quadratic form into systematic (factor-driven) and idiosyncratic (stock-specific) components.\n", "\n", "The main goals are the following.\n", "1. To compute the sample covariance matrix $\\Sigma = \\frac{1}{T-1}X_c^T X_c$.\n", "2. To use PCA on $\\Sigma$ using `sklearn.decomposition.PCA` (which is really an eigendecomposition $\\Sigma = V\\Lambda V^T$ under the hood).\n", "3. To apply the Marchenko-Pastur cutoff from random matrix theory to separate signal eigenvalues from noise.\n", "4. To implement Ledoit-Wolf shrinkage (a convex combination of sample and structured covariance) and show it improves out-of-sample estimation.\n", "5. To decompose the portfolio's variance $\\langle \\Sigma w, w \\rangle$ into the factor subspace and its orthogonal complement. \n", "\n", "### Terms used in this notebook\n", "\n", "| Term | Meaning |\n", "|------|---------|\n", "| **Covariance matrix** $\\Sigma$ | $N \\times N$ symmetric PSD matrix; $\\Sigma_{ij} = \\mathrm{Cov}(r_i, r_j)$ |\n", "| **PCA (principal component analysis)** | Eigendecomposition of $\\Sigma$; eigenvectors = principal components, eigenvalues = explained variances |\n", "| **Scree plot** | Eigenvalues in decreasing order — visualizes the spectrum |\n", "| **Marchenko–Pastur distribution** | Limiting eigenvalue law of a random covariance matrix; gives an objective noise cutoff |\n", "| **Shrinkage estimator** | $\\hat\\Sigma = \\delta \\mathbf{F} + (1-\\delta)\\mathbf{S}$ — convex combination of sample $\\mathbf{S}$ and structured target $\\mathbf{F}$ |\n", "| **Risk model** | Low-rank + diagonal split $\\Sigma \\approx B\\Sigma_f B^\\top + D$ |\n", "| **Systematic risk** | Variance explained by common factors (the low-rank part $B\\Sigma_f B^\\top$) |\n", "| **Idiosyncratic risk** | Stock-specific variance (the diagonal part $D$) |\n", "| **Portfolio variance** | The quadratic form $w^\\top \\Sigma w$ being decomposed |\n", "| **Beta** ↻ | Factor loadings reappear as the coordinates $B$ |\n", "| **Portfolio weights** ↻ | The weight vector $w$ whose risk $w^\\top \\Sigma w$ we decompose |\n", "\n", "## Outputs\n", "\n", "Eigenvalue spectrum with Marchenko–Pastur overlay, Ledoit–Wolf shrinkage comparison, and a portfolio variance decomposition table.\n", "\n", "## Notebook Structure\n", "1. [Setup and Imports](#setup-and-imports)\n", "2. [Load Data](#load-data)\n", "3. [Sample Covariance and PCA](#sample-covariance-and-pca)\n", "4. [Marchenko–Pastur Noise Separation](#marchenkopastur-noise-separation)\n", "5. [Ledoit–Wolf Shrinkage](#ledoitwolf-shrinkage)\n", "6. [Portfolio Variance Decomposition](#portfolio-variance-decomposition)\n", "7. [Conclusion](#conclusion)" ] }, { "cell_type": "markdown", "id": "08545070", "metadata": {}, "source": [ "## Setup and Imports" ] }, { "cell_type": "code", "execution_count": 1, "id": "4f9e782b", "metadata": {}, "outputs": [], "source": [ "\"\"\"\n", "==================================\n", "Setup and imports\n", "==================================\n", "\"\"\"\n", "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "import os\n", "from sklearn.decomposition import PCA\n", "\n", "pd.set_option('display.max_columns', None)\n", "pd.set_option('display.max_rows', 100)\n", "\n", "palette = ['steelblue', 'coral', 'seagreen']\n", "\n", "os.makedirs('../data/processed', exist_ok=True)\n", "os.makedirs('../images/05_risk_decomposition', exist_ok=True)\n", "\n", "RANDOM_STATE = 3" ] }, { "cell_type": "code", "execution_count": 2, "id": "e1c87a97", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Returns: (251, 501)\n", "Backtest: (239, 5)\n" ] } ], "source": [ "\"\"\"\n", "==================================\n", "Load returns and backtest holdings\n", "==================================\n", "\"\"\"\n", "df_returns = pd.read_csv('../data/processed/returns_monthly.csv', index_col=0, parse_dates=True)\n", "df_backtest = pd.read_csv('../data/processed/backtest_returns.csv', index_col=0, parse_dates=True)\n", "\n", "print(f\"Returns: {df_returns.shape}\")\n", "print(f\"Backtest: {df_backtest.shape}\")" ] }, { "cell_type": "markdown", "id": "858ea555", "metadata": {}, "source": [ "## Sample Covariance and PCA\n", "\n", "Given the centered return matrix $\\mathbf{X}_c \\in \\mathbb{R}^{T \\times N}$ (each row demeaned), the **sample covariance matrix** is:\n", "\n", "$$\\Sigma = \\frac{1}{T-1} \\mathbf{X}_c^\\top \\mathbf{X}_c.$$\n", "\n", "This is an $N \\times N$ symmetric positive-semidefinite matrix. **PCA** is its eigendecomposition:\n", "\n", "$$\\Sigma = \\mathbf{V} \\Lambda \\mathbf{V}^\\top, \\quad \\Lambda = \\text{diag}(\\lambda_1 \\geq \\lambda_2 \\geq \\dots \\geq \\lambda_N).$$\n", "\n", "The columns of $\\mathbf{V}$ are the **principal components** (directions of maximum variance, in decreasing order); the eigenvalues $\\lambda_i$ are the **explained variances**.\n", "\n", "Under the hood, `sklearn.decomposition.PCA` computes this via SVD of $\\mathbf{X}_c = \\mathbf{U}\\mathbf{S}\\mathbf{V}^\\top$, which gives $\\Sigma = \\frac{1}{T-1}\\mathbf{V}\\mathbf{S}^2\\mathbf{V}^\\top$ with eigenvalues $\\lambda_i = s_i^2/(T-1)$. We delegate the numerics to sklearn and keep the eigenvalues/eigenvectors for the Marchenko–Pastur and variance decomposition analyses below." ] }, { "cell_type": "code", "execution_count": 3, "id": "1600d228", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of assets: 394\n", "Number of observations: 240\n", "\n", "Top 10 eigenvalues:\n", " PC1: 1.048239 (34.10%)\n", " PC2: 0.112295 (3.65%)\n", " PC3: 0.104251 (3.39%)\n", " PC4: 0.092663 (3.01%)\n", " PC5: 0.071925 (2.34%)\n", " PC6: 0.057767 (1.88%)\n", " PC7: 0.053078 (1.73%)\n", " PC8: 0.047010 (1.53%)\n", " PC9: 0.041681 (1.36%)\n", " PC10: 0.040488 (1.32%)\n" ] } ], "source": [ "\"\"\"\n", "==================================\n", "PCA via sklearn\n", "==================================\n", "\"\"\"\n", "# Use a balanced panel: keep stocks present for most of the sample, then use\n", "# the months where all of them coexist. thresh must be high — a low thresh admits\n", "# short-history stocks, and the chained dropna() then truncates EVERY stock to that\n", "# short window (e.g. thresh=60 collapses the panel to 60 months, leaving N >> T and a\n", "# rank-deficient covariance). Maximizing observations matters most here.\n", "valid = df_returns.dropna(thresh=240, axis=1).dropna()\n", "X = valid.values\n", "X_centered = X - X.mean(axis=0)\n", "\n", "n_obs, n_assets = X_centered.shape\n", "\n", "# Sample covariance\n", "cov = np.cov(X_centered, rowvar=False, ddof=1)\n", "\n", "# sklearn PCA — fits on the centered data\n", "pca = PCA()\n", "pca.fit(X_centered)\n", "\n", "# Build the same result dict so downstream cells are unchanged\n", "pca_result = {\n", " 'eigenvalues': pca.explained_variance_,\n", " 'eigenvectors': pca.components_.T, # sklearn returns (k x N); we want (N x k)\n", " 'explained_ratio': pca.explained_variance_ratio_,\n", " 'tickers': valid.columns.tolist(),\n", " 'n_obs': n_obs,\n", " 'n_assets': n_assets,\n", " 'cov': cov,\n", "}\n", "\n", "print(f\"Number of assets: {pca_result['n_assets']}\")\n", "print(f\"Number of observations: {pca_result['n_obs']}\")\n", "print(f\"\\nTop 10 eigenvalues:\")\n", "for i, ev in enumerate(pca_result['eigenvalues'][:10]):\n", " print(f\" PC{i+1}: {ev:.6f} ({pca_result['explained_ratio'][i]*100:.2f}%)\")" ] }, { "cell_type": "code", "execution_count": 4, "id": "337d202b", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABW0AAAHqCAYAAAB/bWzAAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjExLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlcelbwAAAAlwSFlzAAAPYQAAD2EBqD+naQAA3PtJREFUeJzs3Xd8U9X7B/BP0ozuFtpCgbbsjbKXlL0EARkyZMrwC3wBRfg6UERQERDXD1FQQfZSCyKgDFkCAgIyhbIrLVC66KZpknt+f6QJhA7SNs1t08/79cqrybnn3vskpw03DyfPUQghBIiIiIiIiIiIiIioWFDKHQARERERERERERERPcSkLREREREREREREVExwqQtERERERERERERUTHCpC0RERERERERERFRMcKkLREREREREREREVExwqQtERERERERERERUTHCpC0RERERERERERFRMcKkLREREREREREREVExwqQtERERERERERERUTHCpC1RCaBQKDBz5ky5wyhSpeE5Fidr166FQqFAeHi4w865ZcsWeHp6IjY2Nl/7TZ48Gb6+vkUWFz00ZcoUtG7dWu4wiIiISoTExEQoFAp88sknJeK4xV1hnndxeM08PT0xefJk2c6fEzmu+YnIfpi0JZKJr68vFApFjregoCC5wytV7t+/j1mzZqFBgwbw8vJCYGAgOnTogG+//Rapqalyh5cv27dvt/pdcnFxQUBAAJ5//nmcOnXKLudYtmwZFAoFrl27ZvM+mZmZeOONN/DKK68gICAg13gfvTVo0MAu8eZk3Lhx8Pf3t7m/+YI3p9vhw4ez9Y+OjsZLL72EgIAAuLm5oXnz5ti6datN55o5c6bV8dVqNUJCQjBu3DjcuXMnW/+TJ09ixIgRqFKlClxdXREQEIBmzZrh3Xffxa1bt2x+jgDwzjvv4OzZs9iwYUO+9iMiIsqvBw8e4IsvvkBoaCjKlCkDNzc31KhRA3369MGWLVtgMBjkDrFIRUdHQ6FQ4IsvvpA7FCu5Xe8U9bVZafDDDz9AoVBgyZIlufb5999/oVQqMXbsWIfGRkTFE5O2RDLq3LkzhBDZblFRUVb9hBD48MMPZYvTmaWlpaF169ZYtmwZPvzwQ9y6dQsXL17EgAED8L///a/YXUjbasWKFRBCICMjA9u3b8e1a9fQrl07XLx4UZZ4fvjhB9y4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B860JSqhhgwZgsOHD6Nt27YIDAzE9OnTMXToUOzYscNuCx0REREREREREZHjsaYtERERERERERERUTHC6XhERERERERERERExQiTtkRERERERERERETFSKlciEySJNy5cwdeXl5QKBRyh0NEREREORBCICUlBRUrVizV9dp57UpERERU/Nn72rVUJm3v3LmD4OBgucMgIiIiIhtERkYiKChI7jBkw2tXIiIiopLDXteupTJp6+XlBWS9iN7e3vneX5IkxMbGIiAgoFTP+nAWHE/nwbF0HhxL58GxdB5yjGVycjKCg4Mt126lVWGvXW3Fv1fnxHF1ThxX58RxdU4cV+f1+Nja+9q1VCZtzV8r8/b2LnDSNiMjA97e3vyDcwIcT+fBsXQeHEvnwbF0HnKOZWkvCVDYa1db8e/VOXFcnRPH1TlxXJ0Tx9V55Ta29rp25W8LERERERERERERUTHCpC0RERERERERERFRMcKkLREREREREREREVExUipr2hIRERERORuj0Qi9Xl/g/SVJgl6vR0ZGBmvuORFbxlWtVsPFxcXhsREREVHumLQlIiIiIirBhBCIjo5GYmJioY8jSRJSUlJK/eJvzsTWcfX19UVgYCDHnoiIqJhg0paIiIiIqAQzJ2zLlSsHd3f3AifdhBAwGAxQqVRM3DmRJ42rEALp6emIiYkBAFSoUEGGKImIiOhxTNoSEREREZVQRqPRkrD18/Mr1LGYtHVOtoyrm5sbACAmJgblypVjqQQiIqJigMWqiIiIiIhKKHMNW3d3d7lDoRLO/DtUmLrIREREZD9M2hIRERERlXCcGUuFxd8hIiKi4oVJWyIiIiIioiJgMBhw4cIFZGZmyh0KERERlTBM2hIRERERkSyEEIiMjER0dHSe/aKiovDvv//muV2n02Vr1+l0CA8Pt0usBREdHY2nnnoKN27ckC0GIiIiKpmYtC1iRkngbEQ89l+4jbMR8TBKQu6QiIiIiKiALly4gEmTJsHPzw9Nmza1aZ+YmBgMHToU/v7+qFixIqZMmYIHDx4UeazF3erVq1G+fHm0bt0adevWRWhoKKKioqz63LhxA02bNkXdunXRsGFDNGjQABcvXrRsT0tLQ9u2bdG8eXNUrFgR+/fvt9p/xowZWLFihcOe0+PUajXq168PrVYrWwxERERUMjFpW4QOX7qLkYv24Y01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rdo001an50xbIiIiIke4c+cOIiMjERgYiODgYCj5tfjS5cY54Mw+AAqg938BlVruiIiIiIhyVKCk7e7duzF06FDEx8fnuF0IUdi4SgWNpTwCZ9oSERERFaVjx45hypQpOHnypKWtRo0a+Oyzz9C7d29ZYyMH0euA7UtN95t3B0LqyB0RERERUa4KNLVg6tSpGDduHBISEiCEyHYj22jUppefM22JiIiIik50dDS6deuG+vXr48SJE4iOjsb58+fxwgsvoH///laJXHJihzcDCXcBr7JA5+FyR0NERESUpwLNtP3333/x7rvvwsPDw/4RlSIaLkRGREREVOR27dqFhg0bYuXKlZa28uXLY968eYiNjUVYWBiaNWsma4xUxBLuAoe3mO4/OxZw5ecYIiIiKt4KNNO2Tp06iIiIsH80pYw2ayEyHcsjEBERERUZLy8vBAUF5bgtODgY3t7eDo+JHOy35YBRD1RrCNRrLXc0RERERE9UoKTtxIkTMWrUKOzfvx+RkZGIioqyupFtLDNtWR6BiIiIqMiEhobizz//xPHjx63ab968iTVr1uDZZ5+VLTZygMsngKunAKUK6DEOUCjkjoiIiIjoiQpUHuHll18GAHTq1CnH7axraxut2pS05UxbIiIioqJz5swZuLm5oXXr1mjatCmCgoIQFxeHY8eOISAgAAsWLLD07d69O0aPHi1rvGRHeh3w2zLT/Wf6AAE5z7gmIiIiKm4KlLS9dOmS/SMphTRZ5RFY05aIiIio6KjVaoSGhiI0NNTS5ufnh9q1a2frq9VqHRwdFanDm4HEGMDbD2g3UO5oiIiIiGxWoKRtnTp17B9JKaS1LETGmbZERERERaVjx47o2LGj3GGQoz26+Fj3MYDGVe6IiIiIiGxWoJq2AJCWloatW7fi888/t7RduXKFpRHyQWMuj8CatkRERERFZteuXTh79myO206cOIFFixY5PCZyAC4+RkRERCVYgZK2V65cQf369TF+/HhMmzbN0v7BBx9g06ZN9ozPqWlZHoGIiIioyCUkJKBly5b47LPPLBMMjEYj5s6dizZt2kDBhamcz9VTDxcf6/kyFx8jIiKiEqdASdupU6di0KBBuHv3rlX7q6++ik8++cResTk9c01bnZ7lEYiIiIiKyosvvog1a9bgww8/RPfu3XH06FF06NAB//d//4ewsDBMmTJF7hDJnowGYNdK0/2WzwH+leSOiIiIiCjfClTT9ujRo1i/fn22WQl16tTB+fPn7RWb0zOXR+BMWyIiIqKiNXDgQLRq1Qrt2rXDM888g2bNmuHcuXMIDAyUOzSyt5O7gLgowN2bi48RERFRiVWgmbaSJCEzMxMArBK3ERER8PHxsV90Ts68EJmOSVsiIiKiIpWcnIx33nkH0dHR6Nu3L86ePYvly5fDaOR1mFNJTwH2bzTd7/gi4OYhd0REREREBVKgpG3Xrl0tZRDMSdu4uDi88sorePbZZ+0boRMzl0fIZHkEIiIioiJz4cIFNGrUCGfPnsXJkyexZcsW/Pzzz1i0aBE6dOiAiIgIuUMkezm4CchIBcqFAE26yh0NERERUYEVKGn76aef4scff0TdunUhhEDHjh1RtWpVREREYP78+faP0klpWR6BiIiIqMj98ccf6NOnD/766y/Ur18fANCzZ0+cP38ePj4+XJPBWcRGAn/9ZrrffTTg4iJ3REREREQFVqCatpUrV8a5c+ewdu1anDx5EpIkoX///hg1ahS8vb3tH6WT0qjMSVvOtCUiIiIqKmPGjIGrq2u29nLlymH79u24fPmyLHGRne1eBQgJqNUcqN5I7miIiIiICqVASVsA8PLywsSJE+0bTSmjVZsmOrOmLREREVHRySlha5aRkYGgoCCHxkNF4OrfwNVTgFIFdH9J7miIiIiICq1ASdszZ87kuk2r1SIkJAQeHiz6/ySWmbasaUtERERkd99++y0uX76MTz/9FACwdetWREZGYvLkyZY+y5YtQ3h4OBYvXixjpFQokhHYs8p0v2VPwK+i3BERERERFVqBkraNGzfOc7uLiwsGDRqEZcuWwd3dvaCxOT3zQmScaUtERERkf5mZmdDpdJbHkZGRCA8PlzUmKgLnDwExtwBXD6DdQLmjISIiIrKLAi1E9t1336F27drYvHkzIiIi8O+//yIsLAw1a9bEl19+iR07duDMmTN455137B+xE3k405ZJWyIiIiKifDPogf0bTffb9APcPOWOiIiIiMguCjTT9v/+7//www8/4Omnn7a0hYSEoHr16hgxYgTOnTuHlStXYsiQIfj888/tGa9T0apNSVuDJGCUBFyUCrlDIiIiIiIqOf7eAyTeAzzLAC17yR0NERERkd0UaKbttWvXclywISgoCNeuXQMA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IZSYUqGAWqVEid6A4lKD1OEQERER2Y3t27dj1apVSExMRE5ODkaNGmV2f35+PmJiYrBp0ybJYmzwhABit5R9320o4KCWOiIiIiIiWWDRVga06rKibVEJNyMjIiIishVXV1e0aNECmZmZEEKgRYsWZve7u7vjpZdewtChQyWLscFLSgBuXAYcNEDXQVJHQ0RERCQbLNrKgMZBBaAUxaUs2hIRERHZSu/evdG7d28cOXIEt2/fxrBhw6QOie52eGvZ1459ABd3qaMhIiIikg0WbWVAW74ZWRHHIxARERHZXPfu3aUOgSqTdQtIOFz2/QOPSB0NERERkaywaCsDalXZZmTFHI9AREREVGvi4uJw8uRJpKenQwhhOt6pUyf07dtX0tgapCM/AcIAtIoAmgRIHQ0RERGRrLBoKwN/dtqyaEtERERUG1577TV89tlncHd3h16vh1KpxO3bt+Hh4YE33niDRdu6pi8F/thb9n13zhQmIiIiuptS6gAI0DgYO205HoGIiIjI1k6dOoW1a9ciISEBc+fOxYQJE5CWlobt27fDwcEB48ePlzrEhufCcSAvG3DxANp0lToaIiIiItlh0VYG2GlLREREVHtOnjyJYcOGISgoCCqVCsXFxQCAoUOHYvLkydiwYYPUITY8J/eUfe3YF1Dxw39EREREd2PRVgY0DmVF22JuREZERERkczqdDo0aNQIA+Pr6IikpyXRf48aNcfv2bQmja4Bys4Dzx8q+79xf6miIiIiIZIlFWxnQGscjsNOWiIiIqFb17NkTBw4cwKpVq7B582asWLECERERUofVsJz+DTDoAb/WgG9LqaMhIiIikiV+FkkGNMbxCJxpS0RERGRzDz74INq1awcA8PPzw6effoq//e1vyM7Oxvjx4zFx4kSpQ2xYTpSPRug8QOpIiIiIiGSLRVsZYKctERERUe3p0qWL2e2nnnoKTz31FIQQUCgUksXVIKVeBW5dLZtjGxYldTREREREssXxCDJgnGlbVMKiLREREVFdYcFWAvEHyr627gw4uUodDREREZFssdNWBjSmTluORyAiIiKyhW3btmH58uVWrY2Ojsb06dNrPaYGTwggLqbs+1B22RIRERFVh0VbGdAaZ9pyPAIRERGRTXh4eKB169ZWrfXx8an1eAjAzUQg4wbgoAHadZM6GiIiIiJZY9FWBozjEYo5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IiIiIpIRthASERERERERERERyQiLtkREREREREREREQywqItERERERERERERkYywaEtEREREREREREQkIyzaEhEREREREREREckIi7ZEREREREREREREMsKiLREREREREREREZGMsGhLRHZt3759OHnypOzPWZvnJSIiIiKylZKSEqxfvx6ZmZlSh1JBYmIiNm/ejC1btkgdChHRfXOQOgAiImtcunQJR48eBQAolUo0a9YMERERcHd3r/ZxCxcuRFhYGDp16mSzWGrjnDU5b2lpKU6cOIHr16/D19cXoaGhaNSokU1jsSe//vorvLy80LFjR6lDISIiIrpvmzZtgsFgwJgxY6BQKEzHT5w4gYyMDAwYMKBWnz8vLw8TJkzA0aNHERkZWavPVRPffvstpk6digEDBqBFixYYPnx4hTWbNm1CSUkJAMDV1RVt27ZF27ZtK6zT6XQ4duwYdDodAgMD0aFDB2g0mjp5HURERizaElG98Msvv+D555/H2LFjIYRAQkICrl+/jrVr12LUqFFVPq5v377w9/e3aSy1cU5rbdy4EbNmzYKjoyM6duyI9PR0XL58GY8++iiWLVsmSUxy9+677yIyMpJFWyIiIrILTz75JPLy8vDVV19h0qRJpuPr1q3DsWPHar1oK1dr1qzBjBkzsGjRoirXPPnkk2jXrh3atGkDnU6Hffv2YfDgwdiwYQMcHBxQWlqK//u//8Nnn32GsLAw+Pn5ISkpCVlZWXjnnXcwceLEOn1NRNSwsWhLRPWGWq3G+vXrTbenTp2Kp556CtHR0di3bx+aNGmCpk2b4vDhw3B1dUWfPn3Qs2dPeHh4mB6ze/duNGnSBC1atMCJEycAAD169ICTk5PZcwkhcPz4cVy/fh0dO3ZEUFCQ6b6qztmsWTOcPHkSQgj07t3b7Lfxhw8fRmJiIhQKBby9vdGpUyc0bty4Rq//hx9+wLhx4/D5559j+vTppuPFxcX497//bba2qKgIBw8eRHZ2Njp27IhWrVqZ3W+M2c/PDydPnoRer0fv3r2h1WqRlpaG2NhYeHp6omfPnlCpVDV6rTV5fkt5MBgMOHbsGFJSUhAcHIzw8PAanefQoUNITU1FQkKC6e/O8OHD4eLiUqM/eyIiIiI5adWqFd566y2MHTsWWq22wv25ubnYunVrheueDRs2oHfv3mjatClKSkqwadMmDB48GFlZWYiPj0fTpk1N3bMJCQk4f/482rVrh5CQkErjuHz5Ms6cOQM/Pz906dKlwv15eXk4dOgQSkpK0LFjRzRv3tx0353Pf+vWLcTHxyM8PBxt2rSp9LmM16gODg548MEHza7H169fj/Pnz8PT0xPr169Hhw4dqvyF/VNPPYWZM2cCAP744w907doVa9aswXPPPYfp06djy5Yt2L9/v9nruXnzJvbv32+6rdfrcfjwYWRkZCAsLAyBgYGVPhcR0f1g0ZaI6q2RI0fiiy++wNWrVzFv3jwoFApcu3YN4eHh6NWrF/r06VNh5MC8efOgVCqRkpKCkJAQnDt3Digvqnp5eQEArl+/jlGjRiE5ORldunTBuXPnMGXKFMydOxeoZIyB8bkTExMRHh6OM2fOwNXVFXv37oWvry8A4Pjx49i3bx8A4MaNGzh+/DhWrVqFCRMmWP16X3/9dQwfPtysYAsAGo0Gzz77rOl2QkIChgwZAkdHRwQEBODAgQP461//isWLF5vWzJs3DyUlJbhx4wY6duyIP/74A66urnj55Zfx3nvvISwsDL///js6deqEn376yexxll6rtc9vKQ/JyckYMWIEcnNzERISghMnTiA0NBTfffedqShr6TxHjx5FWloa9Ho9fvjhBwDAgAEDWLQlIiKieu2FF17AwoUL8c9//hOvvPJKhftv3ryJCRMmIDEx0ey6Z+LEidi6dSuGDBliGnPQu3dv3Lp1C61atcLevXvxxBNPQKVSYf/+/QgMDMSePXvwwQcf4IUXXjB7jrlz5yIhIQEhISE4cOAAHnvsMbNGgh07dmDSpElo164d3N3dcfDgQcyZMwdz5swB7hizMGzYMJw/fx6dOnWCq6trpUXbdevWYcaMGYiMjERRURHOnj2L//znP4iOjgbKmxsyMzMRHx8Pg8EAIYRVn7KKiIhAUFAQTp48iYSEBKxduxYrV66sUIBu2rQpxo4dCwC4ffs2+vTpA71ej3bt2iEhIQHDhw/HkiVLrMgcEVENCCKiemD58uVCq9WaHVu8eLFQKBQiJydH9OrVS3h5eYnk5GSzNYMHDxavvvqq6XavXr2En5+fSE1NFUIIUVRUJIKDg8V7771nWvPQQw+Jvn37itzcXCGEEHq9Xvz444/VntPJyUmcO3dOCCFEXl6e6NKli3j22WerfD2bNm0SjRo1Mj1HZee908WLFwUA8e9//9vin1VUVJQYOXKkKC0tFUIIcfDgQaFUKsXu3bvNYm7evLm4ffu2EEKIW7duCScnJxEYGCgyMzOFEEJcu3ZNODg4iH379tXotVr7/Jby0L9/fzFjxgxhMBiEEEIUFBSIyMhIMW/evBqdZ8CAAWL27NkW/9yIiIiI6gMXFxexevVqsWzZMuHl5SWysrKEEEK89NJLolevXkIIIS5cuCAAiMTERLPHqlQq8dNPPwkhhMjMzBQAxOOPPy70er0QQoj//e9/AoCYPHmy6Rps9erVwsPDw3Tb+LgePXqI/Px8IYQQcXFxQqPRmK6ZU1NThZubm9iyZYvpuRMSEoSzs7M4cuSI2XmGDBkiiouLq3y9ycnJwtnZWaxYscJ07K233hK+vr5Cp9OZjnXt2lUsXLjQ4p/dsmXLTLd1Op1wdXUV8+fPFx9//LEAYLo+rsrHH38swsLCTH9mQgjx/fffV/sYIqJ7oZS6aExEZC2DwYD169fjf//7H+bNm4f58+fj+eefh6urKwBg9OjR8PPzs3ie0aNHm7pCNRoNevbsaerQTExMxP79+/H222+buhKUSmWlGxncaeTIkaZNDJydnTFz5kxs2LDBbE1aWhp2796Nb775BgUFBcjKysL58+eteu03b94EALRs2bLadcnJyYiJicHs2bNNYw169uyJ/v37m42WMP45eHt7AwB8fHwQHByMxx9/3LSpWYsWLdCiRYsKMVb3Wmv6/FXlISkpCXv27EFwcDA2bdqEjRs34scffzR1gFh7HiIiIiJ79dxzz8HLywvvv//+fZ1n2rRpUCrLSgM9e/YEADzzzDOmTc569uyJ7OxspKammj1u5syZpk8/hYaGIjo62nRN+O2330Kj0aCwsBAbN27Exo0bcerUKfj5+eHXX381O8+MGTOgVqurjG/Lli1wdnbGM888Yzo2Z84cpKenV7gutMbx48exfv16rF69GkOGDIFWq8XTTz+NmzdvwtnZ2XR9XBUnJydkZ2fj6tWrpmPV7bFBRHSvOB6BiOoN40fclUolmjRpgq+//hojR4403d+sWTOrzmP8+L2RVqtFbm4uUF4sBFDpLrLVuXuOVVBQELKysqDT6eDu7o6PP/4Yb731FiIiItC0aVOo1WooFArcunXLqvO7ubkBANLT06tdZ7x4vHuGbHBwMBITE82OeXp6mt3WarWVHissLLT6tdbk+avLw5UrVwAABw4cwNGjR01rFApFhV2KqzsPERERkb1Sq9V49913zWa03os7r/+M83ErO2bNNeGRI0eAO67lvv32W7M1Xbt2rdBkYeka/urVqwgMDDQVlgHAxcUFTZs2NSucWuuPP/5Afn4+XFxcMGLECEydOhU+Pj5wc3NDQUEBCgoKKuyzcKcpU6YgNjYWYWFhaNOmDR5++GH89a9/NdsDg4jIFli0JaJ64+6NyO5m7Aa4H8Yu0/T0dKuLwACQmZlZ4bZWq4WrqytycnLw6quvYuvWrRg6dCgAICsrC9988w2EEFadv3379nBzc0NsbCzGjBlT5Trj5mYZGRlo0qSJ6XhGRkaNNz6rSnWv1VbP7+7uDgB46623Kt3UgoiIiIiAxx9/HB9++CHmzp1r+iU/yj8phvJPqhkVFxeb3b5flV0TGq/33N3dodFoqr12N7J0Dd+4cWNkZGRU+vz3cn1bVZG7e/fuEELg8OHD6Nu3b5WPd3R0xNq1a/HPf/4TsbGxWLFiBbp06YKLFy9a7NIlIqoJjkcgIrpDaGgo/Pz88OWXX5odT0tLq/Zx27dvR3Fxsen2d999h549e0KpVCItLQ0GgwHt2rUz3X9314ElarUaM2fOxOeff17pSAVjh3CrVq3g5+eH7777znRfdnY2fvnlF0RFRdXoOatS3Wu11fOHh4ejefPmWLFiRYX7UlJSahSvq6trhc4QIiIiInugUCiwaNEirFu3DvHx8abjfn5+UCgUuHjxounYvn37rG4YsIZxk1eUd+Fu374dvXr1AgAMGTIEN27cwI8//mj2mIKCggrFXkuioqKQmJiIkydPmo5t27YNxcXFeOCBB+77dRj1798fERERmDNnTqXXjsbr7eTkZKB8TEK/fv2wYsUKZGVlcTwXEdkcO22JiO7g4OCAlStXYsyYMUhNTUVUVBTOnDmDpKQkbNq0qcrHFRQU4OGHH8bEiRNx7NgxbNiwwTRjKzAwEBEREZg8eTKmTp2KCxcu4IsvvqhxZ/D8+fNx+fJldO/eHU8//TQ6duyIjIwMHD9+HMeOHUNCQgIcHBzw0UcfYfLkycjKykKrVq2wevVqBAYGYtq0aff952Pptdrq+VUqFdasWYNHH30U6enpGDx4MDIyMrB161aMGTMGs2bNsvpckZGR+Ne//oXw8HC4uLhg+PDhZrsoExEREdVn/fv3x8CBA7Fjxw5T0dTR0RFjx47FzJkz8eqrryI9PR1fffWVTT6ZZrR582Y4ODigc+fO+PLLL+Hs7IwZM2YA5ddfb7zxBsaNG4fnn38e7du3x6VLl0x7Fdw9kqs63bt3x6RJk/DII4/gtddeQ1FRERYtWoRXXnmlwkiu+6FUKvHdd9/hkUceQefOnfHkk0/Cz88PSUlJ2LVrFyIiIvDJJ5/gf//7H3744QeMGDECPj4++Pbbb9G6dWt06tTJZrEQEYGdtkRUX7Ru3RqPP/54lfcPHDgQYWFhFY737dsXnTt3rnZd9+7d8eCDD5puR0dH48SJE/Dz88PBgwfRqlUr/Pe//63ynADw/PPP4/nnn8fp06eh0Whw4MAB0zmVSiV2796NQYMG4bfffoNSqcTBgwcxYcIEsxEMlZ33TsbxENu2bYNGo8GePXuQnJyMYcOG4dSpU6Z148aNw6+//ori4mLExsZi8uTJ2L9/v9kGD5X9OQwePBgdOnQwO/bII49UmO9b3Wu9n+e/Ow+DBw9GfHw8OnbsiAMHDiAnJwdLliwxK9hac57XXnsNL7/8Mg4cOIAffvgB+fn5Vf4ZExEREcndmDFjEBwcbHZs8eLFGDduHAYOHGg69uWXX2LGjBk4cuQIDAYD9uzZY3b9qdFoMG7cOLP9AZycnDBu3DjTyDCU760wbtw40y+9jY/bs2cP2rZtiyNHjqB///6IjY2Fs7Oz6XGLFi3CTz/9BL1ej5iYGHh4eODXX39Fx44dq3z+qnzxxRd4//33ERcXh8uXL2PNmjVYtGiR2ZrKrmUr+7Orbu+KVq1a4dSpU5g3bx6Sk5OxZ88elJSUYMGCBfjkk0+A8mvLxYsXIz09HQcOHMCAAQNw+PBhs9dORGQLCmHLz0cQETVAUVFRGDhwIN5++22pQ6l1Dem1EhEREREREUmFnbZEREREREREREREMsKiLRHRfapqNIM9akivlYiIiIiIiEgqHI9AREREREREREREJCPstCUiIiIiIiIiIiKSERZtiYiIiIiIiIiIiGSERVsiIiIiIiIiIiIiGWHRloiIiIiIiIiIiEhGWLQlIiIiIiIiIiIikhEWbYmIiIiIiIiIiIhkhEVbIiIiIiIiIiIiIhlh0ZaIiIiIiIiIiIhIRli0JSIiIiIiIiIiIpKR/wcU1vkQqCYXBAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "PCs needed for 90% variance: 90\n" ] } ], "source": [ "\"\"\"\n", "==================================\n", "Eigenvalue scree plot\n", "==================================\n", "\"\"\"\n", "fig, axes = plt.subplots(1, 2, figsize=(14, 5))\n", "\n", "# Scree plot (first 50 PCs)\n", "ax = axes[0]\n", "n_show = 50\n", "ax.plot(range(1, n_show+1), pca_result['eigenvalues'][:n_show], 'o-', color='steelblue')\n", "ax.set_xlabel('Principal Component')\n", "ax.set_ylabel('Eigenvalue')\n", "ax.set_title('Eigenvalue Scree Plot (First 50 PCs)')\n", "ax.grid(alpha=0.3)\n", "\n", "# Cumulative explained variance\n", "ax = axes[1]\n", "cum_var = np.cumsum(pca_result['explained_ratio'])\n", "ax.plot(range(1, len(cum_var)+1), cum_var, color='coral')\n", "ax.axhline(y=0.9, color='black', linestyle='--', label='90% variance')\n", "ax.set_xlabel('Number of PCs')\n", "ax.set_ylabel('Cumulative Explained Variance')\n", "ax.set_title('Cumulative Explained Variance')\n", "ax.legend()\n", "ax.grid(alpha=0.3)\n", "\n", "plt.tight_layout()\n", "plt.savefig('../images/05_risk_decomposition/pca_scree.png', dpi=150, bbox_inches='tight')\n", "plt.show()\n", "\n", "# How many PCs for 90% variance?\n", "n_90 = np.searchsorted(cum_var, 0.9) + 1\n", "print(f\"PCs needed for 90% variance: {n_90}\")" ] }, { "cell_type": "markdown", "id": "183c2b9c", "metadata": {}, "source": [ "## Marchenko–Pastur Noise Separation\n", "\n", "**Random matrix theory** gives us an objective cutoff for how many principal components are signal vs. noise.\n", "\n", "For an $N \\times T$ matrix $\\mathbf{W}$ of iid random variables with variance $\\sigma^2$, the eigenvalues of the sample covariance $\\frac{1}{T}\\mathbf{W}^\\top \\mathbf{W}$ converge (as $N, T \\to \\infty$ with ratio $q = T/N$ fixed) to the **Marchenko–Pastur distribution** with support:\n", "\n", "$$\\lambda_{\\pm} = \\sigma^2 \\left(1 + \\frac{1}{q} \\pm 2\\sqrt{\\frac{1}{q}}\\right), \\quad q = T/N.$$\n", "\n", "Eigenvalues falling inside $[\\lambda_-, \\lambda_+]$ are **consistent with noise** — they're what you'd get from a random matrix with no true factor structure. Eigenvalues **above** $\\lambda_+$ are statistically significant factors. This gives us a distribution-theoretic cutoff for how many components to retain, rather than an ad-hoc scree-plot eyeball." ] }, { "cell_type": "code", "execution_count": 5, "id": "c67bfa0d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "q = T/N = 0.6091\n", "sigma^2 (scale): 0.007802\n", "MP bounds: [0.000617, 0.040603]\n", "Number of signal eigenvalues (above MP upper bound): 9\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABKQAAAJOCAYAAACJLN8OAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjExLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlcelbwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAmI9JREFUeJzs3Xd4VFX+x/HPTCa9ACEJLYGEIl06AoLSBJa2IihgAwX1B67isiDiqogNC2tZC6ygoohlQUVRRBFREAQR0aUjSE8gAUJCepn7+yNkzKRO2kxmeL+eZx5n7j33zveOJwN8cs65JsMwDAEAAAAAAABOYnZ1AQAAAAAAALi0EEgBAAAAAADAqQikAAAAAAAA4FQEUgAAAAAAAHAqAikAAAAAAAA4FYEUAAAAAAAAnIpACgAAAAAAAE5FIAUAAAAAAACnIpACAAAAAACAUxFIAQA8wg8//CCTyaQ1a9ZUS/vqrsdV56xpLoVrBAoaN26coqOjL9n3BwBcugikAAAO27Vrl0wmU4mPcePGubpEt8NnWrMcPHhQt99+u5o3by5/f39FR0fr2muv1Weffabc3FxXl6dvvvlGJpNJ33zzjatLcQsFf74efvjhYtv885//tLXZt2+f02u8VHTs2NHuu83f31/t2rXT008/rezs7Cp/P4I2AKj5CKQAAOU2Z84cGYZR5PHBBx+4rKbevXvLMAwNGTKkWtpXN0c+05pWs6fZtWuXOnXqpD179mjp0qU6e/asvvvuO8XExGjUqFHauHGjq0tEBQUGBuqdd96RYRh2261Wq5YuXarAwECX1XYpadasme277ejRoxozZoxmz56tKVOmuLo0AIALEEgBAABI+ve//62UlBR98MEH6tmzpwICAhQdHa0XXnhBn3zyifz8/FxdIipo9OjROnbsmL799lu77d98842OHz+u0aNHu6y2S1VERIQeffRR9ezZU2+99ZbOnz/v6pIAAE5GIAUAqBaff/65TCaTfvjhBz3zzDOKjIxUSEiIbrzxRqWkpEiSnn76aUVFRcnf31/Dhg3TqVOnSjzHvHnz1KhRI/n7++vqq6/Wzz//bNe2uLWHCh7/r3/9SzExMfLy8tLBgwdLXKsoKSlJ999/v1q0aCE/Pz81a9ZM999/v5KTk6WLU7oKTjvx8/NT27Zt9cwzz8hqtVbjJ1ry+kp79uzRkCFDFBgYqIiICM2cOdNW58KFC4tc34wZM9S0aVP5+PioQYMGmjJlihITE4v93P7973+rSZMm8vPzU+/evfXrr7/a2u3fv18mk0lPP/10kVpPnDghLy8vzZkzR6rk57Zw4UKZTCYdOXLEbnv+ORcvXlzuayzOuXPnZDKZ1KBBgyL7Ro4cqR49ehT7GZXVN8tTU2n9b/HixbrmmmskSddcc43ts3zllVeK1FS4v5fnM6yKn93CytNXMjMz9c9//lMtWrSwhYITJ04sUnt5tG/fXp06ddKSJUvstr/11lvq0aOHWrduXeQYR/tsaZ+7JG3fvl3XXXedwsPDFRAQoO7du+u///1vkfdLTEzU+PHjFRISotDQUN15551KT08v0m779u3661//qtDQUPn6+qpdu3ZFfgbyp6s5es7CNm3apPDwcA0YMMAWFMXFxWnSpElq0KCBfHx81LRpUz344IPKyMgo83yladWqlaxWq2JjY/XAAw/YPm+z2aw6depo0KBB2rRpk90xO3fu1LXXXqv69esrMDBQHTt21EsvvaSsrCxJUo8ePfThhx/q6NGjdv8P82vt2rWrBg4cWKSW/Pcv6Nprr1WrVq0UFxenMWPGqFatWurbt2+lrhkAkIdACgBQrf7973/Lz89P//vf//Ttt99q/fr1+tvf/qYnn3xSPj4++u2337Rp0yb9+uuvJU7beOGFF2QymfTbb7/pf//7n/z9/dW3b1/t3bvXoRpefPFFZWVlaevWrfriiy/k7e1dbLvk5GRdeeWV+vDDD/XCCy/o1KlT+uabbxQREWH7B2Tz5s3tptTFxcVp1qxZeuyxx/Tss89W4pOqmJMnT+qqq65ScnKytm7dqgMHDqhVq1Z66KGHirS9cOGC+vTpo08//VSvv/66zp07p9WrV2vLli0aOHCg7R9z+RYsWKCMjAxt375du3btUnp6ukaNGmVb76Vly5bq3bu33nzzzSLvtWTJEhmGodtuu01y4udW3mssKH9K5Jw5c0ptV5AjfdPRmsrqf5MnT9batWslSWvXrrV9ln/729/sanK0v5elKn5285WnrzzwwAP6z3/+o9dff11nz57Vpk2bNHDgQP373/+u0HXku+222/Txxx/rwoULkqTz589r5cqVmjhxYrHty9tni/vc165dq169eskwDK1fv14JCQl67bXX9NFHH+n06dO2Y61W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MwxDn332mV17R/8fTZo0SWlpafrggw+UlJSkjz/+WDfffLN8fX1tbSrzueWPYMkPMfIV9/+qvNfoiFGjRunyyy/Xxo0bi+xzpG86WpMj/c8RxfX38nyG+ariZ7cwR/pKrVq19PLLL+vUqVPas2ePHnzwQX3++ee66qqrHF7bqyR/+ctfVK9ePd12222KiorSgAEDSmxb3j5b+HMPDw+XyviM8znymYaFhUmSnn/+eVs/KtyXbrjhhnKds2CtX3/9tfbs2aNrrrmmSGAVGhpabF9PSkpSZmamrbYPPvjAboRnwZsglOXAgQPasmWLZs+erUGDBql27doymUxKSUkpEnj17NlT33zzjc6fP69169apa9eumj59epnrY+WrVatWkZ8FlfL/qqLrsAEASkcgBQCo8VatWmX3Ojk5Wd99912p/5isiOHDh2v//v3avn17qe0K/uNZF6eZfPHFF1Vai6P69eunX3/9tcg/pD7//PMibUeMGKHffvtNBw4cqNIaunXrpssvv1xvvPGG3nvvPaWnpxe76G9FP7dmzZpJknbt2mW3vaqvcd68eYqNjS2yPScnR6dPn1bt2rWL7HOkbzpakyP9LzAwULp4J7ryKM9nWJ0c7Su6GKi0bt1a9957r2bOnKnjx49XepSUxWLRzTffrMTERN16660OTaUrqDw/661bt1bTpk314YcfVskdONu0aaOmTZtq+fLlpY5sq6grr7zSNoXy6quvtrtz4oABA3T48OEiAdNHH31k219VCn/m77zzToltAwIC1K9fP73++utq2bKlNmzYYNsXGBhY4s9Js2bN9Pvvv9sFnOnp6Q5PAwcAVA0CKQBAjZeZmannnntOZ8+e1cGDBzVu3DhlZWXZbhNfVWbMmKHWrVtr9OjR+vzzz3X+/HkdOXJE//rXv2y3VR85cqS2bt2qN998U6mpqfrf//6nUaNGVXk45qiZM2cqODhYY8eO1e7du5WUlKS33npLx48fL7ZtmzZtNHz4cK1atUrnzp1TYmKiNm/erDvvvFMrVqyocB2TJk3S1q1bNW/ePHXp0kUdOnSw21+Zz61bt27q0KGDHnvsMe3evVuJiYlauHBhsdOEKnON27dvV7t27fT888/r5MmTysjI0K5du3TjjTcqLi5OM2fOLHKMI33T0Zoc6X+XXXaZfHx8tGbNGqWnp5f52VXkM6xuZfWVQYMGaenSpTp8+LAyMzO1d+9erVixQtHR0YqJiZEkZWRkyGQyaciQIeV+//nz58swDD3xxBOltqvsz7rJZNKCBQu0b98+jRkzRrt27VJqaqq2b9+ucePGFTviqKzzLVq0SD///LPGjx+vnTt3Kj09XUePHtXy5cvVu3fvcp2vOB06dNDGjRuVlJSkPn362ALAadOmqXHjxho/fry2bNmiCxcu6NNPP9XMmTPVt2/fKlm3rHnz5mrTpo3mz5+vnTt3KikpSe+9954+/fRTu2miq1ev1oQJE7RhwwadO3dOqampWrFihQ4fPqx+/frZ2rVr107x8fHasmVLkUDwjjvuUGJioh544AElJibq4MGDuv3229W9e/dKXwcAwHEEUgCAcps7d67dwrUlLWBbVf7+978rIyND7du3V7t27ZSSkqL169erTZs2Vfo+ISEh2rRpk0aPHq177rlH9erV08CBAxUfH2+bCvP3v/9dDz/8sObOnavw8HBNnjxZjzzySKWvvaKfaaNGjbRhwwYFBgaqW7duatGihW2akwqNNggODtamTZs0btw4zZo1Sw0bNtRll12mBx54QD169NCIESMqXH/+tKvjx48XO+KlMp+byWTSf//7XzVq1Ehdu3ZV69atderUKf3zn/8s0rYy17hgwQI9+uij+uyzz9S1a1cFBQWpX79+Sk5O1ieffKJ77rmn2Osqq286WpMj/a9u3bp67bXX9OWXXyo4ONi2yHZVfobVray+8uyzz2r9+vUaOHCgatWqpSFDhujyyy/Xd99959SpU1Xxsz5o0CBt2rRJOTk5uuqqq1SvXj1NnTpV1113XbHrj5Wlf//+2rZtm0wmk21aW79+/fTxxx9r/vz55T5fcVq0aKFNmzbJ29tbvXv31t69e1W3bl1t3rxZV1xxha699lrVrVtX9913n+644w598cUXZY40c4TZbNZnn32mZs2aqU+fPoqJidGXX36p999/3+7811xzja655hrNmTNHLVq0UMOGDfXUU09p/vz5dkHwXXfdpeuvv15Dhw6Vl5eXTCaTMjIypIsB7eLFi7Vy5UrVr19fY8eO1dSpU9WqVatKXwcAwHEmozrG/AIAUAU+//xzjRgxQhs3bqyS3/5fStatW6eBAwdq9erVRe6WhsqjbwIAAFQOI6QAAPBAH330kXx9fdWjRw9XlwIAAAAU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bWJjY/X3v/9dffr00Zo1a/T3v/9d58+fV69evbR//34tXLhQixcvVlxcnFatWmV37IwZMzRjxgx9/PHH8vLy0ujRo22hTXJysnr37i2r1aoPPvhAS5Ys0dGjRzV8+HBbm/zpeP/4xz9KPE9BGRkZuu6667Rjxw69//77Cg0N1TPPPKPHHntMs2bN0sqVKxUeHq4+ffro9OnTFfpsJSk9PV3ff/+9tmzZou+//14zZszQE088oYULF9rafvjhh3r00Uf1yCOPaNWqVbruuus0e/ZsSdJXX30lSVq6dKm2bNmiN954Q1lZWTp58qRyc3Nt5zAMQydPnrStj5WTk6OTJ0/q7rvv1p133qn169dr2LBh5b6OS5HL77IHAAAAAECF/GeGlHLegYZVLKi2dHv51n2aNGmSRo8erWeeeUabN29WYmKiRo4cqTlz5ti1Cw8Ptz2PiorSyy+/rP79+2vhwoV2dz2bNGmS3Y28nnnmGaWmpmrlypUKDAyUJHXq1KnICKn//Oc/uuKKKyRJTzzxhNq1a6fY2Fg1atRIixYtUnBwsF2Is2zZMtWpU0fbtm1T9+7dHTpPvqSkJN1www0ym81av369goODlZ2draeeekrPPvusxowZI0lauHChvv/+e7344ovlWk8rOTlZL730kpo0aaJmzZrJy8vLti86OlonT57UkiVLNGXKFEnSzp071bVrVw0dOlSS1KJFC40ePVqS1KBBA0lSRESEIiMjJUknT550uJbHH39c1157rcPtQSAFAAAAAHBXKeelC5Vf0Lr8yr9Yd58+fVSnTh199tln+vTTT3XLLbfI29u7SLtff/1VzzzzjHbt2qXz588rJydHmZmZOnXqlC00kaTOnTvbHffjjz+qd+/etjAqn9lsPzGqXbt2tuf50wXPnDmjRo0aafPmzTpw4ICio6NlGIbtkZubq4MHD9oFUqWdJ9+AAQPUpEkTffzxx/L19ZUk/fHHH7pw4YKuuuoquxqvuuoq/fbbbw59lpGRkTIMQ2fOnFHnzp31ySefyMvLS2vWrNHLL7+sQ4cOKSUlRenp6bJY/ow9RowYoeeff17jx4/XyJEjNWDAAEVERDj0nmUp/P8DZSOQAgC4PT8/P61fv972HAAAXCKCarvV+95+++166aWXtH37dv30009F9ickJKh///667bbbNGPGDIWFhenQoUMaMGCAbYpYvsJ/58nJySkSRhWn4CiifPlT7TIyMtS/f3+99tprRdqEhoY6fJ58LVq00K5du+yCqvzryA+o8vn6+tr2JScnq02bNrZ9N9xwg55//nnb6y1btshsNissLMy2BvXWrVt17bXX6plnnlH//v1Vu3ZtrVy5Ug8//LDtuCuuuEJ79uzRhx9+qCVLluj222/XHXfcoX//+99lfGpl4++g5UcgBQBwe15eXurbt6+rywAAAM5213zXvK9hSDk55T5swoQJeuihh9S1a1e1bdu2yP5t27YpKytL//rXv2zbfvzxR4fO3aZNG3322WcyDMNual95tG3bVh9++KHq1atX7Oit8nr33Xd1++23q1+/fvruu+/UsGFD29S63377Tc2aNbO13bFjh21h8eDgYG3ZssW2r3DQlj+lrqB169apS5cumjZtmm1bcVPuoqOjNWvWLM2aNUs//vijevXqpSlTpqh+/fpSoVAtJCREknThwgWFhYVJko4ePVqpzwR/YlFzAAAAAACcoH79+jp+/LjWrFlT7P7IyEilpaXp+++/lyQdOHBADz30kEPnvuuuu3T8+HE98MADyszMVG5urlasWGEbRe6IKVOmKDExUXfffbdSUlIkScePH9e0adPs7jTnKC8vLy1btkwdO3ZU3759FRsbq8DAQN1+++165JFHdOLECRmGobfeektbt27V3XffLUkymUyKjIy0PerUqVPme0VGRmrfvn06fPiwJOn7778vMtLrxRdf1BdffKGsrCxJ0rFjx+Tl5aXQ0FDVrl1bAQEBdncLbNy4sSIiIrR48WLpYjA1a9ascn8OKB6BFADA7WVnZ+vVV1/Vq6++quzsbFeXAwAAUKL69eurVq1axe67/PLLNWfOHA0ePFihoaHq2bOnwwtlN2vWTF999ZXWrFmjoKAg1a1bV//973/VoUMHh2uLiYnRunXrtHPnTtWuXVu1a9fWVVddpRYtWpRYc1ksFovee+89dejQQf369VNsbKzmz5+vdu3aqVmzZgoJCdE///lPvfPOO3brUpXXjTfeqMGDB6tly5aqXbu2Jk6cqHHjxtm1GTRokBYuXKi6desqNDRUM2bM0DvvvKN69erJZDLp0Ucf1e23364GDRpo5MiRslgseuutt7R48WLVqlVLzZs3V48ePSpcI+yZjOLuy3gJSk5OVq1atfT0h5vkFxjs0DHThrWv9rqAyrBarYqPj1dERESRxQwBd1a4b6empiooKEiSlJKS4tD6CUBNw3c2PBV9G1UhIyNDhw8fVkxMTI1Yq8cwDOXk5MhisZQ5PS4+Pl5+fn626V+FnT59Wv7+/nb7c3JydO7cOYWFhckwDMXFxalBgwa2dZvi4uJUu3Zt+fv7F3vO8+fPy8/Pz+6zysrKUnx8vN10N6vVqtjY2GKn6KWmpionJ6dIEOXIeYprk5ubq7i4OIWEhNiuNT09XSkpKQoLC3NommFaWprOnTtX7JS9fOnp6UpLS1PdunWVnp6uxMRENWzYsMg1pKenFxuy5ebmKiEhQV5eXnZ3PExMTLSN1Dpx4oQiIiLk4+Nju6769evbLaDurhzp26X9POZnK0lJSSX2+Xzu/2kBAAAAAFBDlXUXt/w71BVksVjsjiscwBS8215xatcuuui6j49PkfOYzeYSw52SfsHnyHmKa+Pl5VVkm7+/f4mhWnECAgIUEBBQapuC5yzp/D4+PrbF0Avz8vKyrSdVUMFpgwWvo7jrgmP4FQUAAAAAAACcikAKAAAAAAAATkUgBQAAAAAAAKcikAIAAAAAAIBTEUgBAAAAAADAqbjLHgDA7fn6+urzzz+3PQcAAABQsxFIAQDcnsVi0bBhw1xdBgAAAAAHMWUPAAAAAAAATkUgBQBwe9nZ2VqyZImWLFmi7OxsV5cDAACAMvz973/Xtm3bXF1GqebMmaP169eX2ubs2bP629/+5lF/B501a5aOHDlS7e/DlD0AgNvLysrSbbfdJkm6/vrr5e3t7eqSAAAAJEmPPfaYjh07pkmTJqlnz552+xYtWqStW7dq6NChuu666+zaS5K/v79iYmJ00003qV69ei6pv7osXbpUV1xxhbp16+bqUkr00UcfKTw8XP369SuxzcMPPywfHx+7v3/+/vvvevfdd3Xu3Dl17dpVN998s7y8vEp9r/Ics3r1an388ccaNWpUkWUrHDmP1WrVypUr9cMPP6hOnTqaMGGCGjdubNtfu3ZtzZgxQx999FGZn1FlMEIKAAAAAIBq8vHHH2vZsmWaP3++3faMjAzNmjVLy5Yt008//WTX/ujRo+rRo4cuu+wyff7552revLn27NnjgupRmtjYWL3xxhu67777bNu2bNmiDh066NChQ2rYsKHmzp2rkSNHyjCMEs9TnmOOHDmiu+66Sx9++KF27NhR7vOkp6frmmuu0cyZMxUeHi4fHx+NHDlSx48ft7W588479fnnn2v37t1V8CmVjBFSAAAAAABUo7/+9a9auXKlEhISFB4eLl0cfRMVFaXc3Nwi7du2bavJkydLkqZMmaKWLVvqueee01tvvVWk7eTJk/WPf/xDrVu3tm17+OGH1b9/f9vInr///e8aN26c/vjjD/38888KCQnRHXfcoYYNG9qOcaSNJO3cuVPLly9XUlKS2rZtq1tvvVV+fn525xk/frwOHDigrVu3qnfv3ho7dmyxn4thGHr//fdLfb/169dr9erVyszMVJ8+fTR69GiZzX+OrXH0+sePH69jx45p69atCgoK0m233WY3KkiSVq5cqXXr1qlhw4YaPXp0sTUX9Oabb6pbt26Kjo62u/7hw4fr3XfflSRdd911at26tVatWqWRI0cWex5Hj8nJydH48eP1+OOP66GHHqrQeR599FHt3r1bu3btUlhYmCRp6tSpdqFV3bp1dc0112jRokV68cUXy/wcKooRUgAAAAAAVKPo6Gj17t1bS5cutW1bvHixbr/99jKPtVgsatmypd0IloLeeOMNnTx50m7b8uXL7Ua3LF26VKNGjdI777yjRo0aaePGjercubPi4uLK1eadd95R3759lZGRoaZNm2r58uXq2rWr0tLSipzno48+UqtWrdSkSZMSr+0f//hHqe83f/58DRs2TF5eXoqIiNA999yjCRMmVOj6r7vuOv33v/9VZGSktm3bpi5duigxMdHW5vHHH9ctt9yi2rVrKysrSwMGDCjxM8+3du1aXXnllbbXCQkJ2rJli8aPH2/b1rJlS3Xp0kWrVq0q9hzlOeahhx5SZGSkJk6cWKHzWK1WLVq0SHfddZctjJKk4OBghYSE2J2vd+/e+vrrr0u9/spihBQAAAAAwG2lpqaWuM/Ly8tu9E5pbc1ms/z9/ctsGxgYWKE6J02apCeffFLTp0/XoUOHtGXLFq1YsUKLFi0q9bhz585p27Ztuummmyr0vvliYmK0evVqmUwmTZs2TV27dtXTTz+tl156yaE2586d05QpU/T555/bRh7dc8896ty5sxYsWKB//OMftvN07dpVn3zySaVqOn36tObMmaPXX39dN998syRp2LBh6tKli+666y717t27XNd/9dVXa9myZdLFEUGRkZFauXKlbrvtNp0+fVrz5s3T0qVLbSOjevbsqcGDB5d6zn379tkFQIcOHZIuBpCFr/PgwYPFnsPRY9auXav33ntPv/76a4XPc/jwYSUmJqp79+5auHChdu/eraioKN18881FRqY1bdpU+/fvl9VqtRuRVpUYIQUAAAAAcFtBQUElPgpPu4qIiCix7V/+8he7ttHR0cW2q6jrrrtOsbGx2rp1q9544w2NHDlSdevWLbbtN998o8mTJ+umm25Su3btVL9+ff3zn/+s8HtL0ujRo2UymaSLQd2YMWP0/fffO9xm/fr1Sk9P14cffqj/+7//01133aX/+7//U3p6epGQpPBnWZGatm3bpoyMDN1www229p06dVKbNm2K1O2IgQMH2p57e3uradOmOnHihCTpp59+UnZ2tq699lpbm0GDBqlOnTqlnvPChQt2fSI9PV26OOKooODgYNu+whw5Jj4+XhMmTNBbb72l0NDQCp/nwoULkqTp06dry5YtatGihTZv3qyWLVsW+X8YFBQkq9VaaohbWYyQAgAAAACgmvn6+uqmm27S66+/rjVr1hS7HlS+Bg0aqEePHvLz89OUKVPUq1evSo9SKRx+hYWFKT4+3uE2Z86cka+vr7p27WrXpnv37kVG5dSuXbvSNcXHxyskJEQ+Pj5F2pw+fdqh8xdUcPSbLgZg+et3xcfHq3bt2kXuRldSYFhwf8Fpf/nT3gpu08VRboWnxJXnmNdff11Wq1Xvv/++3n//fVv7lStXKj4+Xv/+978dOk/+f7t166YlS5ZIku6991717t1bjz/+uN1d9c6fPy8fH58iAVdVIpACALg9X19f/fe//7U9BwAAl46UlJQS9xUOGAoHMAUVDnyOHDlSBdXZmzRpkjp37qyoqCi7ETuFFVzUvCw+Pj7Kysqy21Y4lJBUZD2ko0ePKioqyuE2jRo1UkZGhoYMGaLIyEiHaitLae8XFRWl8+fPKykpSbVq1bJrM3z4cNtrR6+/NFFRUTp37pxSU1NtUzKzs7MVGxtb6nEdOnSwu/thy5YtZbFYtGfPHnXr1s22fc+ePRo2bFix53DkmKFDh6p+/fp2x3388ceKioqyHePIeZo0aaLg4GBdfvnldudq3769fv75Z7ttu3fvVqdOnUq9/spiyh4AwO1ZLBZdf/31uv7662Wx8LsWAAAuJYGBgSU+Cq4fVVbbwiNoSmpXGR07dtTSpUu1dOnSKluXp3nz5tq8ebPt9erVq4sN3pYsWaKkpCRJ0tmzZ/XOO+9o1KhRDrcZMGCAGjRooAceeEA5OTm2Yw4dOqRffvmlQrWX9n69evVSgwYN9MILL9jaf/TRRzpx4oTdneccvf7SXHnllQoLC9Mrr7xi2/b666/bLdZenGHDhmn9+vW210FBQRoxYoT+85//KDs7W5K0Zs0aHThwQOPGjbO1e/XVV/Xcc885fEznzp01efJku0dAQIC6dOmiW265xeHzeHl5afz48fryyy9ltVqli1P9vv322yIj377//vsSQ7Sqwt/aAQAAAABwksouTl7YnDlzdMstt+i3336TYRiKjY1VREREkXYNGjRQx44d1a1bN23evFmRkZG69957HW7j7++vlStXavTo0WrTpo26dOmiEydOKDEx0e7ugeVR2vsFBgZq0aJFGjt2rL7//nsFBwdr7dq1evrpp3XZZZeV+/pLExgYqJdfflm33HKLvvnmG1ksFh09elT16tUr9bibb75ZDzzwgH766Sd1795dkvTSSy+pX79+6tChgy677DJ98803evjhh237dXGB8vPnz2vmzJkOH+MIR84zb948DRo0SO3bt1eHDh30448/KiwsTE888YStzeHDh7Vt2zYtX768XO9fXibDMIxqfQc3kZycrFq1aunpDzfJL9CxOZLThrWv9rqAyrBarYqPj1dERES13RkBcIXCfTsnJ8d2J5dRo0YxSgpuie9seCr6NqpCRkaGDh8+rJiYmCKjnlzBMAzl5OTIYrHYFuUuySeffKLIyEi7aVQFFZ569cknn9jWkHLUwYMHtX37dtWvX189evTQqlWr1KZNG7Vp00a6uO7SK6+8oq5du2rHjh0KDg7WwIED7f7O5EgbScrMzNTGjRsVFxenpk2b6oorrrBr8+6776pXr15q2rRpqTXnt7NaraW+35kzZ/Tdd98pKytLPXv2VExMTLmvv7iaPv/8czVs2FCdO3e2bTty5Ig2bdpk+/zXrFmjVq1a2c5TnGeffVZbtmzRxx9/bNuWkZGhb7/9VufOnVOXLl3UunVru2O++eYbZWZm2o1AKuuYwt5//321bt1aHTt2tNvuyHlyc3P1/fffKy4uTjExMerZs6etHxuGobvuuktBQUF6/vnni33v0n4e87OVpKSkEtfN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hx7CH//4R/zyyy/YuHGj0g9rHn74YSxYsAAhISHQ6XT48MMPzVZMObr/REREdHVjQoqIiIjoMpMmTQKAdpua+/v7KwmpW265BZGRkcq5efPmITQ0FNu2bYPBYMC6deuwatUq+Pn5KXWmTZuGY8eO4V//+hf27duHiIgIvPbaa5gwYYJSJz4+3mwzdAAYP3682e1zAHDdddfhiSeeQElJCWbPnq2Uq9VqfPfdd1i3bh327t2L8PBw7N+/HytXrkRYWJhS7/L+P/TQQ/Dz88NXX32F6upqvPHGG9i/f7/Zfla29J+IiIjIFiq50mYCRERERGSTiooKBAYGKq9LSkowZMgQbNy4EbNmzerWvhERERH1NExIERERETnA999/j7/97W+466670NTUhPXr1yMwMBB79+6Fl5dXd3ePiIiIqEdhQoqIiIjIQVJTU5GSkgKDwYAxY8bg0UcfhUaj6e5uEREREfU4TEgREREREREREZFLqbu7A0REREREREREdHVhQoqIiIiIiIiIiFyKCSkiIiIiIiIiInIpJqSIiIiIiIiIiMilmJAiIiIiIiIiIiKXYkKKiIiIiIiIiIhcigkpIiIiIiIiIiJyKSakiIiIiIiIiIjIpZiQIiIiIiIiIiIil/p/7Oxll4Yie58AAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "\"\"\"\n", "==================================\n", "Marchenko-Pastur cutoff\n", "==================================\n", "\"\"\"\n", "def marchenko_pastur_bounds(q, sigma_sq=1.0):\n", " \"\"\"Compute MP upper and lower bounds.\"\"\"\n", " inv_q = 1 / q\n", " lambda_plus = sigma_sq * (1 + inv_q + 2 * np.sqrt(inv_q))\n", " lambda_minus = sigma_sq * (1 + inv_q - 2 * np.sqrt(inv_q))\n", " return lambda_minus, lambda_plus\n", "\n", "def mp_density(x, q, sigma_sq=1.0):\n", " \"\"\"Marchenko-Pastur probability density.\"\"\"\n", " lam_minus, lam_plus = marchenko_pastur_bounds(q, sigma_sq)\n", " mask = (x > lam_minus) & (x < lam_plus)\n", " density = np.zeros_like(x)\n", " density[mask] = (q / (2 * np.pi * sigma_sq * x[mask])) * \\\n", " np.sqrt((lam_plus - x[mask]) * (x[mask] - lam_minus))\n", " return density\n", "\n", "# Compute MP parameters\n", "T = pca_result['n_obs']\n", "N = pca_result['n_assets']\n", "q = T / N\n", "\n", "# Scale sigma^2 to match the bulk of the empirical spectrum\n", "# Estimate sigma^2 as the mean eigenvalue (equals average variance of stocks)\n", "# Under the null of pure noise, MP distribution mean = sigma^2\n", "# NOTE: this overestimates sigma^2 because signal eigenvalues pull the mean up,\n", "# making the MP cutoff conservative (fewer false-positive factors). A more\n", "# rigorous estimate would fit sigma^2 from the noise-only portion of the spectrum\n", "# (e.g. the median of eigenvalues below a preliminary threshold).\n", "# sigma^2 = trace(Sigma) / N = sum of all eigenvalues / N\n", "# (sklearn returns only min(T,N) eigenvalues, so divide by N, not len(eigenvalues))\n", "sigma_sq = np.sum(pca_result['eigenvalues']) / pca_result['n_assets']\n", "\n", "lam_minus, lam_plus = marchenko_pastur_bounds(q, sigma_sq)\n", "n_signal = np.sum(pca_result['eigenvalues'] > lam_plus)\n", "\n", "print(f\"q = T/N = {q:.4f}\")\n", "print(f\"sigma^2 (scale): {sigma_sq:.6f}\")\n", "print(f\"MP bounds: [{lam_minus:.6f}, {lam_plus:.6f}]\")\n", "print(f\"Number of signal eigenvalues (above MP upper bound): {n_signal}\")\n", "\n", "# Plot empirical vs MP\n", "fig, ax = plt.subplots(figsize=(12, 6))\n", "\n", "eigs = pca_result['eigenvalues']\n", "eigs_bulk = eigs[eigs < lam_plus * 5] # Show bulk, exclude extreme top\n", "\n", "ax.hist(eigs_bulk, bins=80, density=True, color='steelblue', alpha=0.6, label='Empirical')\n", "\n", "x = np.linspace(max(0, lam_minus * 0.5), lam_plus * 3, 1000)\n", "ax.plot(x, mp_density(x, q, sigma_sq), color='coral', linewidth=2, label='Marchenko-Pastur')\n", "ax.axvline(x=lam_plus, color='black', linestyle='--', label=f'MP upper bound ({lam_plus:.4f})')\n", "\n", "ax.set_xlabel('Eigenvalue')\n", "ax.set_ylabel('Density')\n", "ax.set_title('Empirical Eigenvalue Spectrum vs. Marchenko-Pastur')\n", "ax.legend()\n", "ax.grid(alpha=0.3)\n", "ax.set_xlim(0, lam_plus * 3)\n", "\n", "plt.tight_layout()\n", "plt.savefig('../images/05_risk_decomposition/marchenko_pastur.png', dpi=150, bbox_inches='tight')\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "2c6a3e3e", "metadata": {}, "source": [ "## Ledoit–Wolf Shrinkage\n", "\n", "The sample covariance $\\mathbf{S} = \\frac{1}{T-1}\\mathbf{X}_c^\\top \\mathbf{X}_c$ is a noisy estimator when $N$ is large relative to $T$ — many eigenvalues are inflated or deflated by sampling noise (as the Marchenko–Pastur analysis shows).\n", "\n", "**Ledoit–Wolf shrinkage** forms a convex combination:\n", "\n", "$$\\hat\\Sigma = \\delta \\mathbf{F} + (1-\\delta) \\mathbf{S}, \\quad \\delta \\in [0, 1],$$\n", "\n", "where $\\mathbf{F}$ is a structured target (here, the constant-correlation matrix) and $\\delta$ is chosen to minimize $\\mathbb{E}\\|\\hat\\Sigma - \\Sigma\\|_F^2$ (expected Frobenius-norm squared error). This is **ridge-like regularization** on the covariance: we trade bias for variance, pulling noisy eigenvalues toward a more structured pattern. The result is a biased but lower-variance estimator that performs better out of sample." ] }, { "cell_type": "code", "execution_count": 6, "id": "c96abc5d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Shrinkage intensity (delta): 0.4996\n", "Average correlation (r_bar): 0.3165\n", "\n", "A shrinkage of 0.50 means the estimator is 50% target and 50% sample.\n" ] } ], "source": [ "\"\"\"\n", "==================================\n", "Ledoit-Wolf shrinkage estimator\n", "==================================\n", "\"\"\"\n", "def ledoit_wolf_shrinkage(returns_df, min_obs=60):\n", " \"\"\"\n", " Compute Ledoit-Wolf shrinkage covariance estimator.\n", " Target: constant correlation matrix.\n", " \"\"\"\n", " valid = returns_df.dropna(thresh=min_obs, axis=1).dropna()\n", " X = valid.values\n", " T, N = X.shape\n", " \n", " # Sample covariance\n", " S = np.cov(X, rowvar=False, ddof=1)\n", " \n", " # Target: constant correlation matrix\n", " # Compute sample correlations, then average off-diagonal\n", " D = np.sqrt(np.diag(S))\n", " R = S / np.outer(D, D)\n", " \n", " # Average correlation (excluding diagonal)\n", " mask = ~np.eye(N, dtype=bool)\n", " r_bar = R[mask].mean()\n", " \n", " # Constant correlation target\n", " F = r_bar * np.ones((N, N))\n", " np.fill_diagonal(F, 1.0)\n", " F = F * np.outer(D, D) # Scale back to covariance\n", " \n", " # Shrinkage intensity (Ledoit-Wolf formula)\n", " # mu = sum of squared deviations of sample cov from target\n", " # d^2 = average squared deviation\n", " X_centered = X - X.mean(axis=0)\n", " \n", " # Compute d^2 (distance between S and F)\n", " d_sq = np.sum((S - F)**2) / N\n", " \n", " # Compute r_bar^2 (variance of sample covariance entries)\n", " # Using the Ledoit-Wolf asymptotic formula\n", " pi_mat = np.zeros((N, N))\n", " for t in range(T):\n", " xt = X_centered[t, :].reshape(-1, 1)\n", " pi_mat += (xt @ xt.T - S)**2\n", " pi_mat /= T**2\n", " pi_hat = pi_mat.sum() / N\n", " \n", " # Shrinkage intensity\n", " beta_sq = 0 # For constant correlation target, this term is smaller order\n", " delta = max(0, min(1, pi_hat / d_sq))\n", " \n", " # Shrunk estimator\n", " Sigma_shrunk = delta * F + (1 - delta) * S\n", " \n", " return {\n", " 'cov_shrunk': Sigma_shrunk,\n", " 'cov_sample': S,\n", " 'target': F,\n", " 'shrinkage_intensity': delta,\n", " 'r_bar': r_bar,\n", " 'tickers': valid.columns.tolist()\n", " }\n", "\n", "lw_result = ledoit_wolf_shrinkage(df_returns, min_obs=240)\n", "\n", "print(f\"Shrinkage intensity (delta): {lw_result['shrinkage_intensity']:.4f}\")\n", "print(f\"Average correlation (r_bar): {lw_result['r_bar']:.4f}\")\n", "print(f\"\\nA shrinkage of {lw_result['shrinkage_intensity']:.2f} means the estimator is \"\n", " f\"{lw_result['shrinkage_intensity']*100:.0f}% target and \"\n", " f\"{(1-lw_result['shrinkage_intensity'])*100:.0f}% sample.\")" ] }, { "cell_type": "code", "execution_count": 7, "id": "6dc7a3cc", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of evaluation windows: 32\n", "Mean Frobenius error (sample): 3.0468\n", "Mean Frobenius error (shrunk): 2.9003\n", "Improvement: 4.8%\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAHqCAYAAAAZLi26AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjExLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlcelbwAAAAlwSFlzAAAPYQAAD2EBqD+naQAA8R9JREFUeJzs3Xd8VFX+//HXnUnvPaTRe8cCKKBgWRuiICqu2HHRXcuuX3v9Leq6a9lVd9e1omJFXSu2VQQVpIggvXdSSO995v7+mMmQkBCSySQzIe/n48GDzJ07537mzhHzmXPO5ximaZqIiIiIiIiIiMdZvB2AiIiIiIiIyLFKSbeIiIiIiIhIO1HSLSIiIiIiItJOlHSLiIiIiIiItBMl3SIiIiIiIiLtREm3iIiIiIiISDtR0i0iIiIiIiLSTpR0i4iIiIiIiLQTJd0iIiIiIiIi7URJt4hIF1JQUMAVV1xBYmIihmHwxz/+0dshtZvS0lIMw+Cvf/2rt0PxGbonrefL98yXYxMRkUOUdIuIuGHt2rVcccUVpKWlERAQQFxcHGeffTaffPJJm9p95JFHMAyD0tJSj8Va3wMPPMC3337LsmXLME2Tp59++ojn5ubmcvfddzN48GDCwsJISkri9NNP59VXX6WioqJd4usMKioqePbZZ5kwYQLR0dEEBQXRt29fzj//fD788ENqa2u9HWKX4Ofnh2EYTf4ZOHBgq9rKzc3FMAyefPLJdovXXb4cmyc/AxGRY5mftwMQEelsXn/9dWbNmsW0adP4/PPPGTBgANnZ2bz66qtcdNFFXHfddbzwwgveDrNJ33//PSeffDK9e/du9rzCwkJOPPFE7HY7zz33HOPHj6e6uprXX3+dm266iaKiomN6lPxIMjIyOOecc8jJyeHhhx/m3HPPJTY2ll27dvHKK69w6aWX8tFHHzF58mRvh9qksLAwTNP0dhgec8EFF/Dxxx+36zV8+Z75Qmwd8RmIiHR2SrpFRFph9erVzJo1i4svvpi3337bdTwtLY0HH3yQxMREbrjhBoYOHcrNN9/s1Vibkpuby4gRI4563ttvv82ePXv46KOPOO+881zHb7/9dn7zm9+wadOmdo7UN11yySXs27eP1atX06tXL9fxgQMH8sQTTzS4VyIiIiJoermISOv85S9/wTRNnnjiiSafnz17NgMGDODRRx/FZrMBcPXVV9OtW7dG57755psYhsGGDRsAmDVrFg888AAA4eHhrmmaq1atOmpcOTk53HDDDaSkpBAQEEDPnj25/fbbKSsra3CtrKws3nrrLVfbW7ZsabK9/Px8AFJSUho9N3z4cGbMmNHgWFhYmKtNf39/evbsyZ/+9CdKSkpc5xw4cADDMPjXv/7Fe++9x8CBAwkNDeWMM85gz549ALz77rsMGjSIoKAgRo8ezdq1axtcp34b7777LgMHDiQoKIgRI0a0eLTNZrPx5JNPMnToUIKCgoiOjmb69Ons3Lmz2dd9++23LF26lD/96U8NEu76Jk6cyMSJE12PS0pKuO222+jRowcBAQGkpKRw4403kpeXB0BlZSUxMTGN7mddnMnJyVxwwQVu3+cPPviAYcOG4e/vzwcffHDENcCtbffTTz913b8hQ4bw2WefNYq/traWp556ihEjRhASEkJycjJXXXUV+/fvb/Nn0VrPPfccI0aMICwsjG7dunH++efz888/A7Bq1Sri4+MBuOOOO1z3YdasWXCEddOe6Mstue/uxEYL+t3h76Eln2dbNNcnn3/+eQzDYMeOHdx3330kJydjGAaVlZUAvPHGGxx//PEEBwcTERHBb37zG5YtW9ag/fHjxzN+/Hh27drFeeedR3h4ONOnT/foexARaRNTRERaxG63m+Hh4eaoUaOaPe+Pf/yjCZirVq0yTdM0r7rqKjMxMbHReW+88YYJmOvXr3cde/jhh03ALCkpaXFcxcXF5oABA8yePXua33//vVlUVGQuWLDAjI+PN08++WSzpqbGdW5iYqJ5+eWXH7XNRYsWmYA5bdo0s6CgoMWxmKZplpSUmF9//bWZlpZmXnrppa7j+/fvNwHzwgsvNG+55RYzIyPD3L17t3n88cebI0eOND/66CPz97//vZmenm7u3bvXHD16tNm3b1+ztra2URsXXHCBef3115v79u0z09PTzT/84Q+mYRjmxx9/3CAOwHzsscdcx+x2uzl16lQzOjrafOutt8yCggJz586d5pQpU8yEhAQzPT39iO/r//7v/0zAXLlyZYvuQ3V1tTlmzBgzISHB/Pzzz82ioiJz8eLFZo8ePcxBgwa5PuObbrrJDAwMNPPy8hq8/rPPPjMB85NPPnHrPl9wwQXmddddZ+7Zs8dcv369+cMPPzR5T1rb7vTp080bb7zR3Lt3r5mVlWVOnz7dDAgIMPfv39/gPk+ZMsWMiIgwX3rpJTMrK8vMysoy582bZ957771t/ixM0zStVqt5wQUXHPVzeO2110yr1Wq+8cYbZlFRkZmXl2d+8cUX5iWXXOI6JycnxwTMJ554osn7cfg980Rfbul9b21sLe13rfk8j6Sln0FzffI///mPCZgzZswwn3/+eTM3N9d87bXXzMrKSvNvf/ubaRiG+f/+3/8zDx48aO7cudOcPn266e/vby5atMjV/rhx48yRI0ea55xzjvnTTz+ZOTk55ttvv33UuEREOoqSbhGRFsrLy3P9ot2cf/zjHyZg/ve//zXNDki6H3/8cRMwv//++wbH33nnHRMw33jjDdexlibdpmmajzzyiBkUFGQGBASYp556qnnLLbeYH3/8sVleXt6i17/88ssmYBYWFppmvV+8D//S4tNPPzUB86STTjLtdrvr+Oeff24C5sKFC13H6toYNGhQg3NN0zRHjRpl9u/f3/W4qYTkk08+aXRP6s6Ni4szb7311iO+n+nTp5uAmZWV1aL3P2/ePBMw33vvvQbH677QqEuifv31VxMwn3nmmQbnXXjhhWa3bt0afGnSlCPd5/79+ze6Ry1Juo/W7ogRIxq0m5mZaRqGYT766KOuYx988IEJmHPnzj1i+235LExnwgc0+Wf27Nmu866++mqzV69ezbblbtLdlr58JIff99bG1tJ+15rP80ha+hk01yfrku4//elPDY4XFBSYISEh5rRp0xocr6qqMtPS0szjjz/edWzcuHENvugUEfE1ml4uItJCLS1YVHeeYRgeu/aSJUsaVQdesmQJAAsXLiQuLo5TTjmlwWumTZuGxWJh4cKFR2x36NChDdqcOXOm67n77ruPjIwM3njjDU466STWrVvHRRddxMCBAxtN71y0aBFnn302cXFxWK3WBlNgd+zY0eDcs88+u8HjuirH48ePb3DPBg0aBMCuXbsaxT158uRG9/eCCy5g27ZtpKenH/H9fvbZZ1itVqZOndrgeFhYGGPHjuX7778/4mtba+HChVgslgbTw3FOQY+NjXV9LiNGjOD4449n7ty5rnOys7P5/PPPueqqq/DzO1R+pTX3+fzzz29xH2xNu+eee26Ddrt160ZcXFyDz+mLL77AMAwuu+yyI17TE5/FBRdcgHMAocGf559/3nXOiBEj2L17N3/4wx/4+eefXcs+PKGtfbk1972lWtrv6rTk82xOSz6DOs31ySlTpjR4vHz5csrLy5k2bVqD4wEBAUyZMoVffvmFwsJC1/GUlBSOP/74FsUsItLRlHSLiLRQTEwM4eHh7N27t9nz9u3bB0D37t2bPc9TVYfz8vKaXDMeEBBAdHQ0ubm5brcdHR3NJZdcwmOPPcaiRYv45ZdfKCoq4pJLLsFut4Pzl+MzzzyTbt26sXTpUsrLyzFNk3fffReAmpqaBm0mJSU1eBweHt7s8fq/WNdJTEw84rHm3m9WVhY2m43IyEj8/PywWq1YLBYsFgsLFixosOb1cD169IB6n+/R5OXlERMTQ0BAQKPnunXr1iDOWbNmsXbtWn755RcA5s2bR01NDddee63rnNbe56bW4zelrZ8fQERERIPPKTs7m5iYGIKCgo543bZ8Fq1x00038eijj/LVV18xevRooqOjmTp1qmtNd1u0pS+39r63VGv6XVOx0sTn6SnN9cnDn6v7/Jv6t63uWP0+0tL+LiLiDUq6RURayDAMzjjjDNatW9fsaOqXX35JQkICI0eOBCAyMrJBQao6zbVxuPHjxzcaSRo/fjw4vww4ePBgo9dUV1dTUFBAXFzcEdvdsGFDgzbffPPNZuMYMWIEU6dO5cCBA66CUW+//TZWq5WXXnqJAQMGEBgYCMDu3bubbONII12tmRnQ1PutOxYbG3vE18XFxREcHExlZSW1tbXYbDbsdjt2ux3TNJtNqOtGNb/88ssWxRgTE0N+fn6TydPBgwcbfC6XXXYZISEhrtHuV199lQkTJtC/f3/XOa29z/7+/i2K01OfX33x8fHk5+e7imE1pS2fRWv4+flx7733snPnTvbu3cs///lPtm3bximnnHLE99hSbenLrb3vLdWaftfSWD2luT55+HMxMTHQiv/WW9rfRUS8QUm3iEgr3HvvvRiGwR133NHk8y+88AJbt27l3nvvxWq1AtCnTx/Ky8sb/TL9+eefN3p9aGgoAFVVVS2O6fTTTycnJ4elS5c2OP7xxx9jt9s5/fTTW9xWnVdffZXVq1c3+Vx6ejqGYRAREeE6VjdSWaclCXxbfP75541mCnz66af079+f1NTUI77u/PPPp6Kigk8//bTV1zzjjDMYN24cTz/99BFnOyxevJjFixeD83Ox2+2NrvXDDz+Qm5vb4HOJjIxk+vTpvP3223z33Xds2rSJ6667rlH77XWfPd3u5MmTMU2Td95554jntOWzcFf37t256qqreOaZZ6isrHSNdrvz350ntOS+tza21vQ7X3bSSScRHBzMRx991OB4TU0Nn332GccffzxRUVFei09EpDWUdIuItMIJJ5zACy+8wPvvv8+MGTNYv3491dXVHDhwgDlz5nDTTTdx7bXXcsstt7hec9lllxEaGsqtt95KZmYm6enp/OlPf2pyOuTQoUMBWLBgQYunl95www307duXK6+8kiVLllBSUsKXX37JzTffzJgxY7j00ktb/T7T09M56aSTuOuuu9i6dStVVVXs3r2bu+66i2+++YZrrrnGNWI2ZcoUysvLufvuuyksLGTXrl3MnDnTtY61PfTt25cbb7yRAwcOkJmZya233sqaNWsabZ10uKlTpzJt2jSuv/565s6dS2ZmJqWlpfz666/cf//9/OUvf2n29e+99x6pqamcfPLJvPrqqxw8eJDq6mq2bNnCnXfeyZlnnklpaSkAM2bM4IQTTuCmm27i66+/pqSkhB9++IGrr76aAQMGcMMNNzRo+7rrrqOwsJCrr76aiIgILr744gbPt9d9bo92p06dyvnnn88f//hHXnnlFbKzszl48CBvvvkm9913n+uctnwWLTVr1iyefvpptmzZQmVlJfv372fu3LkEBwczZswYAIKDg+nduzeLFy9ul2nVTWnpfW9tbK3td74qKiqKBx54gP/+9788+uij5OTksGfPHmbOnEl6ejqPP/64t0MUEWkxJd0iIq107bXXsnLlSqxWK+eccw5hYWGMGDGCpUuXMn/+fF555ZUGUzbj4+P56KOP2Lt3Lz179mTSpEmMHj2ayZMnN2r7zDPP5E9/+hN33XUXgYGBLdqnOyIigqVLl3LaaadxySWXEBsby+zZs7n88sv55ptv3Jp2+ac//YmXX36ZjRs3ctZZZxEWFsaoUaNYsmQJ//73v3nppZdc555xxhnMnTuXTz/9lKSkJM4991xOP/10Lr/88lZft6XOPPNMJkyYwGmnnUbPnj357rvveP/99xsV5TqcYRi8//77zJkzh//85z/07duXlJQUZs2aRVhYGDfeeGOzr09OTmbFihXceeedvPzyywwYMICIiAjOO+88tmzZwvz5813T0AMCAli4cCGXXnop119/vWs/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xMSYSUlJZlBQkHnqqaeaGRkZrucHDRpkPvzww6Zpmqbdbjerq6vNFStWmIC5Y8eOVt2vO++804yKijIHDx5srly5stF7bU1bd999txkXF2empaWZoaGh5nvvvdfgff3vf/8z+/TpY4aHh5uJiYnmGWecYWZlZbl9T5vr8y3NRb0+0l1eXs4TTzzBGWec4e1QRERERKSzyTkA5S0rZiTtwzRNKqtrO/xPa6po9+3blz179vDuu+8eceun2NhY12jrtm3b2LVrF0uXLuW5555rdG5paSnp6elkZGQwbdo0pk+fTnl5OZmZmWRkZDB+/HjuvvvuRq9bvXo16enpZGVlcd9993HllVeSk5PTZDw7duxg2rRpPPXUU2RmZpKVlcXvfvc7pk2b1uQINMDHH39MTEwMU6dObfZ+bN26lWuvvZannnqKjIwMDh48SHV1NbNnz3adc/nll/PWW281eN1bb73FSSedRJ8+fVp1v7Zv305mZiYbN27kxBNPbPR8a9rat28f6enp7Nu3j/vuu4/Zs2e7PtMtW7YwZcoUrrrqKoqKisjKyuKuu+5i+/btbt9TT/D6mu7Ro0czevRob4chIiIiIp1NQTY8dysk94Xr/+btaLqsqhobF/zt6w6/7id3nUVQQMvSmauuuoqff/6ZK664glmzZnHcccdx+umnc8MNN5CYmNjg3MrKStLT06moqOC0007j22+/5dZbb21wzp///GdXUbGpU6fy2muvMWfOHFdxuQsuuKBB8ec6Dz/8MKGhoQDcdtttPPPMM7z99tuN2gd44YUXGDJkCIMGDWLz5s2YpslZZ53F/fffz8qVKznttNMavWbv3r306tXrqPfj5ZdfZtiwYVx99dUARERE8Je//IVJkyaRnp5OSkoKv/3tb3nggQdYvXo1o0aNwmazMX/+fB588MFW3685c+a0qOhYS9p6+OGHCQgIAOC3v/0t9957L/v27aNPnz68+OKL9OnTh/vvv9+1Vrz+4K4799QTvJ50i4iIiIi4JX07mHbI3uftSMTHWa1W/vOf//DXv/6V77//nmXLlvHyyy/zzDPPsHr1anr27ElVVRXXX3898+fPJzExkYiICPLy8khKSmrUXv1jISEhTR5rauR08ODBrp8tFguDBg1ix44dTca8efNmtm7dyvTp0xsc79OnzxFHZQMCAigvLz/q/dixYwdDhw5tcGzYsGEA7Ny5k5SUFHr16sXJJ5/Mm2++yahRo1i4cCH5+flceumlAK26X0f7IqA1bSUnJ7t+rvsCo27rrq1btzJy5MgjFmdz5556gpJuEREREemccg84/q6phJoq8G+8w420v0B/K5/cdZZXrttakZGRTJkyhSlTpnD77bfTs2dP5s6dy5w5c/jnP//JTz/9xO7du12J3YMPPsinn37qsZgrKiqIjo52PS4vL3cljocLCAhg/Pjxrbr+8OHD+eyzzygtLSUsLOyI54WGhjYoAFcXC/USWZxTzB9++GGeeOIJ3nnnHc4++2xiY2MBWnW/jrZdmafufVBQULNfOrhzTz3B62u6RURERETckrP/0M9lxd6MpEszDIOgAL8O/9OaraaaqoYdExNDSEiIa234li1bGDt2bIOR1IULF3roLjksWrTI9XNBQQG//voro0aNavLc8ePHs3jx4kYVuG02G3a7vcnXXHnllQD89a9/bfL5uorpxx13HEuWLGlQ/fvbb78lJCSE/v37u45dcskl5ObmsmDBAj755BMuv/xy13OevF+eamvcuHH88MMPrpHvOnVrvt25p56gpFtEREREOqcGSXeRNyMRH/f4448zZcoU3nzzTVauXMnChQuZMWMG5eXlzJgxA5wJ22effcb8+fNZunQps2bNYuXKlR6N48477+Tdd99l8eLFXHzxxXTv3p2LLrqoyXNnz55Nz549OfPMM/noo49Yvnw5L730EqNGjaK4uOkvmXr06MErr7zCE088wezZs1m4cCGrVq1i/vz5zJgxg6eeesrVtr+/P5deeik//PADb775Jrfffjt33323axsvnAXOzj77bP7whz9gsViYMmWK6zlP3i9PtXX99dcTHx/P2WefzRdffMHixYuZNWsWX331let9t/aeeoKml4uIiIhI52OzQV7GocflSrrlyB544AG+/PJL5s+fz7/+9S+Cg4MZMmQIK1euZNCgQQBcffXVFBQU8K9//YuamhomTJjAk08+yY8//uhqJzQ0lCFDhmCxHBq7DAsLY8iQIQ2uFxER0WD9dp13332Xf//73+zcuZMhQ4bw+uuvu4qv1cVU9zg0NJQlS5bwj3/8g3/84x/U1NQwcuRI3n//faKioo74Xi+//HJGjRrFCy+8wEMPPURNTQ19+vRh+vTprgS/ru1HHnmE2267jfDwcB599NEG1cvrXH/99dxzzz3MmDGjQTE0d+9XU+/V3bb8/PwYMmQIwcHBAISHh7N06VL+9re/MWfOHMLDw7nssss4//zz23RP28owW1Nr3wcVFxcTGRlJUVERERER3g7niOx2O9nZ2SQkJDTqdCKoj8hRqH/I0aiPSHOOyf6Rmw7/uunQ4wtvgZGTvBlRp9bSPlJZWcnu3bvp1atXi6pRi8OSJUuYMGECFRUVnfK+maZJbW0tfn6tm9Z/LGiuz7c0Fz1G/tUVERERkS6lrohaHU0vFxEfpaRbRERERDqfnMOS7nIVUhPfdaRp1tI1aE23iIiIiHQ+dUl3YAhUlWukW3zaqFGj2LBhg7fDEC/RVy0iIiIi0vnUVS7v7iiCpZFuEfFVSrpFREREpHOx2w+t6e7hrBqtkW4R8VFKukVERESkcynOhZoqsPhBan/HsTKNdIuIb1LSLSIiIiKdS93U8tgkCI9x/Kx9ukXERynpFhEREZHOpa6IWnwqhDr3xq2udIx+i4j4GCXdIiIiItK5uJLuNEf1cotzQx5NMRcRH6SkW0REREQ6l9x6SbdhQGik47EqmEsHe+edd5gwYUKrXvPKK69wxhlntFtMrXXWWWfxwgsvuB5XV1dz8803M3jwYFJTUykoKHCr3QkTJvDmm296MNLOGQNKukVERESkUzHNQ2u641Idf9dNMS8r9F5c4tMOHDhAamoqy5Yt82i7ZWVlZGZmtuo1JSUlZGVluR6/8MILnHXWWc2+5re//S2///3vGxxbtGgRqamp/P3vf29w/OWXX2bgwIHYbLYWxXPw4EFKSkpcj1999VU+++wz5s+fz/Lly4mMjGz0muLiYh588EFOOukkBgwYwJQpU/joo48wTdN1TmZmJqWlpS2Kob34Qgwo6RYRERGRTqW0ACrLwLBAbLLjWEhd0q2RbmlabW0t6enpVFV5f93/rFmzWLhwoetxSUkJBw8ebPY1gwYN4pNPPmlw7JtvvqG6uprPP/+8wfEvvviCnj17YrVa3Ypv48aNHHfccQwbNozU1FQslsYp45QpU/jss8+YM2cOCxYs4IYbbuDtt9/m7bffduuaxzol3SIiIiLSedSt545OBP8Ax8+aXi4esHr1aqZOnUq/fv0YN24cTz/9dKPR4vfee4/Ro0czbNgwrrvuOnJzcxu189VXX3HaaafRu3dvTjnlFD766KMGz8+fP5/LL78cgPfff59HHnmETZs2kZqaSmpqapPToSdNmkRGRgbbtm1zHVu0aBG33347P/30k+vLBNM0+f777znttNPAOVX8oYceYsSIEfTr148rrriCvXv3HvEenHfeecydO5evvvqK1NRULrvsskbn7N27l++//56nnnqKM888k379+nHuuefy/vvvM2PGjAbnFhQU8Pvf/54RI0YwZswYXnvttQbPT5gwgWeffZZZs2bRv39/brvtNgCGDBnCF1980eDcKVOm8OyzzzZ6bXPtH+6zzz6jb9++fPPNN82e52lKukVERESk86hfubxOXdJdpm3DvMI0HdXjO/pPvanMbbV69WomTZrEpEmT+Oyzz3j44Yd54YUXeOCBB1znLF68mJkzZzJz5kzmz59Pnz59uP/++xu0s3TpUqZMmcJZZ53FggULmD59Opdeeilffvml65z608vPO+88br75Zvr168fy5ctZvnw5U6dObRTfmDFjCAkJYdGiRQCUlpayatUqZs6cSXJyMsuXLwdg7dq15OfnM2nSJABuueUW5s2bxxNPPMF7771HcXExEydOpLKyssn78OqrrzJ16lQmTZrE8uXL+ec//9nonIAAx5ddGzZsaPTc4aPrc+bMYejQobz33nvMmjWLa6+9lhUrVriez8zM5I477mDYsGF88cUXrvudnp5OeXl5g7ays7MpLi5u8Nq77rqr2fbrmzdvHpdffjnPPPMMZ555ZpPntBe/Dr2aiIiIiEhb5B62npv608uVdHtFTRX8pfGIaLu79x0ICPJIUw899BDXXXcdt9xyCwADBw7kmWeeYdq0aTz66KMYhsFf//pXLrvsMtc5gwcPZtmyZWzevNnVzsMPP8y0adO46667XOesX7+eOXPmcM455zS6bkhICJGRkfj7+5Oamtro+Tr+/v6MGzeORYsWMXv2bH788Ud69epFcnIyp556KosWLXL9HRkZyXHHHUd6ejovv/wyCxYs4De/+Q0Ab731Fmlpabz++uvMnj270XUSEhIIDQ2loqLiiPEkJSVx2223ceutt/LGG28wYcIExo8fz5lnnkl4eHiDc6+++mrXWvQBAwbw4osv8u233zJmzBjXOZdeeim33nrrUT6hprWkfYB//OMfPPzww3zxxReMHz/erWu1hUa6RURERKTzqL9dWJ26QmqaXi5u+umnn5g3bx49e/akR48edO/enauuuqpBobS1a9c2StgOr1y+du1aTjnllAbHJk6cyLp169oc46RJk1i8eDE4p5ZPnDgRwJVs1x0/5ZRTsFqtbNiwAZvN1iCesLAwTjjhBNauXdumWJ566ilWr17N5MmT2bx5M1deeSV9+/blxx9/bHDe0KFDGzxOTExsNCX/uOOOczuOlrT/73//m0ceeYRFixZ5JeFGI90iIiIi0qk0mXTXTS9X0u0V/oGOUWdvXNdDKisruf/++7niiisaPZeYmAhAVVWVa2p1ncMfV1VVERjYMK7AwEBqamqw2WwtKm5WXFzM4MGDXY8vueQS/v73v3Paaadx7733snnzZhYvXswf//hHcCbds2fPpqysjB9//JGHHnrIFYthGPj7+zeKxxMF5UaNGsWoUaPAuXb77LPP5qabbmqQ0Df1fs3DlgUEBbk/W6El7ffo0YMdO3awadMmRowY4fa12kJJt4iIiIh0DuXFh7YFi0s5dDxEa7q9yjA8Ns3bW4YMGcL69eubneLdr18/1q9f3+DY4SPGAwYMaHRszZo19OnT54gJt9VqbZAohoeHu9ZoA4SGhgJw/PHHEx4ezscff8zq1atdI909e/YkMTGRf//73xQWFrqKqA0YMADTNFm/fr1rNNlms7F+/fpW7y1+NNHR0Zx99tn861//8kh7ERERDbYxM02Tffv2udXW5MmTufbaa13F65oqDtfeNL1cRERERDqHulHuyHgIDD503DW9XEm3uOfOO+9k/vz5vPTSS9hsNux2O6tXr+b22293nXPjjTfy8ssvs3LlSnBO5X733XcbtHPzzTfz6quvsmTJEgBWrVrFf/7zH9c68KakpKRw4MABysrKADAMw1XJPDU1lejoaAD8/PyYMGECf//73+nduzfJycmuNk499VSeeOIJ4uLiGDZsGDiT7jPPPJP/+7//o7CwEJvNxiOPPEJBQQHXXHON2/dq165d/P73v2fDhg3Y7XYANm/ezFtvvcXpp5/udrv1nXDCCbz55ptUVlZit9v5y1/+0ur90OubNm0ab775Jtdee22jz6wjKOkWERERkc4h15l0xx02Glk3vby60lHUS+QILr744gYJbWpqKmvWrGH69Om89tprPPbYY4SGhhIVFcUNN9zgKkAGcOWVV3LNNdcwfvx4IiMjuemmm7jyyisb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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "\"\"\"\n", "==================================\n", "Out-of-sample comparison: sample vs. shrunk covariance\n", "==================================\n", "\n", "We use a rolling window: estimate covariance on trailing 60 months,\n", "compute portfolio variance forecast, compare to realized variance\n", "over the next month. Lower Frobenius error = better estimator.\n", "\"\"\"\n", "window = 60\n", "dates = df_returns.index\n", "errors_sample = []\n", "errors_shrunk = []\n", "\n", "for i in range(window, len(dates) - 1, 6): # Every 6 months for speed\n", " train = df_returns.iloc[i-window:i].dropna(axis=1, thresh=window//2).dropna()\n", " test = df_returns.iloc[i:i+1][train.columns]\n", " \n", " if test.shape[1] < 20:\n", " continue\n", " \n", " # Shrunk covariance (recompute on this window)\n", " lw = ledoit_wolf_shrinkage(df_returns.iloc[i-window:i])\n", " S_shrunk = lw['cov_shrunk']\n", " \n", " # Find common tickers between train and the shrunk estimator\n", " common = train.columns.intersection(lw['tickers'])\n", " if len(common) < 20:\n", " continue\n", " \n", " # Sample covariance on common tickers only\n", " train_common = train[common]\n", " S_sample = np.cov(train_common, rowvar=False, ddof=1)\n", " \n", " # Shrunk covariance aligned to common tickers\n", " S_shrunk_aligned = pd.DataFrame(\n", " S_shrunk, index=lw['tickers'], columns=lw['tickers']\n", " ).loc[common, common].values\n", " \n", " # Realized covariance (outer product of next month's returns) on common tickers\n", " test_common = test[common]\n", " realized = np.outer(test_common.values[0], test_common.values[0])\n", " \n", " err_sample = np.linalg.norm(S_sample - realized, 'fro')\n", " err_shrunk = np.linalg.norm(S_shrunk_aligned - realized, 'fro')\n", " \n", " errors_sample.append(err_sample)\n", " errors_shrunk.append(err_shrunk)\n", "\n", "print(f\"Number of evaluation windows: {len(errors_sample)}\")\n", "print(f\"Mean Frobenius error (sample): {np.mean(errors_sample):.4f}\")\n", "print(f\"Mean Frobenius error (shrunk): {np.mean(errors_shrunk):.4f}\")\n", "print(f\"Improvement: {(1 - np.mean(errors_shrunk)/np.mean(errors_sample))*100:.1f}%\")\n", "\n", "fig, ax = plt.subplots(figsize=(10, 5))\n", "ax.plot(errors_sample, label='Sample Covariance', color='steelblue')\n", "ax.plot(errors_shrunk, label='Ledoit-Wolf Shrunk', color='coral')\n", "ax.set_xlabel('Evaluation Window')\n", "ax.set_ylabel('Frobenius Error')\n", "ax.set_title('Out-of-Sample Covariance Estimation Error')\n", "ax.legend()\n", "ax.grid(alpha=0.3)\n", "\n", "plt.tight_layout()\n", "plt.savefig('../images/05_risk_decomposition/ledoit_wolf_comparison.png', dpi=150, bbox_inches='tight')\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "99d9a4fd", "metadata": {}, "source": [ "## Portfolio Variance Decomposition\n", "\n", "Given a portfolio weight vector $w \\in \\mathbb{R}^N$, split $\\Sigma$ into its top-$k$ eigendirections and the orthogonal complement:\n", "$$\\Sigma = \\underbrace{\\mathbf{B}\\Sigma_f \\mathbf{B}^\\top}_{\\text{factor subspace}} + \\underbrace{(\\Sigma - \\mathbf{B}\\Sigma_f \\mathbf{B}^\\top)}_{\\text{orthogonal complement}},$$\n", "where $\\mathbf{B} \\in \\mathbb{R}^{N \\times k}$ holds the top-$k$ eigenvectors and $\\Sigma_f = \\text{diag}(\\lambda_1, \\dots, \\lambda_k)$ the top-$k$ eigenvalues. The portfolio variance decomposes **exactly**:\n", "\n", "$$w^\\top \\Sigma w = \\underbrace{w^\\top \\mathbf{B} \\Sigma_f \\mathbf{B}^\\top w}_{\\text{systematic}} + \\underbrace{w^\\top (\\Sigma - \\mathbf{B}\\Sigma_f \\mathbf{B}^\\top) w}_{\\text{idiosyncratic}}.$$\n", "\n", "**Geometrically:** the systematic term is $\\|\\Sigma_f^{1/2} \\mathbf{B}^\\top w\\|^2$ — the squared norm of the weight vector *projected into the factor subspace* (spanned by the top-$k$ eigenvectors), scaled by the eigenvalues. The idiosyncratic term is the variance living in the orthogonal complement — risk not captured by the top-$k$ common factors. (A strict *factor model* would assume this residual is diagonal, i.e. uncorrelated idiosyncratic risk; we keep the full residual so the split sums to 100% of total variance.)\n", "\n", "The number of factors $k$ comes from the Marchenko–Pastur analysis above." ] }, { "cell_type": "code", "execution_count": 8, "id": "226662f6", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Last rebalance: 2025-11-30 00:00:00\n", "Number of long holdings: 49\n", "Weight per stock: 0.0204\n" ] } ], "source": [ "\"\"\"\n", "==================================\n", "Reconstruct the long portfolio weights at the last rebalance\n", "==================================\n", "\"\"\"\n", "df_signal = pd.read_csv('../data/processed/momentum_signal.csv', index_col=0, parse_dates=True)\n", "\n", "# Take the last rebalance date\n", "last_date = df_signal.index[-2] # -2 because we trade t+1\n", "scores = df_signal.loc[last_date].dropna()\n", "\n", "n_long = max(int(len(scores) * 0.1), 1)\n", "long_tickers = scores.sort_values(ascending=False).head(n_long).index.tolist()\n", "\n", "# Equal-weighted weights\n", "w = pd.Series(1.0 / len(long_tickers), index=long_tickers)\n", "\n", "print(f\"Last rebalance: {last_date}\")\n", "print(f\"Number of long holdings: {len(long_tickers)}\")\n", "print(f\"Weight per stock: {w.iloc[0]:.4f}\")" ] }, { "cell_type": "code", "execution_count": 9, "id": "7351ba96", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Using top 9 PCs as statistical factors\n", "\n", "### Portfolio Variance Decomposition\n", "\n", "Total portfolio variance: 0.001336\n", "Systematic (factor) variance: 0.001212 (90.7%)\n", "Idiosyncratic variance: 0.000124 (9.3%)\n" ] }, { "data": { "image/png": "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4cOHjSTToUMHY4wxzz33nMmfP7+ZNGmSOXPmjNm1a5dp2bKlKVSokImJiXGMq1ixomnRooW57777zLZt28yJEyfMd999Z8xNTn/697//bfz9/dO1u7rejE5/yqjN1fky8sorrxhJZv369U7t7733npFkfvrppwzHxcfHmx9//NGUKFHC9O/f39G+Y8cOI8k88MADZtCgQebIkSNm48aNZuPGjebIkSNG0g1Pf7jZvI888ogZOnSoOXr0qDl69Ki59957TeHChc2ZM2ccfVNTU02rVq1MsWLFzIwZM8ypU6fM0aNHzaeffmrGjBljzLVT4tq2bWtKlSplvvvuOxMfH2/27Nlj2rRpYypUqOA03/WuP/0pI0OHDjWSzO+//56l9blS+4ULF0zNmjVNaGioWbZsmUlISDA///yzKV26tKlfv75JSUlx2mYPPvigeemll8zJkyfNnj17TPXq1U2LFi3MtGnTzIsvvmhiY2PN3r17TY0aNUzdunWdPkfaHF26dDGDBw82x44dM4cOHTJ9+vQxvr6+Zvny5Y6+rtY1YcIE4+/vb7777juTlJRk4uLizNy5c522Z0Y/Kzc6/Smj/lndTq78bGUkPj7e2Gw2M2LEiBv2y+j0p86dO5vChQubmTNnmvj4eLNx40YTGRlpypQpY06cOOHol7bfevjhh82+fftMXFycGTlypJFkPvzwwxuud+LEiUaSWbp0abplBQoUMAEBAcZut99wjutPf0pTo0YNExAQYFJSUsy7775rJJkffvjhhnOlWbp0qZFk3n33XXP27FmTkJBgVqxYYe699950fdP+jiZNmuTS3IA3ECqAPOj6UHH16lWze/du06pVK2Oz2czChQvNvn37jM1mMwMHDnQae/bsWVO4cGGnoFCxYkWTP39+c+TIkXTrymqoyMp6XQkVWZkvIwcOHDA2m8089dRT6dYTGhpqrl69esPx48ePN/nz53dcP5D2y79Bgwbp+roSKm4279133+3Ub8+ePUaS+eCDDxxtU6ZMuemXm2nTphlJZv78+U7tp0+fNoUKFTKvv/56pmNdCRUTJkwwkszXX3+dpfW5Unta4FuyZIlT+5w5c5y+dKdts5YtWzr1+/LLL42kdF/evvrqKyPJbN682dGWNse//vUvp75XrlwxlStXNg0bNsxyXffff3+68HI9T4SKrG4nV362MhIT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T6p69eqOp3cnJSVp6dKlevrpp1W3bl317t3b7W2XmVKlSmno0KE6ceKEjh49qr59++rAgQN68803HX1cratHjx768MMP9ddffyklJUUHDhzQ9OnTFRQUdMMvx6VLl1bx4sW1bNkyl041ys7t1KlTJ61du9bpNsg307p1a3Xs2FGvvfaavvnmGyUmJuqPP/5Q165dVaJECQ0fPtypf/369dWnTx/9/fffOn36tMaMGaMFCxbojTfeuOnRyOHDh+ubb77R2bNnlZCQoOnTp6t3794aMWKEWrVq5fbnvt6nn36qhg0bqnXr1nr//fd19OhRpaam6sCBAxozZowaNWqkuLg4R02jR4/Wjh07dOnSJZ08eVIfffSRfHx80h09Wb58uSpVqqSaNWt6rFbA47x9pTgAz8vslrLXs9vt5t133zXVq1c3fn5+Jjg42HTu3Nls27bNqV/FihVNdHR0hnMcPHjQtG7d2hQsWNBIMtWqVXMsy+yWsq6u19Vbyro63800b978hndYef/9903lypVNQECAqVGjhpk1a5bjjja7d+825h930pk+fXq68Znd/cnqvMWKFTNPPvmkU1tycrIZNWqUqVatmvHz8zOhoaHmqaeecrpN5+XLl8348eNNnTp1TEBAgAkODjYNGzY077777g3vhpN296e0Pz4+PqZIkSKmRo0a5oknnjArVqzIcJyr63Ol9lOnTpkBAwaYsmXLGl9fX1O+fHnz3HPPmfj4eEefzLZZ2r+Pzz//3Kk9o7sr/XOOyZMnm7CwMOPn52fq1q1rFi5cmO4zulLX3r17zcCBA021atVMQECAKVeunOnWrZvZsWOHo09mPys//vijiYiIMPnz53d6mnNm/a1sJ5PJz1ZGDh06ZPLly5flJ2onJyebV1991VSuXNnkz5/fFC9e3PTo0cMcPHjQaawkM3z4cLNw4UITGRlp/Pz8TJUqVczkyZNvWpu5dpe33r17m5IlS5pChQqZZs2amW+++calseYGt5TNSGpqqpk6dapp1aqVKVq0qPHz8zMVK1Y07dq1M9OmTXM8wfvkyZNm5MiRplatWiYwMNCULFnS3HvvvU63KTY8URu5iM3weEYAADIUExOjyMhITZ8+Xb169fJ2OTnaY489pr/++ktr1qzx+Nw2m03Dhw/XW2+95fG5c7oPPvhAr7/+uvbu3cuF2sjROP0JAABYNnbsWG3btk0LFy70dil5RnJyst58802NHDmSQIEcz9fbBQAAgNyvXLlyjme9wDMCAgJ07Ngxb5cBuIQjFQAAAAAs4ZoKAAAAAJZwpAIAAACAJYQKAAAAAJZwofYtZrfbdfz4cRUuXNjpibkAAABATmeMUVJSksqWLSsfn8yPRxAqbrHjx48rNDTU22UAAAAAbjty5IjKly+f6XJCxS1WuHBh6dpfRJEiRbxdDgAAAOCyxMREhYaGOr7TZoZQcYulnfJUpEgRQgUAAABypZudxs+F2gAAAAAsIVQAAAAAsIRQAQAAAMASQgUAAAAASwgVAAAAACwhVAAAAACwhFABAAAAwBJCBQAAAABLCBUAAAAALCFUAAAAALCEUAEAAADAEkIFAAAAAEsIFQAAAAAsIVQAAAAAsIRQAQAAAMASQgUAAAAAS3JEqDhz5oz+/PNPJScne3SMK33OnTunrVu36vz585n2OXLkiE6cOOFybQAAAMDtxKuhIjU1VX369FHZsmXVrl07lSxZUp999pnlMa702bFjhx577DFVqVJFdevW1aZNm9Kta+LEiapQoYKaNm2q2rVrKzw8XMuWLfPQpwcAAADyBl9vrnzs2LFasmSJ9uzZo7CwMM2cOVO9e/dW3bp1VbduXbfHuNJnzZo1atGihV5++WVVrVo13XquXr2qAwcOaO3atSpXrpzsdrv+85//6IEHHtC+fftUsmTJW7x1PKP96J+8XQKAPGjxqx29XQIAIAfx6pGKTz/9VH379lVYWJgkqUePHqpWrZqmTJliaYwrffr376/HH39cgYGBGa4nX758mjBhgsqVKydJ8vHx0ZAhQ5SUlKTNmzd7aAsAAAAAuZ/XQsWJEyd0/PhxNWzY0Km9UaNG+uOPP9we4868rtq+fbskqWLFipbmAQAAAPISr53+dObMGUlSsWLFnNqLFSum06dPuz3GnXldER8fr2effVadO3dWREREpv1SUlKUkpLieJ+YmChJstvtstvtbq/fXTaZbF8ngLzPG/szAED2c3V/77VQkT9/funal/B/SklJcSxzZ4w7897MhQsXFBUVpYIFC2ratGk37Dtu3DiNGjUqXfupU6eydHcrT6lQmFABwPPi4uK8XQIAIBskJSW51M9roaJcuXKy2WzpbtV6/PhxhYaGuj3GnXlv5MKFC+rQoYOSkpK0fPlyBQcH37D/iBEjNGTIEMf7xMREhYaGqkSJEipSpEiW12/V4SRbtq8TQN6XW25WAQCwJiAgwKV+XgsVhQoVUsOGDbVw4UL16NFDkpScnKxly5ZpxIgRjn5HjhzRxYsXVa1aNZfGuDqvKy5evKiOHTsqPj5ey5YtS3dKVUb8/f3l7++frt3Hx0c+Ptl/CYsRoQKA53ljfwYAyH6u7u+9ekvZN954Qx07dlT16tXVuHFjTZgwQYULF1b//v0dfUaNGqV169YpJibG5TGu9Dl79qwOHz7sOIS/b98+BQcHq3Tp0ipdurSuXLmiTp06affu3Zo5c6aOHj2qo0ePSpIqVKigokWLZuOWAgAAAHIur4aKe+65RwsXLtT777+vH3/8UZGRkVq1apWCgoIcfSpUqKD4+PgsjXGlz6pVq/Taa69JkmrXrq1JkyZJkgYMGKABAwbo/PnzOnPmjMqUKaMXXnjBqe7XX39dDzzwwC3dNgAAAEBuYTPGcCXvLZSYmKigoCAlJCR45ZoKHn4H4Fbg4XcAcHtw9bssJ8UCAAAAsIRQAQAAAMASQgUAAAAASwgVAAAAACwhVAAAAACwhFABAAAAwBJCBQAAAABLCBUAAAAALCFUAAAAALCEUAEAAADAEkIFAAAAAEsIFQAAAAAsIVQAAAAAsIRQAQAAAMASQgUAAAAASwgVAAAAACwhVAAAAACwhFABAAAAwBJCBQAAAABLCBUAAAAALCFUAAAAALCEUAEAAADAEkIFAAAAAEsIFQAAAAAsIVQAAAAAsIRQAQAAAMASQgUAAAAASwgVAAAAACwhVAAAAACwhFABAAAAwBJCBQAAAABLCBUAAAAALCFUAAAAALCEUAEAAADAEkIFAAAAAEsIFQAAAAAsIVQAAAAAsIRQAQAAAMASQgUAAAAASwgVAAAAACwhVAAAAACwhFABAAAAwBJCBQAAAABLCBUAAAAALCFUAAAAALCEUAEAAADAEkIFAAAAAEsIFQAAAAAsIVQAAAAAsIRQAQAAAMASQgUAAAAASwgVAAAAACwhVAAAAACwhFABAAAAwBJCBQAAAABLfL1dwMWLF/XTTz/p5MmTioyMVIsWLTwyxpU+V69e1aJFi/Tnn38qOjpaoaGhHqkPAAAAuJ149UjFiRMnVLt2bY0dO1abN29W165d1atXL8tjXOnz3XffKTw8XP/97381bNgw7d+/3yP1AQAAALcbrx6pGD58uAoXLqy1a9fK399fMTExql27th5++GHdf//9bo9xpU+JEiW0cuVK5cuXL8MjFO7WBwAAANxuvHak4urVq/rhhx/Up08f+fv7S5Jq1qypZs2a6ZtvvnF7jKvztmjRQhUrVvRofQAAAMDtyGtHKo4cOaILFy6oWrVqTu133nmnNmzY4PYYd+b1VH2SlJKSopSUFMf7xMRESZLdbpfdbnd5/Z5ik8n2dQLI+7yxPwMAZD9X9/deCxVJSUmSpODgYKf24OBgxzJ3xrgzr6fqk6Rx48Zp1KhR6dpPnTql5ORkl9fvKRUKEyoAeF5cXJy3SwAAZANXvz97LVQUKFBA+sf/5KdJSEhQwYIF3R7jzryeqk+SRowYoSFDhjjeJyYmKjQ0VCVKlFCRIkVcXr+nHE6yZfs6AeR9JUuW9HYJAIBsEBAQ4FI/r4WKihUryt/fP91dl/bv368qVaq4PcadeT1VnyT5+/s7rsH4Jx8fH/n4ZP8lLEaECgCe5439GQAg+7m6v/fabwVfX1917NhRX331leNcrYMHD+rXX3/VAw884Oi3ZMkSffHFFy6PcXVeT9UHAAAA3O5sxhivnXS/f/9+NWnSRJGRkWrYsKFmz56tKlWqaOHChcqXL58kqW/fvlq3bp1iYmJcHuNKn507d2rRokVKSEjQmDFjNGDAAFWuXFlNmjRRkyZNXJ7nZhITExUUFKSEhASvnP7UfvRP2b5OAHnf4lc7ersEAEA2cPW7rFePX1euXFkxMTHq3LmzbDab3nzzzXRf2Nu3b6/HH388S2Nc6XPp0iXFxsbq0qVLeuGFF1SwYEHFxsbq/PnzWZoHAAAAuN159UjF7YAjFQDyIo5UAMDtIVccqQAAAACQ+xEqAAAAAFhCqAAAAABgCaECAAAAgCWECgAAAACWECoAAAAAWEKoAAAAAGAJoQIAAACAJYQKAAAAAJYQKgAAAABYQqgAAAAAYAmhAgAAAIAlhAoAAAAAlhAqAAAAAFhCqAAAAABgCaECAAAAgCWECgAAAACWECoAAAAAWEKoAAAAAGAJoQIAAACAJYQKAAAAAJYQKgAAAABYQqgAAAAAYAmhAgAAAIAlhAoAAAAAlhAqAAAAAFhCqAAAAABgCaECAAAAgCWECgAAAACWECoAAAAAWEKoAAAAAGAJoQIAAACAJYQKAAAAAJYQKgAAAABYQqgAAAAAYAmhAgAAAIAlhAoAAAAAlhAqAAAAAFji6+7AdevWac2aNTp79my6ZWPGjLFaFwAAAIBcwq1QMX78eL344ouKjIxUSEiI56sCAAAAkGu4FSomTJigOXPmqEuXLp6vCAAAAECu4tY1FRcuXFC7du08Xw0AAACAXMetUNGoUSOtXr3a89UAAAAAyHXcOv2pYcOG6tatm5599lmFh4fLZrM5Le/Vq5en6gMAAACQw7kVKiZPnqz8+fNr8uTJGS4nVAAAAAC3D7dCRWxsrOcrAQAAAJAr8fA7AAAAAJa4/fC7ixcvaubMmdq9e7eMMYqIiFDPnj0VGBjo2QoBAAAA5GhuHanYtWuXqlatqqFDh2r9+vXauHGjhg4dqqpVq2rXrl2erxIAAABAjuVWqBg0aJBatmypo0ePatWqVfr999919OhRtWjRQoMGDfJ8lQAAAAByLLdOf1q9erUOHDigQoUKOdoKFSqkd955R5UqVfJkfQAAAAByOLeOVPj5+SkxMTFde0JCgvz9/T1RFwAAAIBcwq1Q0alTJ/Xu3Vtbt26VMUbGGG3ZskW9evVSVFSU56sEAAAAkGO5FSomTpyookWLqm7dugoMDFRAQIDuuusuFS9eXBMnTvR8lQAAAAByLLeuqShatKgWLlyomJgY7dy5UzabTREREapZs6bnKwQAAACQo7n9nApJqlmzpuUgsWXLFn388cc6efKkIiMjNWTIEIWEhFge44k+xhh9//33Wrhwoc6dO6cKFSroiSeeUO3atS19ZgAAACAvcfn0p48//lgff/yx0+vM/rhq3bp1aty4sfLnz6+uXbtq5cqVatq0qS5evGhpjKf6vPrqq+rbt68iIyP16KOPKjk5WQ0aNNDatWtd/owAAABAXmczxhhXOoaHh0uS9u3b53idmX379rm08tatWysoKEhz5syRrt09qly5cho3bpyee+45t8d4qk/lypXVrVs3jR071rH+iIgIdejQQePHj3fpMyYmJiooKEgJCQkqUqSIS2M8qf3on7J9nQDyvsWvdvR2CQCAbODqd1mXj1Ts27fPERbSXmf2xxWXLl3Sb7/9pvvvv9/RFhQUpLZt2+rnn392e4yn+khSjRo1tHPnTqXlrri4OMXGxnLtCAAAAPAPbl1T4evrqytXrmR52T8dOXJEV69eVWhoqFN7+fLltWLFCrfHeKqPJE2bNk1PPfWUwsPDFRoaqt27d+v111/XY489lunnSklJUUpKiuN92vM87Ha77Hb7TbeLp9nk0oEoAMgSb+zPAADZz9X9vVuh4urVqxm2X758Wb6+rk15+fJlSVJgYKBTe4ECBRzL3BnjqT6SNHv2bK1YsULDhw9X5cqVtWTJEr399ttq27atatSokWGN48aN06hRo9K1nzp1SsnJyZlsjVunQmFCBQDPi4uL83YJAIBskJSU5FK/LIWKKVOmZPha11LMhg0bVK1aNZfmCg4OliSdPXvWqf3MmTOZ3v3JlTGe6nPhwgUNGTJE77zzjp555hlJ0oMPPqi///5bL730kubNm5dhjSNGjNCQIUMc7xMTExUaGqoSJUp45ZqKw0m2bF8ngLyvZMmS3i4BAJANAgICXOqXpVAxZsyYDF9LUv78+RUWFuby3Z/Kly+v4sWLa8uWLerY8f+/4G/Lli2qV6+e22M81SchIUHJycm64447nGqoVKmStmzZkunn8vf3l7+/f7p2Hx8f+fi49axBS4wIFQA8zxv7MwBA9nN1f5+l3woHDx7UwYMHVa9ePcfrtD979+7V0qVL1bhxY5fne/TRRzV16lSdPn1akrR48WJt2bJFffr0cfSZMGGCBgwYkKUxnuhTtmxZVahQQV9++aXjdK+4uDgtXLgwS58RAAAAyOvcuqZi06ZNHln5G2+8oR07dqhKlSqqUqWKduzYoTfffFPNmjVz9ImJidG6deuyNMZTfWbOnKmePXvqjjvuUMWKFbVt2zY1bNhQb7zxhkc+PwAAAJAXuPycin+aMGHCDZcPHjw4S/Pt2rVLJ0+eVEREhEqVKuW0bOfOnYqPj1fTpk1dHuPJPqmpqdqzZ4/OnDmjihUrKiwsLEufjedUAMiLeE4FANweXP0u61aouP45DXa7XUeOHNH58+dVvXp17dq1y72q8yBCBYC8iFABALcHV7/LunX6U0xMTLq2lJQUPfXUU6pevbo7UwIAAADIpTx2+w5/f3+9/fbbmjp1qqemBAAAAJALePyegLGxsZ6eEgAAAEAO5tbpTz///HO6tnPnzumDDz5QkyZNPFEXAAAAgFzCrVARFRWVri0kJETNmzfXxIkTPVEXAAAAgFzCrVBx5coVz1cCAAAAIFfy+DUVAAAAAG4vboeKn3/+We3bt1eFChVUoUIF3XvvvVqyZIlnqwMAAACQ47kVKiZNmqQuXbqoTJkyGj58uIYPH67SpUurU6dO+vDDDz1fJQAAAIAcy61rKsaNG6dp06apW7duTu3t27fXsGHD9Mwzz3iqPgAAAAA5nFtHKs6fP68OHTqka+/YsaPOnz/viboAAAAA5BJuhYr69etr0aJF6doXLVqk+vXre6IuAAAAALmEy6c/zZgxw/G6SZMm6tOnjxYvXqwGDRrIGKNNmzZp5syZGjZs2K2qFQAAAEAOZDPGGFc6li5d2uVJY2NjrdSUpyQmJiooKEgJCQkqUqRItq+//eifsn2dAPK+xa929HYJAIBs4Op3WZePVBAUAAAAAGSEh98BAAAAsMTlIxUff/yxJGnAgAGO15kZMGCA9coAAAAA5Aouh4rx48dL1wJD2uvMECoAAACA24fLoWLfvn0ZvgYAAABwe3Prmopnn33W85UAAAAAyJXcChVTp05VSkqK56sBAAAAkOu4FSoaN26sZcuWeb4aAAAAALmOy9dU/FOzZs3UvXt39evXTxEREfLz83Na3qtXL0/VBwAAACCHcytUfPLJJwoMDNSMGTMyXE6oAAAAAG4fboUKnq4NAAAAII1b11T4+maeRW60DAAAAEDe41aouHr1aobtly9fJlQAAAAAt5ksJYApU6Zk+FqS7Ha7NmzYoGrVqnmuOgAAAAA5XpZCxZgxYzJ8LUn58+dXWFiYPv74Y89VBwAAACDHy1KoOHjwoCSpfv362rRp062qCQAAAEAu4tY1FQQKAAAAAGncvqp63bp1WrNmjc6ePZtu2fWnRgEAAADIu9wKFePHj9eLL76oyMhIhYSEeL4qAAAAALmGW6FiwoQJmjNnjrp06eL5igAAAADkKm5dU3HhwgW1a9fO89UAAAAAyHXcChWNGjXS6tWrPV8NAAAAgFzHrdOfGjZsqG7duunZZ59VeHi4bDab0/JevXp5qj4AAAAAOZxboWLy5MnKnz+/Jk+enOFyQgUAAABw+3ArVMTGxnq+EgAAAAC5klvXVAAAAABAGrcffnfx4kXNnDlTu3fvljFGERER6tmzpwIDAz1bIQAAAIAcza0jFbt27VLVqlU1dOhQrV+/Xhs3btTQoUNVtWpV7dq1y/NVAgAAAMix3AoVgwYNUsuWLXX06FGtWrVKv//+u44ePaoWLVpo0KBBnq8SAAAAQI7l1ulPq1ev1oEDB1SoUCFHW6FChfTOO++oUqVKnqwPAAAAQA7n1pEKPz8/JSYmpmtPSEiQv7+/J+oCAAAAkEu4FSo6deqk3r17a+vWrTLGyBijLVu2qFevXoqKivJ8lQAAAAByLLdCxcSJE1W0aFHVrVtXgYGBCggI0F133aXixYtr4sSJnq8SAAAAQI7l1jUVRYsW1cKFCxUTE6OdO3fKZrMpIiJCNWvW9HyFAAAAAHI0t59TIUk1a9YkSAAAAAC3uSyd/hQTE6Po6OhMlz/yyCOKiYnxRF0AAAAAcokshYq33npLDz74YKbLH3zwQb399tueqAsAAABALpGlULFmzRo1btw40+WNGzfWmjVrPFEXAAAAgFwiS6Hi2LFjKl26dKbLS5curaNHj3qiLgAAAAC5RJZCRfHixbVv375Ml+/fv18lSpTwRF0AAAAAcokshYq2bdvqrbfeynT5uHHj1K5dO0/UBQAAACCXyFKoePnllzVnzhy1adNGP/30k/bt26e9e/fqp59+Ups2bTRv3jy9/PLLWSrg/fffV+XKlVWoUCE1btxYa9eu9cgYT/XZt2+fHnnkERUvXlwVKlTQmDFjdOXKlSx9RgAAACAvy1KoqFq1qpYsWaJjx44pKipKVapUUdWqVRUVFaXjx49r6dKlCg8Pd3m+zz//XMOHD9c777yj/fv3q0mTJrrnnnt05MgRS2M81efQoUNq3LixChQooC1btmjLli26evWq1q9fn5XNBgAAAORpNmOMyeogu92uzZs366+//pLNZlOVKlVUr149+fhkKaMoIiJCrVu31qRJkyRJxhiVL19effr00Ztvvun2GE/16dWrl7Zu3art27dn+bOlSUxMVFBQkBISElSkSBG35rCi/eifsn2dAPK+xa929HYJAIBs4Op3Wbe+Kfv4+KhBgwbq2bOnevTooQYNGmT5S/e5c+e0e/dutWrVytFms9nUqlWrTG9L68oYT/Wx2+368ccf1b17d7cDBQAAAHA78PXWik+cOCFJKlmypFN7iRIltGnTJrfHeKpPXFyckpKSFBgYqJYtW2rz5s0qW7as+vTpoxdffFG+vhlvupSUFKWkpDjeJyYmStdCit1uv+l28TSbsnwgCgBuyhv7MwBA9nN1f++1UJEZHx8fZfWMLFfGZLVP2gYcNWqUZs2apWbNmmn9+vXq2rWrrl69qldffTXDOcaNG6dRo0alaz916pSSk5Oz8Kk8o0JhQgUAz4uLi/N2CQCAbJCUlORSP6+FirSH6J06dcqpPS4uTqVKlXJ7jKf6FC9eXL6+vurRo4c6dOggSWrXrp0ef/xxff3115mGihEjRmjIkCGO94mJiQoNDVWJEiW8ck3F4SRbtq8TQN53/ZFeAEDeFBAQ4FI/r4WKokWLqmrVqvr111/14IMPStcull65cqV69uzp9hhP9fHz88vwWhGbzSabLfMv6v7+/vL390/X7uPj45VrM4wIFQA8j2vNAOD24Or+3u3fClu3btXzzz+vLl26ONpmzJihixcvujzHCy+8oKlTp2rx4sVKSEjQK6+8orNnz2rAgAGOPv3791edOnWyNMZTfYYPH64ZM2ZoxYoVunz5sn7//Xd98cUX6tatm7ubDQAAAMhz3DpS8fPPP+vBBx9UVFSUfvzxR0f7vn37NGHCBL300ksuzfPUU08pPj5ejz/+uOLi4lSzZk0tXLhQYWFhjj5Xr151eticK2M81adLly6aMGGC+vbtq8OHDys0NFRDhw7V8OHD3dlsAAAAQJ7k1nMq6tevr2HDhik6Olo2m81xcfOePXt033336e+///ZYgXa7XcYY5cuXz2NzZieeUwEgL+I5FQBwe3D1u6xbRyp27dqlTp06SdeuMUhTrlw5HT161J0pM8V5uwAAAEDO5tY39qCgIEd4+GeoWLduncqVK+e56gAAAADkeG6Fiu7du2vgwIGOh8ilpqZq8eLF6tu3b6Z3bgIAAACQN7kVKsaOHauCBQuqXLlystvtKlSokO69917Vr18/0+c3AAAAAMib3LqmIjAwUN9//712796tTZs2yW6366677lJkZKTnKwQAAACQo1l6+F316tVVvXp1z1UDAAAAINdx6/Snv/76S6+//nq69tdff1179+71RF0AAAAAcgm3QsVzzz2nZs2apWtv2rSpBg4c6Im6AAAAAOQSboWKVatWqVGjRunaGzdurFWrVnmiLgAAAAC5hFuhIiQkRDExMenat2/f7pWnRgMAAADwHrdCRXR0tJ588kmtWbNGdrtddrtdq1ev1pNPPqno6GjPVwkAAAAgx3Lr7k9jxozRvn371LRpU/n5+ckYo9TUVHXu3Fljx471fJUAAAAAciy3n1Mxb9487dixQ3/88Yds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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "\"\"\"\n", "==================================\n", "Variance decomposition using top-k PCs as factors\n", "==================================\n", "\"\"\"\n", "# Align weights to PCA tickers\n", "pca_tickers = pca_result['tickers']\n", "w_aligned = w.reindex(pca_tickers).fillna(0).values\n", "\n", "cov = pca_result['cov']\n", "eigenvalues = pca_result['eigenvalues']\n", "eigenvectors = pca_result['eigenvectors']\n", "\n", "k = n_signal # Number of signal PCs\n", "print(f\"Using top {k} PCs as statistical factors\")\n", "\n", "# Factor loadings: B = eigenvectors (N x k)\n", "B = eigenvectors[:, :k]\n", "\n", "# Factor covariance: diagonal matrix of top-k eigenvalues\n", "Sigma_f = np.diag(eigenvalues[:k])\n", "\n", "# Idiosyncratic variance: residual variance per stock\n", "# D = diag(Sigma - B Sigma_f B^T)\n", "Sigma_factor = B @ Sigma_f @ B.T\n", "\n", "# Portfolio variance\n", "total_var = w_aligned @ cov @ w_aligned\n", "systematic_var = w_aligned @ Sigma_factor @ w_aligned\n", "# Idiosyncratic = variance in the orthogonal complement of the top-k factor\n", "# subspace. Equals total - systematic by construction, so the split sums to 100%.\n", "idiosyncratic_var = total_var - systematic_var\n", "\n", "print(f\"\\n### Portfolio Variance Decomposition\\n\")\n", "print(f\"Total portfolio variance: {total_var:.6f}\")\n", "print(f\"Systematic (factor) variance: {systematic_var:.6f} ({systematic_var/total_var*100:.1f}%)\")\n", "print(f\"Idiosyncratic variance: {idiosyncratic_var:.6f} ({idiosyncratic_var/total_var*100:.1f}%)\")\n", "\n", "# Plot\n", "fig, ax = plt.subplots(figsize=(8, 5))\n", "ax.bar(['Systematic', 'Idiosyncratic'], [systematic_var, idiosyncratic_var], \n", " color=['steelblue', 'coral'])\n", "ax.set_ylabel('Variance Contribution')\n", "ax.set_title(f'Portfolio Variance Decomposition (Top {k} PCs)')\n", "ax.grid(alpha=0.3, axis='y')\n", "\n", "plt.tight_layout()\n", "plt.savefig('../images/05_risk_decomposition/variance_decomposition.png', dpi=150, bbox_inches='tight')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 10, "id": "3b1f2340", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAf0AAAHpCAYAAACIi+UFAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjExLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlcelbwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAf9dJREFUeJzt3XdYU1cfB/BvCBD2BlFQUFFw4sC9cO89a61bq9XXuq3WWrVWOmyr1da2rjqq1r3qqFvr3lscDGUKsleA5L5/ANFIwDCTkO/nefI85txzTs65hvzuOffce0WCIAggIiKiMs9A0w0gIiKi0sGgT0REpCcY9ImIiPQEgz4REZGeYNAnIiLSEwz6REREeoJBn4iISE8w6BMREemJMh/0k5KSIBKJ8M033+hEvWVFSeyfkt7n/D8lXXL58mWIRCLs27dP000hHVKooB8YGIgpU6bAy8sL5ubmsLGxQd26dfHJJ5/gzp07xd9KDYmOjoZIJMKyZcs03RS1RUdH47PPPkPNmjVhYWGB8uXLo3379tiwYQNSU1OV8hW1byWxf3RlnxsaGkIkEilelpaWaNKkCf78889ceVNTU/Hzzz+jVatWsLW1hYmJCTw8PNCzZ0/s2bMHmZmZGulDUb27D95+PXv2TNPNK5D58+fn2ZexY8dqunklIiIiIs8+i0QipKWlFevndenSBfXq1SvWOqngDAta4MCBAxg6dCgaN26M1atXw8fHByKRCFevXsXXX3+NFi1aICkpqWRaq0UsLCygbXcwjouLQ6NGjSCXy/Hrr7+iZcuWSE9Px8aNGzF58mTEx8dj6tSppdKWktg/2rbPe/furRhlvXjxAvPnz8eoUaMQFxen2M9hYWHo2rUroqKi8NVXX6Fbt26wt7dHQEAA1q1bh8GDB2Pv3r3o0aOHhntTOG/vg7Lg0aNH8PLy0nQzStWkSZOwatUqTTeDSkmBgv6TJ08wZMgQtG3bFgcOHIBYLFZsa9euHdq2bYvFixeXRDtJDVu3bkVQUBD27t2L7t27K9JnzpyJTp064eHDhxptX1lWqVIlrF27FkeOHMFPP/2kCPqDBg3CixcvcPPmTVSuXFmR38vLC99//73S/xMRUUkr0PT+d999h9TUVPz4449KAT+HSCTCl19+qZR2+/Zt9OrVSzGtWbduXaxevVopz7JlyyASiRAWFoaZM2fC2dkZRkZGAABfX180bdoUQUFB6NmzJ6ysrNCnTx8AgEwmw7Jly1C7dm2YmJjA1tYWAwYMwPPnz9/bFwsLC8U0lpGREdzd3TFt2jQkJiYCAK5fvw5HR0cAwKxZs3JN9eV1/jcxMRHTp0+Hm5sbjI2N4eLigokTJ+L169eKPCEhIRCJRFi1ahUOHDigaH+tWrVw8ODBXG0dMmQIRCIRIiIi8u1TTEwMAMDFxSXXtrp162LIkCFq9a0k98+vv/4Kb29vWFhYwNnZGT179sS1a9eKVGdmZiZ++OEHeHt7w8zMDBUqVMCIESPw8uVLtftTHIyNjVG5cmWEhIQAAE6cOIELFy5g2rRpSgH/bb6+vvD19VVr/6iSlpYGOzs7xf/t22QyGSpUqIDevXsXuv6iWLJkidJ0sbW1Ndq3b49Tp04p5Rs2bBhcXV0RFRWFAQMGwMrKCq6urorficjISAwcOBDW1tZwdHTM9RtTkM8qCg8PDwwYMAB3795Fu3btYG5ujsmTJwPZp3C++OILVK9eHRKJBE5OThg5cqTS3+zb5+A3bNgADw8PmJiYwMfHBxcuXMj1eampqfjyyy9Ro0YNmJiYwM3NDZMnT0Z0dHSuvOrUVxgTJkxQ7FMDAwPY29ujR48euHHjRq68Z8+eRbdu3WBnZwdLS0u0atUKR44cAbIPco8dO4Y7d+4o6jMxMVEqv3XrVvj4+MDMzAxWVlbo2LFjrn7kFw+uXbuGbt26wcnJCZaWlmjYsCH++OMPyGSyYtkXZYZQAC4uLkKVKlXUzn/r1i3BzMxM6Nixo/D48WMhOjpa+OmnnwSxWCzMmjVLke/7778XAAhDhw4VNmzYIMTExAi///67IAiC0KZNG6Fu3bpC165dhQsXLgjR0dHCX3/9JcjlcqFv376Cra2t8NdffwmxsbHC8+fPhV69eglOTk5CaGioIAiCkJiYKAAQ/Pz88mxnYmKicOzYMaFixYrC4MGDFelRUVECAOH7779XWebdetPT04UmTZoITk5Owj///CPEx8cLZ86cEdzc3IQaNWoIiYmJgiAIwsuXLwUAwoABA4SJEycKwcHBQkREhDBgwADB2NhYePnypdJnDR48WAAghIeH57u/T58+LQAQ+vXrJ8TGxuabN7++ldT++fPPPwWxWCxs3rxZiI+PF16/fi0cPnxYGDRoUKHrlMvlQq9evQQrKythzZo1QkREhBARESFs2rRJmDdvXoH6o853JYdYLBZ69+6tlCaVSgUHBwehUqVKgiAIwowZMwQAwtWrV99bn7r7R5XJkycLEolEeP36tVL6wYMHBQDC/v37i1R/XlTtg7xkZmYKAQEBwvjx4wUTExPh4cOHim0ffvihUL58eWHIkCHC2bNnhfj4eGHlypWKtvfo0UM4deqUEB8fL6xevVoAIGzfvr1Qn5WXzz//XAAgPHr0KM88VatWFVq3bi107dpVuHXrlhAeHi7s3LlTkEqlQosWLQQXFxfhwIEDQnx8vPDgwQOhZcuWQrVq1YSEhARBEATh0qVLAgBh8ODBwvz584Xw8HAhODhYaNOmjWBvb6/4fRAEQUhLSxOaNm0qlCtXTvj777+F169fCy9evBB++eUXYdmyZQWuT5Xw8HABgDBp0qT37h8h+/ft0aNHQv/+/QV7e3ul36O//vpLMDAwEEaNGiU8fvxYSExMFC5cuCB07dpVkadz586Ct7e3yrp/+OEHAYCwYMECITIyUnj+/LkwePBgwdDQUDhx4oQiX17xIDo6WrCxsRGGDRsmvHjxQkhJSRFu374tTJgwQbh06ZJa/dMXagf9zMxMQSQSCb6+vmpX3q1bN8HGxkaIj49XSv/4448FsVgsBAUFCcJbQf+LL77IVUebNm0EAMKVK1eU0vfv3y8AEDZv3qyUnpiYKDg4OAiffvqp4r26P+Rr164VAAhxcXGCUIgAtGnTJgGAsGPHDqW8OcE4p56coO/t7S3I5XJFvvDwcEEkEglff/31e9ualyVLlggmJiaCsbGx0KZNG2HKlCnCvn37hJSUFKV8BQn6OYq6f0aOHClUrlw5388oaJ27du0SAAjr169Xux959acoQf/FixfCiBEjBACKH+UBAwYIAISIiAi12qPO/lHl9u3bAgBhxYoVSul9+vQRnJ2dhYyMjCLVnxexWCwAyPUaM2ZMvuUcHR2Fzz77TPH+ww8/FAAIR48eVcpXs2ZNwdzcXDh06JBSep06dYSOHTuq1cZ3PysvOUFf1SsqKkoQsoO+oaGh4ncrxy+//CIAEE6fPq2UHhoaKkgkEsV3OSdId+vWTSnfjRs3BADCxo0bFWnLly8XAAjHjh3Ls80FqU+VnKCv6vXll1/mWS4pKUkQi8XCqlWrBEEQhJSUFMHOzk5o27Ztvp+XV9BPSEgQLCwshF69eimlZ2RkCO7u7kpl8ooHJ06cEAAIFy5cyLcNJAhqT+8XdAGVIAg4deoUOnToACsrK6VtAwYMgEwmw5kzZ5TSe/XqpbKucuXKoXHjxkppBw8ehFgsRt++fZXSLSws0LRpU5w9ezbf9p0+fRpdunSBg4MDxGKx0jRyYVcenzx5EgYGBkrTqciekrK3t8fJkyeV0rt16waRSKR47+zsDAcHBwQEBBTq8wHg888/R1hYGDZv3oxmzZrh7t276N+/P7y8vHDp0iW16ymJ/ePt7Y3AwEBMmjQJ165dK5Zpt8OHD0MkEuGDDz7IN19J9Gf//v2KqUovLy88fPgQa9euxYwZMwpVX2H3j7e3Nxo2bIj169cr0l69eoV//vkHI0aMgKGhYZHqz0/v3r2RPXhQvNauXQsASEhIwKxZs1C9enWYmJgo9lVUVFSufW5kZIQOHToopXl5eSEtLQ2dOnVSSq9Ro0auvxF1PmvLli25VqjnnIrJ8ejRo1z9cXBwUGz39vaGm5ubUpmDBw/CwcFB6TQNAFSoUAE1atTI9Vv07jqO2rVrA4BSnw4fPgwHB4dcfVdFnfryM2nSpFx9XrhwIZB9amXixImoXLkyjI2NIRKJYGFhAZlMptivly9fRkxMDD788EO1Pu9dV65cQVJSEvr166eUbmhoiN69e+POnTtKp0dVxQNPT09IJBJMnToV+/fvR0JCQqHaog/UDvqGhoaoUKECXrx4oVb+lJQUpKWlwdnZOde2nLR3z02pOhedV3pERARkMhmsra1haGgIsVgMAwMDGBgY4NChQ0pfknddvnwZHTt2hLOzMy5cuICUlBQIgoDt27cDADIyMtTq47tev34NOzs7GBsb59rm7Oycq7/ly5fPlc/KygpxcXGF+vwctra2GDRoEPz8/HD69GncuHED8fHxGDRoEORy+XvLl9T+mTx5Mr7++mscPXoUjRs3hq2tLfr27Vukc8qvXr2CnZ1drvODpdGftwNecnIyrl69ijFjxii25wQHdf9mirJ/xo4dizt37ijOtW7atAkZGRkYPXp0sdRfGP369cOmTZuwfPlyhIeHQy6XQxAEuLu759rnjo6OudYJWVpawt7eXrG+5+30d/9GCvJZRZHXb1F0dDQMDQ2VfotEIhFu376d67fo3b97Y2NjSCQSpT69evUqz9/Dd6lTX2HIZDK0b98eJ06cwIYNGxAdHQ25XA65XA4jIyPFfn316hWQz+/3++TsH3VjharPcXV1xeHDh2FiYoL+/fvD1tYWjRs3xm+//abWb54+KdBCvi5duiAgIABPnjx5b14zMzOYmJggMjIy17actLePoJF9tK+KqnQHBweYmpoiLS0NmZmZkMlkii+kIAj5/tBu3boVYrEYa9asURwhIvv+A0VhZ2eHmJgYlT8ykZGRufr79ii/JHl7e6Nv374ICQlBUFDQe/OX1P4xNDTEvHnz8Pz5cwQHB2PlypV48uQJWrduXei6HR0dERMTk+81xSXVn/fp0qULACgWM71PUfbPBx98ADMzM8Vof8OGDWjVqhWqV69eLPUXVFhYGE6ePIkZM2agW7dusLW1hUgkQmZmZq7RNfL5W1Dnb0Tdzxo2bFiuEa2rq2uB+pXXb5G7uzsyMzOVfotyPuPixYsF7pOjoyNCQ0PValNJ/Y7cuHEDDx48wKJFi+Dr6wsrKyuIRCKEhoYq/cblLL5Vt73vsrOzA96KC29TFSvyihPt2rXDuXPnEBcXh6NHj6J69eqYOHEifvzxx0K1q6wqUNCfNWsWTE1NMXPmTJVHT29PC4lEIrRt2xYnTpzIdd3+7t27YWBgkGs6rCB69uyJ1NRUHDhwoFDlc47I3277li1blPKYm5sDAKRSqVp1tm/fHnK5PFebzp07h+joaLRv375QbVXXhg0bcPPmTZXbQkNDIRKJFKda3te3ktg/b6tUqRJGjBiBFStWIC0tTTHaLGidPXr0gCAI2LZtW7751OlPcevQoQNatGiB5cuXIzg4WGWeM2fO5DrNhXz2T16sra0xYMAAbN26FadOncLDhw+VZh2KWn9h5Rxg5di6dWuJ3YyoND/rbT179kRQUBCuXr1abHX26NED0dHROH78eLHVWVjv7tdNmzYpvW/WrBns7OywdevWfOsxNzdX+XfdpEkTmJubY+/evUrpmZmZOHDgALy9vWFvb692ey0sLNCxY0ds2bIFzs7OOHfunNpl9UGBgr6npye2bduGkydPonPnzjhz5gySkpKQlJSkOH//9p3UlixZgtTUVAwcOBBPnjxBTEwMVq5ciTVr1mDq1Km5zo0VRN++fdGvXz+MGzcO69evR3h4OJKSknD79m3Mnz8fS5cuzbNsr169kJKSgs8++wxxcXEICAjAsGHDUKNGDaV8pqamqFKlCs6cOaPWVNmQIUPg4+ODyZMn49ixY0hMTMS5c+cwcuRIeHp6YsKECYXqq7qX7IWGhqJZs2aYM2cO/P39IZVKERgYiDlz5uD48eMYNWqU4og5v76V1P4ZO3Ysli9fjsePHyMtLQ0vX77E+vXrYWpqiiZNmhSqzr59+6Jnz56YOnUq1q1bh1evXiEyMhJbtmzB559/XqD+lIQdO3bA1dUVzZs3x4YNGxAZGYn09HQ8fvwYs2fPRseOHRUHxersn/yMGTMGcXFxGDlyJKysrDBw4ECl7erW7+XlpXKqtSAqVKiAhg0bYsWKFbh16xYSEhKwa9cubNiwAVWrVi1S3Zr8LFU+/vhjtGzZEgMGDMDOnTsRFRWF+Ph4XL16FZ9++qlijUNBjB8/Hk2aNMFHH32EnTt3IiYmBiEhIVi9ejV++OGHEunHu+rWrQs3NzcsXboU/v7+iI2Nxbp163Dt2jXFwTmy/2ZXrlyJM2fOYPTo0Xjy5AmSkpJw8eJFpfUGtWvXRmBgIO7evau0RszKygpffvkl9u/fj8WLF+PVq1cICgrC8OHD8eLFC3z//ffvbevff/+N8ePH4+LFi4iLi0NiYiI2bdqEV69eoW3btiWwd3RYYVb/PX/+XJg8ebJQvXp1wcTERLCyshLq1KkjTJw4Ubhz545S3hs3bgjdu3cXrK2tBWNjY6FWrVrCqlWrlFat56zez1kl+7Y2bdoITZo0UdkOmUwmrFq1SvDx8RHMzMwEKysroWHDhoKfn58QExMjCPmsyF6/fr3g6ekpmJiYCJ6ensK6deuEvXv3CgCULvE4efKkULduXcHY2FhpZXJe9cbHxwuffvqpULFiRcHQ0FAoX768MH78eOHVq1eKPDmr91euXJmrT1WrVhX69++vlKbuJXtJSUnCpk2bhO7duwtubm6CoaGhYG1tLTRv3lz45ZdfBJlMppQ/r76V1P4JDg4WZs6cKdSoUUMwMTERypcvL/Tr10+4fv26Wu3Ka59nZGQI3377rVCzZk1BIpEILi4uwogRI4QXL14UqD9FvWQvLykpKcLy5cuF5s2bC9bW1oJEIhGqVKki9OzZU9i9e7didb26+yc/1atXFwAI48ePz7VN3fo9PT2FcuXKFXkfBAcHC3369BFsbGwEGxsbYdCgQUJkZKTg6empVO7DDz8UXFxccpUfMWKEynaMGTNGsLe3L9Rn5UXdS/be/dvMkZaWJixdulSoU6eOYGJiItja2gpNmzYVVq1aJSQnJwvCW6vt9+7dm6u8RCJRXHGUIzk5Wfj8888FDw8PwdjYWHB3dxcmT56s+J0saH3vUueSvfv37wsdOnQQLC0tBQcHB2Hs2LFCQkKCYG5unqvcqVOnhI4dOwpWVlaCpaWl0KpVK+HIkSOK7bGxsULv3r0Fa2trAYAgkUiUym/atElo0KCBYGJiIlhYWAjt2rUTzp49q5Qnr3iQmpoqrF27VmjZsqVgY2MjWFtbC40aNRL++OMPpVhDgiAStOm+pkRERFRiyvxT9oiIiCgLgz4REZGeYNAnIiLSEwz6REREeoJBn4iISE8w6BMREekJBn0iIiI9YajpBpSGCSJ3TTehTPl27TBNN6HMMalcXY1cVBD/i66r6SaUOX8MqqfpJuSpJH7nfxPe/6wSXcORPhERkZ5g0CciItITDPpERER6Qi/O6RMRUdkmFmm6BbqBQZ+IiHSeWMSorw5O7xMREekJjvSJiEjncXpfPRzpExER6QkGfSIiIj3B6X0iItJ5XMinHo70iYiI9ARH+kREpPO4kE89HOkTERHpCY70iYhI5/Gcvno40iciItITDPpERER6gtP7RESk87iQTz0c6RMREekJjvSJiEjncSGfehj0iYhI53HaWj3cT0RERHqCQZ+IiEhPMOgTERHpCZ7TJyIinceFfOph0CciIp3H6/TVw+l9IiIiPcGRPhER6TxO76uHI30iIiI9waBPRESkJ3Rmev/BgweQSCTw8PDQdFOIiEjLcCGfenRmpL9hwwbs27dP080gIiLSWVox0k9LS0NaWlq+eaRSaam1h4iIdAsX8qlHK4L+/Pnz8cMPP7w33/fff18q7SEiIiqLtCLoOzs7o2vXrvjkk0/yzLN+/fpSbRMREekOntNXj1YE/Y8++gjLly9Hp06dYGxsrDLPmTNnSr1dREREZYlWBP1y5cph6NChuH79Opo3b64yT+vWrWFpaVnqbSusGh1boWanVshMz8DtvccQfP1uvvkNjY3RaGhvVKhVDWmJybj+9yFE+j/Plc/M1hqNPugFx6puCL37GFe27IVcJivBnmiPs09DcfNlFEyNDNHBqyI8HK3VKicXBPx2/j7iU9MxrV09mBiJlbbfehmFU09C4Gxljg8bVS+ZxmshuVzAsRsPcS8oDJamEnRrXBtuTnb5lnkZFYszd58gMi4RFR1s0b1xbViYSpTyJKSk4Z+r9xASHQd7Kwv0aFwbTja687dbXMpbSeBT0RYmhgZ4Hp2Mm6Hxapdt4GKNGs6WuBIci2fRyUrbajtboqqDOQwNRHgYkYhHr5JKoPVUVmnN6v3vvvsuz4APAL169ULbtm1LtU2F1XPxdIzf+QsypemQWJhh1oVdaPxhnzzzm1ha4PPbh+E7eTgSIqNhbm+Dudf2o2an1kr5KtarhYWPT6Jur46IeREGN586GL/z11LokeZ98+8NLD12A+bGRohJTsPwjcfx3/NwtcpuvPwYB+8FYe+dAGS8dYCUkp6JIeuP4Zdz93An5DXOPwsrwR5on9nr9uKnvadgZWaC4FcxGLBkDW49f5ln/i2nrmLyr38jIjYBjtYWOHbjIXouXI2Q6DhFnpdRsej55WqcufsUTjaWeBYWhQFL1uB5eFQp9Uo71ChngfkdPWFnZoTUDBk+aOCKEY0qqlW2vJUJBtVzQcvK9qhgbaK0bVTjShjZuBLkApCWKceoJm7oU9u5hHqhW8QiUbG/yiKtGOmXJfburugy9xOsG/I/3Nx9BACQEhOPQSu+xM2dh5GZnp6rjO/k4bBwsMX8yr0gTU4BAMSFRuKD1UvwRdWswG8gFmPcjlV4fOIC1n/4qaKsbcUKpdY3TXkcEYs9twOwekgbNKzkBAAwEhvg+xM30aJKN4jy+eO8G/oa++4EYGKr2lhy9LrSNkMDEb7u2RRVHa2x5Mh1hMTpz4jp0qMA/HvzEXbPH4dqLln7dPbavfh2x7/YPneMyjItalbFB74+EBtkjRWGtWuMgV+vxdqjF7BwWHcAwOp/zsPZ1gq//e8Dxf/LF5sO4vtdJ/Db/z4otf5p2gf1XXExKAZ/3QgBADx+lYTZ7arh3PPXCIxJybOckViE8U3dsP1WKMY1c1Pa5m5nhmbudvj25FM8f501+r8XnoB57avjYlAsXiXp9xVOPKevHq0Z6X/++ee4deuWym0nT55Ua3W/NqjdrS0y0qS4vf+4Iu3Klr2wsLdF1RYNVZZxqFIJr54GKQI+AITcfgjHKpVQsV4tAIBXh5ZwqlYZR75epVQ29mXZH52efx4GRwsTRcAHgC613BAen4JnUXlPmSampWPBoSv4vIsPrExzrxUxNhSjqpqnCMqaM3efopqLkyLgA0D3JrXx8EUEXsUlqixT2dleEfABQGxgADcnO0QnvDlYCo2Ohaerk9KBmKdrOVx5HIiUtNwHvGVROUsJnK1McDU4VpH2LDoZ0UlSeLvk/30bXM8Fz18n43ZY7u+1o3nWd/hl3Fu/E3GpgAio52JVrH2gsksrgv7Tp0+xf/9+eHt7q9zeokUL/PLLL4iK0v4pQqdqlREXGgF5ZqYiLTrwJeRyORw93FWWCb37GC51PGFToZwirVaXNtn1ZZVxa1gbybHxSI1LQLcvpqDft5+h0Qe9IDLQiv/CEvUyNgnlrc2V0ipkv89vdP71sRvwreaCxu7l8syjr4JfxcDFXjkAudjbAABeRMXmUUpZREwCLj4KQKPqb0ak1VyccOPZS6SmZwAABEHApUcBkMkFhESrV6+uc7LIWuMQnax8kPM6JR1OFqoXKgNAA1drVHe0wI7bqg/kQ+LTIBcE1HZ+E+BrOVvBQCRSfKY+E4uK/1UWacX0/unTp9GqVSsY5BHATExMULduXVy+fBk9e/Ys9fYVhJGpCaSJygtvBLkcGalpMDYzVVnm3G9/oW6vDph36x88+vc8bCtWQGb2zYiMTLPO6UksLQAAn574C7d2H0FybAJ6fTUDrScOw09tPyjTi/mkmTKYGSt/Vc2NjQAAaRmq+7371nO8jE3E4u6NS6WNukaakQlbCzOlNAuTrMCRlh2w85MiTce0P3ahqrMDhvo2UqRP7N4aN56+RL/Ff6C+R0U8C30FO8usA7S0jMx8aiw7jLOjRVqmXCk9NUMOY7Hq3zh7M2MMbeCKlecDkC6Tq8wTnpCGfx5GYkxTNzQOTwCyz/+/SpTmWS+VrpiYGJw8eRJSqRStW7dGpUqV3lsmICAAN27cQHp6OmrVqoV69eqVaBu1IugHBwejYsX8F7lUrFgRwcHB761LKpXmunufDALEKJ3DtrSERJjaKE+1iY2MIDE3Q1qC6mlTWUYGVnQchspN6sOpemUkRkbj1bMgLHl+DknRMYp6zW2t8efw6bh36CQA4NrW/VgSeB71+nRSrB8oi8yNjRCVmKqUlpg9VZwT/N+15uIDeDhY44eTtwEA4QlZB2LLT99BGw8XtK5W9tdC5MfcxBiJKcp3wUxIydrHOcE/L6npGfjfrzuQninD2qkfwsjwzdUQ9lbm2Pn5WNx4+gIRsfEY2Ko+klKluPgoINdBRlngU9EGnk4Wivd77oYjNSMraJsZiZH61kGpmbEYsSmqD6jaV3dEeqYcLavYo2V2moFIhMaVbGFjYoQDDyIAAAcfROBKcAzcbM0gFwQ8iEjEF508kZSuHwdU+dH0wruLFy+iR48eqFWrFqytrTF+/Hj89ttvGD58eJ5lFi5ciG+//RZdunSBqakpJk2ahE6dOmHbtm0Qi8V5lisKrQj61tbWCAoKyjdPaGgoGjd+/6jNz88PixYtUkprCGv4wKbI7VRH+IOnaDtlJCQW5pAmZQWa8jWrAQDCHjzNt2zglVsIvJK1rqH56EHITE9H4JWsoBV2/wkAIOTOI0X+mBehSI1PhJ2bS4n1RxtUcbDCuWehyJTLYZg9GxT4OkGxTZXJbepC+tYPbs7vQVUHazhYmKgso088yjvi2I1HSmnPw6NhIBKhsrN9nuXSsgN+TGIK1k37UGUgNxQboInXm1NZP+w+CUdrC7g6lM7fYGmKS83Ay7g3B6QyuYCwhKyDqfJWErxOyTo4FQFwtpTgYYTqA/+bIXGISMx9K/LYlHSEJyinv0pKx6ukrHrtzIzgaCHBs6jkXGWp9AiCgJEjR6Jv375Yt24dAOCnn37CxIkT0bVrVzg6OuYqExMTg8WLF2PdunUYNWoUAODGjRvw8fHBJ598Al9f3xJpq1bMCbVq1Qo7duxAdHS0yu0BAQE4duwYWrZsqXL72+bOnYv4+HilV32U3mKtu4dOQpaRiZZjhyjSfCcPR9TzYARfuwNkr8QfuvpreLR8My3q0erNAY25vS26zpuEi+t3Ivl11nnQR8fPIyEyCrW7vvkiuDeuB3Nba7y4cb+UeqcZbau7Ijk9E/8+yrqcTBAE7Lz1DDWcbeFqmzXKSkxLh9+xG/CPzNpfPWq7o3/9qopX08pZlzX1rOOOmuXzvxZdH3T2qYmwmDicv/8MAJApk2PH+ZtoVqMyrM2zTkNFxCbgq62HERT5Gsg+JZAV8JOxbtqHimn7t8UkJiMg/M3fcWBENHb/dwsjOzbL9yoLXfUsOhnnnr9WvNJlcsSlZuBZVBLaeDgo8vlUtIG5sSFuhLy5vLGjpyNaVbFXWc+5568hFwQ8jU7GtZdvylRzeLPPRSJggHcFhCek4Y6KhX9Uem7cuIGnT59i0qRJirRx48ZBJpPhwIEDKssIggADAwM4OLz5nuQcHOR1qrs4aMVIv1mzZqhfvz6aN2+OpUuXwtfXFw4ODoiMjMTRo0fx+eefY+DAgahcufJ765JIJJBIlKcnS2tqHwCSX8di68fzMGzNN/Dq0AImluZwqVsDv/YcA0EQAAAGhoZoPeFDvLz9EM/+uwYA6DZ/MkQGBkiIiELNzq3x7Pw17Jy2WFFvRpoUfw6fgbF/r0Kdnu2RnpyK2t18cfyHNXhy9nKp9U8TXGzMMa1dPXzz7w2c8g/B6+Q0hMcn4+dBb+5jkJKRib13AtDYvRw8y9mqXfev5+4hPjUdd0OjkSTNgN+xGwCAuZ1VX2lRVtSo6IyJ3Vtj5to9aF6jCkKiYxGfnIZ104Yp8sQlpWDn+Vvo4lML7uXs8eOek7jiH4T29Tzxy8GzinzlbK0wvmvWAbnYwADzNx6AvZUFjI3EuPAgAH2be2NYu0Yq21FWbb7xEtPbeGBeh+qITUlHTWdL7LkbhsjEN6ce61ewRnxaJs4HvFa73mqOFhhc3wUhcWmobJ81y/LLfwGQCSXSDZ1SEgvvVJ0uVhVjHjx4AACoWbOmIs3CwgKVKlVSbHuXvb09Vq5ciTlz5uDWrVswNTXF33//jenTp6N169YqyxQHrQj6ALB9+3YMHToUAwcOBAAYGhoiM3sF/JAhQ/Drr7pzE5qrW/fj6flrqN6mCTLTM/D4xH9IjnlztC7LyMBfEz7Hs3NXFGk/dx6Oaq2bwN7dFceXrUHInYe56n347zksqOYLz3bNIRKJcHDBj4h8ElBq/dKkQQ080KyyM+6GRsPEyBBN3MvBQvLmfL6VxBhzOjaAVznVU8jVnWwwp2MDmBgpf+Wr2FshOT0T1Z3K3tTz+0zo3godG3jhflAYLE1N0LRGZZhJ3qwud7a1wvwPuiju0te2bnVULe+Qqx6bt6b4rc1NsXHmCFx+HIj45FRM7dMOFR3VPwgrK8ITpJh/5BFqlrOEiaEBdt8Nz3Ud/TH/V3ku2gOAbTdDFNfj5zj8KBI3Q+LgbmeGS8ExeBqVBDkDfolRdbr4yy+/xMKFC5XSEhISIJFIYGKifOrQ1tYWCQkJedZvZ2eHjIwM3LhxA6ampnj9+jWcnJzyzF8cRELO8FNL3LhxA//99x/i4uLg4OAAX19f1KpVq0h1ThCpvlSOCufbtcPUyEUFYVJZf27/W1r+F11X000oc/4YVLIry4tiq2NNNXIVTP+QW2qN9NeuXYtx48YhPT0dRkZvBiM1atRAx44d8fPPP+eq+/Hjx6hduzZ27tyJvn37AgD8/f1Rp04dbN++Hf369Sv2/kCbRvrR0dFYtWoVgoKC4OnpienTp+vUvfaJiEhzSmJ6X1WAV6VatazF2oGBgahePesAPiMjA6GhofDw8FBZ5tq1a5DJZOjWrZsizdPTE1WrVsXFixdLLOhrxUK+1NRUNGrUCD/++CNu3ryJr776Cm3atIFcnvfUFxERkTZo1qwZHBwcsHXrVkXa/v37kZycjO7duyvStm3bhv/++w8A4O6eNQN9+/ZtxfbXr1/j5cuXim0lQStG+rt374apqSmCg4Nha2uL0NBQ+Pj44NSpU+jQoYOmm0dERJQnY2Nj/PzzzxgxYgRev34Na2trrFq1CrNnz0bVqlUV+b744gt06dIFLVu2RMuWLdGjRw/07t0bH3/8MUxNTbFp0yZUrFgRI0eOLLG2asVI/+nTpxg0aBBsbbMW/Li4uKBXr154+jT/69qJiIi0wQcffIBLly7B0tISqamp2LZtG/z8/JTyDB06FK1atQIAiEQiHDhwAL/99htkMhliYmIwe/Zs3L59GxYWFnl8StFpxUg/OTkZzs7Kj4e0tLREcjJvOEFERO+n6TvyAUDDhg3RsGHel/suXrxY6b1IJEKfPn3Qp0/ej14vbloR9AHg7NmzSu+vX7+eayGfr68vfHx8SrllRESk7crqA3KKm1YEfXNzc1y6dAmXLl3Kte3tNDMzMwZ9IiKiQtKKoL9o0aJcN0AgIiJSlzZM7+sCrVjIR0RERCWPQZ+IiEhPaMX0PhERUVEYcHpfLRzpExER6QmO9ImISOeJeM2eWjjSJyIi0hMc6RMRkc4z4EhfLRzpExER6QkGfSIiIj3B6X0iItJ5IjHHsOrgXiIiItITHOkTEZHO4yV76mHQJyIincfV++rh9D4REZGeYNAnIiLSEwz6REREeoLn9ImISOeJDDiGVQeDPhER6Twu5FMPD42IiIj0BEf6RESk83idvno40iciItITDPpERER6gtP7RESk8/jAHfVwLxEREekJjvSJiEjn8ZI99XCkT0REpCc40iciIp0nMuBIXx0M+kREpPMMuJBPLdxLREREekIvRvpTI+5qugllitjSSNNNKHNu9+6m6SaUOfW/2qDpJhBpHY70iYiI9IRejPSJiKhs47331cOgT0REOo9BXz2c3iciItITHOkTEZHO4yV76uFeIiIi0hMM+kRERHqC0/tERKTzuJBPPRzpExER6QmO9ImISOcZ8IE7auFIn4iISE9wpE9ERDpPxEv21MK9REREpCcY9ImIiPQEgz4REek8A7Go2F8FIZfLsXz5crRo0QI+Pj747LPPkJSU9N5yjx8/xqhRo9CgQQP07dsXN2/eLMJeeD8GfSIioiKaN28elixZgunTp+Obb77BoUOHMHDgwHzLXLlyBT4+PjA3N8fvv/+OiRMn4n//+1+JtpML+YiISOdp8uY8sbGx+Omnn/Dbb7+hf//+AIANGzagcePGuHTpEpo1a6ay3NixY9G9e3esWrVKkdauXbsSbStH+kREpPNEYoNif6nr4sWLSE9PR5cuXRRpjRo1gqOjI06fPq2yzL1793D//n2MGzdOKd3QsGTH4gz6REREKkilUiQkJCi9pFJprnwvX76EgYEBypUrp5Tu7OyMkJAQlXU/fvwYACAWi9GzZ080aNAAQ4YMwY0bN0qoN1kY9ImIiFTw8/ODtbW10svPzy9XPplMBrFYDAMD5ZAqkUiQmZmpsu709HQAwMcff4xRo0bhjz/+gJOTE1q0aIG7d++WUI94Tp+IiMqAgq62V8fcuXMxffp0pTSJRJIrn729PTIyMpCQkAArKytFenR0NOzt7VXW7ejoqPiMfv36AQB8fHxw7NgxbNy4ET/88EMx9yYLR/pEREQqSCQSWFlZKb1UBX0fHx8AwOXLlxVpYWFhCA4OVmx7V4MGDSAWi2FnZ6eUbmdnp9alfoXFoE9ERDpPZCAq9pe6PDw80L59eyxevBjJycmQyWT4/PPP4eLigu7duyvyde7cGUuWLAEAODg4YPDgwVi1apUiyJ84cQLXrl1D165dS2APZWHQJyIiKqLNmzdDLBbDwcEB9vb2uHTpEg4cOAATExNFnufPnyMiIkLxfvXq1TA3N4ezszNcXV0xYMAAfPfdd+jTp0+JtZPn9ImISOcZaPiBO+XLl8fZs2cRGRmJ9PR0VKxYMVeef//9F+bm5or3VlZW2LdvH2JjY5GUlAQXF5dciwGLG4M+ERFRMXn3sr23ValSRWW6ra0tbG1tS7BVb3B6n4iISE9wpE9ERDpPk7fh1SUc6RMREekJrRrpx8TEICwsDJ6enjAyMlLa5u/vD4lEAnd3d421j4iItFNB7pWvz7RmLy1duhQODg6oU6cOXFxcsHv3bqXta9aswa5duzTWPiIi0l4iA4Nif5VFWtGr27dvY8mSJVizZg2uXbuGIUOGYNCgQfjll1803TQiIqIyQyum90+ePIkRI0ZgzJgxQPYtDVu2bImPPvoIcrkc//vf/zTdRCIiIp2nFUE/JSVF8fCBHIMGDYKZmRkGDBigsXYRERGVJVoxve/j46PyGcI9evTAnj17MHv2bOzbt08jbSMiIu1nIDYo9ldZpBUj/c6dO2PWrFnw9/eHp6en0rZu3bph79696Nu3r8baVxSR4WE4un83ol9FwtXNHd36DoSllXW+ZWKio3H8n30IfPYUfYcMg2etOkrbz538FxfPnFRKs7C0xOTZ80ukD9omMDAQe/fsQUzMa3h4VMOgwYNhZmZWpDLp6ek4dvQo7t69A7FYjHr16qNT584lfktMTRIZGsKpew9YeNVAZlISoo8fQ/KTJ+8tZ+ruDocOnWBka4fE+3cRdfQIIAgAAGNHR7hNmJSrTMimP5EaHFQi/dBWYU8f4PGl08hITUH56rVQu3UXGIjFeeaXy2R4cvUsQv3vQRCAcpWroUbz9jA0znqqW1pSAk5sWKGybM2WHVGlftMS64su4Op99WjFXjIwMMC5c+dQoUIFldu7dOkCf39/jBgxotTbVhRhL19g+tiPEBEWijr1G+LO9auY9fEoJOfz2MTjh/Zj1oSRSE1JwaWzpxAd9SpXnhcBzxESHIhW7TspXk1atinh3miHR48eYdjQD5CQEI/69Rvg5InjGDt6FNLT0wtdRi6XY0D/frhx4zpq1KiBSpUqYcXynzBzxnQI2cGsLPJcshTlevVF4sOHgCCg5opfYO3TKN8y9u06oPaq32BgbIz4G9dhVrkq3D6ZrNguNjeHXes2iLt+Fa/PnFK8MuJiS6FH2uPZ9QvY5TcLRhITOFf1wvV/duCfVUvyLbP7u8/w4sEtlKvsCQdXd9w8uge7vpkNWWYmAMDQWALPpr5KLws7Bzy7/h9MrWxKqWek67RipI/sZwjnp1KlSqXWluKybcMfqFCxEmYv8oNIJELrDl0wfnBv/LP7bwwaMUZlmXqNmqBtl+6Qy2TYu21znnVb29iihW/7Emy9dlq18mc09PHBwkWLAQDtO3RAt65dcGD/fgwYOLBQZUQiEdauWwcnpzf3zK5duw5GjRyBRw8fomatWqXUu9Jj07QZrOo3xJ2RH0EaHgYAMDAxRaXxE3Hv+jWVZYzsHVB52gy8XL8WEXuyLp99feoEDC2tcuWNu3wJGbH6FehzCIKAs9t+R72OvdFq8FgAQPlqNbF1wSS8fHQHFWt4qyzXfdLnMHsreLt41sZfX3yCqOBncK7qBUNjCao1aqVUxv/yGTi4Vkb5ql4l3Cvtx5G+erRmL02cOFHleX1kP5noiy++KPU2FdXNK5fQrE07iERZt4c0MTVFw2YtcP3yhTzLOJZzhqHh+4/FIsPDsGLpQvz24zc4dfQfyOXyYm27NkpPT8e1a9fQoUMHRZqNjQ0aN26MC//9V+gyIpFIKeADgFP2QzMSEhNKqDeaZdO4CVKePVMEfACIOXcGZpUrw9jRSWUZh/YdAEFA5MH9SumZKvZRxbHjUWXWHFQYMhSGNvo1Co0JDUZidCQ83grQTm4esClXAUF3VR9QAVAK+AAQFxkGsaERzG3tVeZPSYhDwK3LqO1bcs9ep7JHK4L+/fv3cfnyZTRs2FDl9rZt22Lr1q0IDw8v9bYVVlJiApISE+D4TjBxLOeMyPDQItUtEgHVa9ZGjbr14FiuPDb/8Qu+mDoRMpmsiK3WbhHh4ZBlZsLZubxSurOzM0JDQ4qtDAD8vX0bLC0tUbt2nTzz6DJJ+QqQvopUSst5LylfXmUZsypVkRLwHOYeHqg8dQbcP50Oh06dgXfWPaQEPEdKYCASHzyAVYOG8F6/CaZ6dCfN+Kis56Vb2SkfPFnaOyH+Vf6/YYG3r+DQyq+wc+lM/Pf3OvSatgiWdo4q8z6+eBIiAwN4NW9XjK3XXbw5j3q0olfnz59HixYt8txuZGSEevXq4cqVK6XarqLIyD5fLDExUUo3MTVTbCus3oM/xOxFfujUow/6fzgCS1f+Af+H93HqyKEi1avt0jMyAAAm7+xTMzMzSPPYp4Up8++/x7Bl82bMmz8fFhYWxdR67WJgZAS5VKqUJk9NzdpmbKy6jIkJJOUrwP3T6Uh64o/U4CC4jhiF6l8uVuSRRkTg/qQJiNi1A1GHD+Hx7BlICQxQubivrJJlZn3nDCUSpXQjiQlkGfn/7duWd0X1Jm1QtWFzGIjFuHVsr+Kc/rvunz2Kao1awcTcshhbT2WdVpzTDwkJyXMRX44KFSrg5cuX761LKpVC+s6PWbpUCuN3/gCL06N7d7B/x1bF+96DhqJKtayrEJISE5XyJsbHwdyiaH+kFu+cQy3v4gq3KlXx9PFDdOzRu0h1a4uLFy5g3969ivfjPv4YlpZZ+y0hQXk6OS4uHpZ57NOcoK1umTOnT2PB/PmY89lcdOrUuVj6oo1kyckwtFQ+oDG0ssrepnqhqSw5CcZ2dngweSLSsxeYpjx7ipo//Qyzqh5Ief4M8rS0XOViL12Ay4fDS6Qfmnb/7FGlKfsOoz6FsWnWVSHS5CSlgJyWlAgrh7yftQ4ANuVcYFPOBQDg2bQt1k37EE+unEGNFh2U8oU9e4iYsBdoN2JKMfeIyjqtCPp2dnbw9/fPN09QUBCaNWv23rr8/PywaNEipbRJMz7D5Flzi9zOvDiWc0ar9p2U3ktMTFDepSKCnz9Vyhv8/BncqngUextSkpLL1OVlFStVQqfOb4Kuvb09bG1tYWVlhadPn6JlqzfnS589fYJq1auprKdcuXJqlzl39izmfjYH02fOzHNRYFmREvAcDp26KKWZVa4KeWYmUoNfqC7z/DlkaWmKgA8AadmnSIzs7YHnz1SWE5tbQJCXzVNPTu7VIDEzV7w3NJbAwbUyIBIh6mUgrJ2yTpXIZTLEhL0o0GV15ta2kJhZIPF17it4Hpw9BltnV7h6lc3TT4UhyudySHpDK6JE27Zt8ffffyMkRPU51vv37+PEiRNo3br1e+uaO3cu4uPjlV7jp0wvgVa/4eBUDi182yteDtnn8X07dcXZE8cQ+zoaABDw1B93blyFb6c3C2/O/HsEq77L/1Ked727cO/kkYMIC3mBxi3fv390RcWKFdGhY0fFy87ODiKRCF27dsP+fXuRmL147Mb163jw4AG6duuuKLtr5078uGwZkL1IT50y58+fw5zZszBtxgwMGjS41Ptb2l6fPgVje3vYtWkLABAZGaFc7z6Iu3wRspRkAIBxuXKo9sVCmLplnY9/ffYMkL3yP4ddm7aQS6VIeZZ1cGvTpKlixiCnDqduPRB78WKp9q+0OLlVRbVGrRQvQ2MJzG3sUKlmPdw+vg/y7HU2D84dQ4Y0DdUav/kbvbh7I24cyboKIiE6EiGP7yrV/fTaeaQmxsPFUzmwZ0jT8OTqWdRuo3zQRqQOrRjpN2jQAO3bt0fjxo2xYMEC+Pr6Zi+0CsXRo0fx9ddfY+zYsXB1dX1vXRKJBJJ3pvKNUzWzArvf0OHwf3gPU0Z+APeqHnjy6CE6dO+NFm3fTNUFBzzDtYvnFe+f+T/Cri1/QsgO6vv//gvnT/6Lhk2aK6buA576Y9v631Ghohvi42IQERqKsf+bjgaN3z8Tous+mTwZjx8/Qv9+/VC5cmXcv3cPo8eMQePGjRV5Hj58iPv37qpdJikpCbNnzoS5uTmuX72G61ffTNcOGDgQjZs0KeVelrzUF8EIXr0KVWbORrlevSFxKgdZWhqCVv2syGNoYQG71m0QsT/rNEvG62gELPsOVT+bh+QnT2BgbAxTN3cE/PA9MmJisgqJRKi5YhUy4+MhT0+HhVcNxF27gher9evhWe1HTcXe7+di42djYG5jh1dBz9BuxP9g7eisyBPy6A7MrG2B7PP91w/vxMk/f4aNU3kkxb5GQnQkWn8wPlfQf3LlLOSZmajRsmOp90ub8ZI99YgELbn7SFJSEj7++GNs27ZN6YYoYrEYEydOxI8//ggjI6NC1f04UrOXXQU88Ud0VCRcKrnBpaKb0rbggGd4FRGORs2zpp5jX0fj4b07ueoo7+KqWCcAAPFxsQh8+gQmpqaoVLkKzMxLb8GZq2Xh/h+KiyAIePDgPmJex6CqhwdcXFyUtj96+BDxCfFo+taINL8yGRkZOHvmjMrPqlmrJipUcFG5rTg96N2txD9DFSN7e5h7VENmUhKSHj0E3ppBEpuZw7phQyTcvYPM+Pg36ZaWsPCqkTXCf/4MsuRkpTpFRkYw9/CAgakZ0l6+VDodUJpufrVBI5+bQ5aZifBnj5CRlgKnytVhnh3gc7x8dAeGRsYo71FDkRYfFYGYsBcwsbCCvYsbjE1Mc9UbEeCP9NQUVKpVv1T68baJTbX3KowXc0cVe52V/DT7HSoJWhP0cwQGBuLixYuIi4uDg4MDWrVq9d5Ffu+j6aBf1mg66JdFmgr6ZZmmg35ZxKCv+7Rieh8AXrx4ge+++w5BQUHw9PTEZ599luvJe0RERFR4WnESJDExEY0aNcKePXuQkpKCjRs3omXLlsjM4/pUIiIiKjitCPq7du2Cq6srnj9/jlOnTuHp06eQSqU4fvy4pptGREQ6QCQ2KPZXWaQV0/sBAQHo3bs3TE2zFq3Y2tqia9euCAgI0HTTiIhIB5TVIF3ctGIvpaam5noeurm5OVKzbwtKRERERacVI30AOHz4MKKjoxXvz58/D3Nzc6W07t27o1WrVnnUQERE+qqsPiCnuGlF0HdyckJYWBj27dunlB4fH6+U5unpyaBPRERUSFoR9GfPno3Zs2druhlERERlmlYEfSIioqLgQj71cC8RERHpCY70iYhI53Gkrx7uJSIiIj3BkT4REek8A4701cK9REREpCcY9ImIiPQEp/eJiEjn8Y586uFeIiIi0hMc6RMRkc7jJXvqYdAnIiKdx6CvHu4lIiIiPcGgT0REpCcY9ImIiPQEz+kTEZHO4yV76mHQJyIinWcgFmu6CTqBh0ZERER6giN9IiLSedpwyZ5cLsedO3cglUpRr149mJiYqF32+fPnCAwMhLe3NxwdHUusjZrfS0RERDruyZMn8PLyQs+ePTFy5Ei4urri5MmTapWNioqCr68vOnbsiAsXLpRoOxn0iYhI54nEBsX+Kohhw4ahevXqCA4OxuPHjzF69GgMHjwYiYmJ+ZYTBAEjRozAyJEji7gH1MOgT0REVAQPHjzAtWvXMGfOHIizFxTOmTMH8fHxOHjwYL5lf/zxR6Snp2P69Oml0lYGfSIiIhWkUikSEhKUXlKpNFe+27dvAwAaNGigSLO3t0elSpUU21S5fv06li1bho0bN0IkEpVQL5Qx6BMRkc4TGRgU+8vPzw/W1tZKLz8/v1yfHRsbC2NjY5ibmyul29vbIzY2VmV7ExMTMWTIEKxatQouLi4ltl/exdX7REREKsydOzfXtLtEIsmVz9jYGBkZGZDJZIrpfQBISUmBsbGxyrrnz58POzs7WFtb48SJE0hOTgYA3L17F66urvDx8Sn2/oBBn4iIyoKSuGRPIpGoDPLvcnd3hyAICA0NRaVKlYDsy/fCw8Ph7u6usoy9vT2srKzwzTffAAAyMzMBALt370ZsbCyDPhERUV40eZ1+ixYtYG5ujn379mHKlCkAgLNnzyImJgadOnVS5Lt48SLs7e3h6emJBQsWKNURFxcHW1tbLFq0CH369CmxtjLoExERFYG5uTkWLlyIuXPnQhAEWFtbY8GCBfjwww/h7e2tyDd8+HB06dIFq1at0lhbGfSJiIiKaObMmXBzc8POnTshlUoxa9YsTJw4USlPixYt4OXlpbK8kZER2rdvDycnpxJtJ4M+ERFRMRg4cCAGDhyY5/aNGzfmuc3c3BwnTpwooZa9oRdBv7KZXNNNKFMMEiM03YQyp/62zZpuQpnjbW6v6SZQKeKjddWjF0GfiIjKNpEBH62rDh4aERER6QmO9ImISPdxpK8WjvSJiIj0BIM+ERGRnuD0PhER6T6u3lcL9xIREZGe4EifiIh0nkjMhXzqYNAnIiLdx9X7auH0PhERkZ5g0CciItITDPpERER6guf0iYhI9/GcvloY9ImISOfxKXvq4V4iIiLSExzpExGR7uP0vlo40iciItITDPpERER6gtP7RESk+zi9rxaO9ImIiPQER/pERKTzeMmeeriXiIiI9ARH+kREpPt4Tl8tHOkTERHpCQZ9IiIiPcHpfSIi0n2c3lcLR/pERER6giN9IiLSeSIxR/rqYNAnIiLdx+v01aI1QT85ORn//vsvbGxs0LZtW6SmpmL16tV4+PAhGjRogHHjxsHIyEjTzSQiItJZWhH0MzMz4evri+vXrwMA/Pz8cP36dZw6dQrVqlXDtm3bcOHCBfz111+abioREWkjLuRTi1YE/YMHD+L169cICQlBWloaunXrhvT0dDx58gQODg548uQJGjRogMePH8PLy0vTzSUiItJJWhH079+/jyFDhsDFxQUA0LJlSzg4OMDBwQEAUL16dXTv3h23bt1i0CciIiokrQj6pqamSElJUby3tbWFo6OjUh57e3skJCRooHVERKTtRJzeV4tWLHfs1KkTzp07p3g/atQo9OnTRynPo0eP4O3trYHWERERlQ1aMdKvW7cufHx88ODBA9SqVQu1atVS2n7t2jXI5XI0bdpUY20siMzMTPy9azcuXb4CIyMjdGjXFt27dilymYiISOzcsxf+T57AwsICLZo1RbcunSHWg+tTpdJ0bNm1D9dv34OpqQTdO7ZD+1bN8y2TkpqGwydO498z51HFrRI+mzKhWOotK5KTU7Bx+07cffgIVhYW6NO9C5o39ilymYCgYOzYdxAvQsJgZmqKRg280bd7FxgbG5dwjzQvPj4eG/78E/7+/rCzs8OA/v1Rv379IpcpTL16h5fsqUVr9tKKFStyBfsctWrVwtGjR0u9TYW1YNFX2LRlKzp37IAmjRvhK79vsWb9n0UqExYejklTp8Pc3ByDBw5APe+6+GHFz1j67fel0CPNmzr/K+w7chw9O7eDd60a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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Mkt-RFSMBHMLMom
PC10.9570.4070.292-0.493
PC2-0.155-0.0220.646-0.366
PC30.0310.1040.0850.004
PC4-0.0590.221-0.134-0.288
PC5-0.052-0.012-0.286-0.048
\n", "
" ], "text/plain": [ " Mkt-RF SMB HML Mom\n", "PC1 0.957 0.407 0.292 -0.493\n", "PC2 -0.155 -0.022 0.646 -0.366\n", "PC3 0.031 0.104 0.085 0.004\n", "PC4 -0.059 0.221 -0.134 -0.288\n", "PC5 -0.052 -0.012 -0.286 -0.048" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "\"\"\"\n", "==================================\n", "Compare statistical factors to known FF factors\n", "==================================\n", "\"\"\"\n", "df_ff = pd.read_csv('../data/raw/ff_factors.csv', index_col=0, parse_dates=True)\n", "\n", "# Project top PCs onto FF factor returns\n", "# Align dates: df_returns has month-end, df_ff has month-start\n", "# Convert to month-end timestamps, then normalize midnight for exact matching\n", "common_dates = df_returns.index.to_period('M').intersection(\n", " df_ff.index.to_period('M')\n", ").to_timestamp(how='end').normalize()\n", "df_ret_aligned = df_returns.loc[common_dates, pca_tickers].dropna()\n", "df_ff_aligned = df_ff.copy()\n", "df_ff_aligned.index = df_ff_aligned.index.to_period('M').to_timestamp(how='end').normalize()\n", "df_ff_aligned = df_ff_aligned.loc[df_ret_aligned.index]\n", "\n", "# Compute PC returns: PC_i = eigenvector_i^T @ returns\n", "pc_returns = pd.DataFrame(\n", " df_ret_aligned.values @ eigenvectors[:, :5],\n", " index=df_ret_aligned.index,\n", " columns=[f'PC{i+1}' for i in range(5)]\n", ")\n", "\n", "# Correlate PCs with FF factors\n", "factor_cols = ['Mkt-RF', 'SMB', 'HML', 'Mom']\n", "df_corr = pd.DataFrame(index=[f'PC{i+1}' for i in range(5)], columns=factor_cols)\n", "\n", "for pc in pc_returns.columns:\n", " for ff in factor_cols:\n", " mask = pc_returns[pc].notna() & df_ff_aligned[ff].notna()\n", " df_corr.loc[pc, ff] = pc_returns.loc[mask, pc].corr(df_ff_aligned.loc[mask, ff])\n", "\n", "df_corr = df_corr.astype(float)\n", "\n", "fig, ax = plt.subplots(figsize=(8, 5))\n", "sns.heatmap(df_corr, annot=True, fmt='.2f', cmap='RdBu_r', center=0, ax=ax, square=True)\n", "ax.set_title('Correlation: Statistical PCs vs. Fama-French Factors')\n", "\n", "plt.tight_layout()\n", "plt.savefig('../images/05_risk_decomposition/pc_vs_ff_correlation.png', dpi=150, bbox_inches='tight')\n", "plt.show()\n", "\n", "display(df_corr.round(3))" ] }, { "cell_type": "code", "execution_count": 11, "id": "2566bdea", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Saved:\n", " - variance_decomposition.csv\n", " - pca_spectrum.csv\n" ] } ], "source": [ "\"\"\"\n", "==================================\n", "Save risk decomposition results\n", "==================================\n", "\"\"\"\n", "decomp_results = pd.DataFrame({\n", " 'component': ['total', 'systematic', 'idiosyncratic'],\n", " 'variance': [total_var, systematic_var, idiosyncratic_var],\n", " 'pct': [100, systematic_var/total_var*100, idiosyncratic_var/total_var*100]\n", "})\n", "decomp_results.to_csv('../data/processed/variance_decomposition.csv', index=False)\n", "\n", "pd.DataFrame({\n", " 'eigenvalue': eigenvalues[:50],\n", " 'explained_pct': pca_result['explained_ratio'][:50] * 100\n", "}).to_csv('../data/processed/pca_spectrum.csv', index=False)\n", "\n", "print(\"Saved:\")\n", "print(\" - variance_decomposition.csv\")\n", "print(\" - pca_spectrum.csv\")" ] }, { "cell_type": "markdown", "id": "edf65c16", "metadata": {}, "source": [ "## Conclusion\n", "\n", "We now have a complete picture of where the portfolio's risk comes from:\n", "\n", "- The **Marchenko–Pastur analysis** tells us how many eigenvalues of $\\Sigma$ exceed the random-matrix noise threshold — i.e., how many statistically significant factors drive the cross-section.\n", "- The **Ledoit–Wolf shrinkage** shows that the sample covariance is noisy enough to benefit from regularization (a convex combination with a structured target).\n", "- The **variance decomposition** splits the quadratic form $w^\\top \\Sigma w$ into the factor subspace (systematic risk) and its orthogonal complement (idiosyncratic risk).\n", "\n", "The momentum long-only portfolio's risk is overwhelmingly systematic (driven by common market and factor exposures), with a small idiosyncratic component — consistent with a diversified top-decile portfolio of ~50 stocks. The Fama–French alpha of 5.95% (t = 3.95) from notebook 04 is the component of return *orthogonal* to these systematic factors.\n", "\n", "The next notebook (06) uses the truncated-SVD factor structure to generate synthetic markets for stress testing — asking whether the alpha is genuine skill or luck." ] } ], "metadata": { "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.14.6" } }, "nbformat": 4, "nbformat_minor": 5 }