La matriz de covarianzas Σ es el único objeto sobre el que se apoya cada cálculo de riesgo de este curso — la varianza de la cartera, la solución del optimizador, la ratio de Sharpe, todo pasa por Σ. Así que antes de poder optimizar tenemos que entender de verdad esta tabla: cómo se ensambla, las reglas estructurales que debe obedecer (simetría, semidefinición positiva), cuán monstruosamente crece a medida que añades activos, y la propiedad — el condicionamiento — que calladamente determina si tu optimizador produce pesos sensatos o disparates impulsados por el ruido. Acierta con Σ y el resto es aritmética; equivócate con ella y ninguna optimización ingeniosa podrá rescatarte.
Before you read — take a guess
Estás optimizando una cartera de 100 acciones. ¿Aproximadamente cuántos números distintos debes estimar para rellenar la matriz de covarianzas?
Construir Σ: varianzas en la diagonal, covarianzas fuera de ella
Analogía. Imagina una hoja de cálculo con la misma lista de activos en las filas y en las columnas. Cada celda responde: “¿cómo se mueven juntos el activo de la fila y el de la columna?” Las celdas de la diagonal principal comparan un activo consigo mismo — eso es simplemente su propia varianza — y cada celda fuera de la diagonal mide un par genuino.
Definición. Para activos con rendimientos , la matriz de covarianzas es la tabla con entradas En la diagonal () esto es la varianza . Fuera de la diagonal se factoriza en volatilidades y correlación: donde es la correlación. La matriz de correlaciones es la misma tabla con las volatilidades quitadas — todo unos en la diagonal — así que es el esqueleto puro de comovimiento, y donde es la matriz diagonal de volatilidades y la matriz de correlaciones.
Ejemplo resuelto (3 activos). Supón y las correlaciones , , . Entonces cada covarianza es volatilidad × volatilidad × correlación:
- .
- .
- .
Así que la matriz completa es Léela: el activo 1 es el más volátil (diagonal 0,04 = 0,20²), los activos 1 y 3 son un par diversificador (covarianza negativa), y los activos 2 y 3 se mueven juntos (positiva).
La diagonal es la varianza propia de cada activo; todo lo de fuera es comovimiento, azul para positivo y cálido para negativo. Sube la correlación media y toda la cuadrícula se inunda de azul — eso es la diversificación evaporándose, porque los activos correlacionados caen juntos. La matriz siempre es simétrica: la celda en fila i, columna j es igual a la celda en fila j, columna i.
La simetría no es opcional
Como Cov(rᵢ, rⱼ) = Cov(rⱼ, rᵢ), toda matriz de covarianzas es simétrica: la celda por encima de la diagonal refleja la de debajo. Por eso solo estimas N(N−1)/2 números distintos fuera de la diagonal, no N(N−1). Cualquier “matriz de covarianzas” que no sea simétrica tiene un error.
Dos activos tienen volatilidades del 25 % y el 40 % y una correlación de −0,5. ¿Cuál es su covarianza?
Semidefinición positiva: la regla que Σ no puede romper
Analogía. La varianza de una cartera es una magnitud real y física — la dispersión de sus rendimientos. Puede ser cero (un libro perfectamente cubierto) pero nunca negativa: nada es “menos arriesgado que la certeza perfecta”. Una matriz de covarianzas válida es exactamente la que garantiza esto para cada cartera posible que pudieras construir con los activos.
Definición. Una matriz simétrica es semidefinida positiva (SDP) si para todo vector de pesos , Como es la varianza de la cartera, la SDP es solo la afirmación “ninguna cartera puede tener varianza negativa”. De forma equivalente, todos los valores propios de son . Una matriz es definida positiva (DP) si la desigualdad es estricta () para todo no nulo — es decir, ninguna cartera no nula tiene varianza exactamente cero, que es lo que necesitas para que sea invertible.
Por qué una matriz puede no ser SDP. Si estimas correlaciones con descuido — digamos a partir de datos donde distintos pares se midieron en ventanas temporales distintas, o ajustas a mano unas pocas celdas — puedes producir una matriz simétrica con un valor propio negativo. Eso implica que alguna cartera tiene varianza negativa, lo cual es un disparate, y el optimizador lo explotará sin piedad: volcará peso en esa “reducción de riesgo gratis” y te entregará una respuesta absurda.
Ejemplo resuelto — detectar una matriz rota. Considera la matriz de correlaciones que afirma que tres activos están cada uno fuertemente correlacionados positivamente salvo que un par está fuertemente negativo: Esto es lógicamente imposible: si el activo 1 está correlacionado al 90 % con 2 y con 3, entonces 2 y 3 no pueden estar fuertemente correlacionados negativamente — ambos siguen la sombra del activo 1. Enchúfala y encontrarías un valor propio negativo, marcándola como no SDP. La transitividad de la correlación no es una sugerencia; la impone la restricción de SDP.
Empareja cada propiedad de la matriz de covarianzas con su significado.
Pick a term, then click its definition.
La explosión de dimensionalidad
Analogía. Añadir un activo más a tu universo no añade un número más a estimar — añade toda una fila y columna de comovimientos con todo lo que ya hay. La contabilidad crece como el área de la matriz, no como su longitud.
El recuento. Una matriz de covarianzas tiene celdas, pero la simetría significa que los números distintos son
Ejemplos resueltos.
| Activos | Parámetros distintos |
|---|---|
| 5 | 15 |
| 10 | 55 |
| 50 | 1275 |
| 100 | 5050 |
| 500 | 125 250 |
Para el S&P 500, debes fijar más de 125 000 números. Y aquí está lo letal: normalmente solo tienes unos pocos años de datos diarios — quizá 750–1250 observaciones por activo. Estás estimando más parámetros de los que tienes observaciones independientes. Cuando el número de parámetros se acerca o supera el tamaño de la muestra, la Σ estimada se vuelve disparatadamente ruidosa y, a menudo, singular (no invertible) — lo que torpedea al optimizador. Esta maldición de la dimensionalidad es la razón profunda por la que existe la contracción (lección 5).
Parámetros frente a datos — la tensión central
Con N = 500 activos y, digamos, 1000 días de datos, tienes ~125 000 parámetros y 500 000 puntos de datos — pero esos puntos distan de ser independientes, y por activo solo tienes 1000 observaciones para clavar 500 covarianzas. La matriz de covarianzas muestral es entonces un revoltijo ruidoso. Más activos significa exponencialmente más que estimar a partir del mismo escaso historial.
El tamaño del problema.
Pick the right option for each blank, then check.
Una matriz de covarianzas para N activos tiene números distintos porque es . A medida que N crece, el recuento crece como , así que debes estimar parámetros que años de datos tienes — lo que hace la estimación ruidosa y a veces no invertible.
Condicionamiento: por qué una Σ casi singular destroza el optimizador
Analogía. Imagina equilibrar un lápiz sobre su punta frente a tumbarlo plano. Plano, un empujoncito apenas lo mueve (bien condicionado). Sobre la punta, el más mínimo soplo lo manda a volar (mal condicionado). Una matriz de covarianzas está “equilibrada sobre la punta” cuando algunos activos son casi redundantes — muy correlacionados — así que la matriz es casi singular.
Definición. El número de condición de es la razón de su mayor valor propio a su menor, Un grande significa que está mal condicionada: está cerca de ser singular, es diminuto, y la inversa (que el optimizador necesita) tiene entradas enormes escaladas por . Pequeños errores en las entradas se magnifican por aproximadamente en los pesos de salida.
Por qué los activos correlacionados lo causan. Si dos activos tienen correlación cercana a 1, son casi el mismo activo — la matriz tiene una dirección con casi nada de varianza, así que y explota. El optimizador, al ver dos activos casi idénticos con rendimientos estimados ligeramente distintos, tomará una posición larga gigante en uno y una corta gigante en el otro para cosechar el diminuto diferencial aparente — una posición que es puro ruido y se revertirá fuera de muestra.
Intuición resuelta. Dos activos, ambos con volatilidad del 20 %, correlación . Los valores propios de la matriz de correlaciones son y , así que . En , (perfectamente equilibrada). En , . En , . A medida que , y la matriz se vuelve singular — no hay reparto óptimo único entre dos activos idénticos, así que la respuesta del optimizador carece de sentido.
- Portfolio volatility
- 19.6%
- Naive weighted average (no diversification)
- 25.0%
- Diversification benefit
- 5.4%
Desliza la correlación entre dos activos hacia 1 y observa cómo colapsan en casi la misma serie. En ese punto la matriz de covarianzas es casi singular — su número de condición explota — y un optimizador ya no puede distinguir ambos, así que toma posiciones enormes que se compensan, impulsadas enteramente por el ruido.
¿Cómo se convierte un número de condición alto en una mala operación literal?
Digamos que los activos X e Y están correlacionados al 99 %, y tus estimaciones dan a X un rendimiento esperado del 8,0 % y a Y del 8,1 % — una diferencia que es puro ruido a ese tamaño de muestra. El optimizador ve un casi arbitraje: dos activos casi idénticos, uno un pelo “mejor”. Como Σ⁻¹ tiene entradas gigantescas (κ ≈ 199), recomienda algo así como +900 % en Y y −890 % en X para recoger el 0,1 % de ventaja con apalancamiento máximo. Fuera de muestra el 0,1 % de ventaja se evapora (o se invierte), las dos patas gigantes ya no se cancelan limpiamente, y sufres una pérdida catastrófica en lo que parecía un diferencial sin riesgo. Nada estaba mal en la matemática — la forma cerrada hizo exactamente lo que le pediste. El problema fue alimentar una Σ casi singular y ruidosa a una inversión que amplificó un insignificante 0,1 % hasta una posición bruta del 1790 %. La contracción y las restricciones existen precisamente para frenar esto.
Dos activos tienen correlación 0,95. Usando κ = (1+ρ)/(1−ρ) para la matriz de correlaciones, ¿cuál es el número de condición, y qué implica?
Recapitulando
La matriz de covarianzas Σ se construye a partir de volatilidades y correlaciones (), con varianzas en la diagonal y comovimientos fuera de ella. Debe ser simétrica (la covarianza ignora el orden) y semidefinida positiva (, así que ninguna cartera tiene varianza negativa — de forma equivalente todos los valores propios ); un valor propio negativo significa que la matriz está rota y el optimizador abusará de ella. El número de parámetros distintos crece como — más de 125 000 para el S&P 500 — así que rutinariamente estimas más números de los que tienes datos, produciendo una estimación muestral ruidosa y a menudo singular. Y el condicionamiento (la razón de valores propios ) decide todo lo de aguas abajo: activos muy correlacionados y casi redundantes hacen Σ casi singular, así que tiene entradas enormes que amplifican errores de entrada diminutos en pesos descabellados e inestables. Esa fragilidad es el puente a la siguiente lección — y la razón por la que existen la contracción y las restricciones.
Big picture
La matriz de covarianzas — la imagen completa
- La matriz de covarianzas Σ
- Cómo se construye
- Diagonal = varianzas σᵢ²
- Fuera de la diagonal = σᵢσⱼρᵢⱼ
- Σ = D R D (volatilidades × matriz de correlaciones)
- Reglas estructurales
- Simétrica: celda (i,j) = celda (j,i)
- SDP: wᵀΣw ≥ 0, sin varianza negativa
- Todos los valores propios ≥ 0; uno negativo = rota
- DP (> 0) necesaria para la invertibilidad
- Dimensionalidad
- N(N+1)/2 parámetros distintos
- Crece como N² — 125k+ para el S&P 500
- A menudo más parámetros que datos → ruidosa, singular
- Condicionamiento
- κ = λmax / λmin
- Correlación alta → casi singular → κ enorme
- Σ⁻¹ amplifica errores ~κ× en los pesos
- Motiva la contracción + restricciones
- Cómo se construye
Repaso: la matriz de covarianzas
Para 20 activos, ¿cuántos números distintos contiene la matriz de covarianzas?
Check your answer to continue.
A continuación — mecánica media-varianza: con Σ en la mano, resolvemos de verdad para los pesos. Derivaremos las carteras de mínima varianza y de máximo Sharpe (tangencia), veremos el lagrangiano y la solución en forma cerrada que invoca , y trabajaremos un ejemplo numérico completo a mano — convirtiendo el problema abstracto de optimización en números concretos.