El filtro de Kalman: actualizar una estimación con matrices
¿Por qué y cuándo se usa esto? Se usa cuando quieres estimar algo que no puedes observar directamente (la "verdadera" tendencia o beta de un activo) a partir de datos ruidosos, y quieres que la estimación se actualice sola con cada dato nuevo, sin recalcular todo desde cero.
¿Cómo estimar la "tendencia real" de un activo cuando cada precio observado trae ruido? El filtro de Kalman (versión escalar, para intuición) combina una predicción con una nueva observación, ponderando por qué tan confiable es cada una.
Procedimiento paso a paso (a mano), un ciclo predicción-actualización:
- Predicción: tu mejor estimación para "ahora" es la misma que tenías antes (), pero con más incertidumbre acumulada ().
- Cuando llega la observación nueva , calcula la ganancia de Kalman: — un número entre 0 y 1.
- Actualiza la estimación: súmale a la predicción del paso 1 la "sorpresa" ( menos lo que predijiste), ponderada por .
- Actualiza también la incertidumbre: — siempre baja después de incorporar un dato nuevo.
- Repite desde el paso 1 en el siguiente período, usando y como el nuevo punto de partida.
Ahora, en notación formal:
Predicción:
Actualización (ganancia de Kalman):
Donde es cuánto "creemos que cambia" el valor real entre períodos, es el ruido de la observación, y decide cuánto confiar en el dato nuevo vs. en la predicción anterior.
Problema. Estimación previa , , , , y llega una nueva observación . Calcula , , y .
Solución. . . . — la nueva estimación quedó más cerca del dato nuevo que de la vieja (porque ), y la incertidumbre bajó de a gracias a la observación.
Practica tú (resuelve antes de mirar la respuesta). , , , , llega . Calcula y . Respuesta: , , .
🔧 En código libre: PyKalman y FilterPy son las dos librerías Python estándar construidas exactamente para esto; statsmodels también incluye un módulo de modelos de espacio de estados basado en Kalman.
📌 Para repasar: decide cuánto confiar en el dato nuevo vs. la predicción. cerca de 1 = confía en el dato nuevo (poco ruido); cerca de 0 = confía en la predicción (dato muy ruidoso).