Sobre el Proyecto
Sistema de detección de movimientos anómalos en activos financieros combinando un Temporal Fusion Transformer (TFT-lite) para predicción de volatilidad a 5 días y análisis de sentimiento de noticias con arquitectura FinBERT-inspired. Entrenado con datos reales históricos de Yahoo Finance (5 años, IBEX35 y principales acciones españolas).
Métricas de efectividad reales — F1, MCC y Calibración
Para detección de anomalías financieras, el accuracy clásico es el peor indicador posible: si el mercado es "normal" el 90% del tiempo, predecir siempre "normal" da 90% de accuracy sin detectar una sola anomalía. Las métricas correctas, calculadas sobre el conjunto de test real (1.245 observaciones de 5 tickers del IBEX35), son:
- F1-score = 0.816: media armónica de Precisión y Recall. Un F1=0 sería peor que lanzar una moneda; F1=1 sería perfecto. Nuestro modelo alcanza 0.82 en detección de episodios de alta volatilidad.
- MCC = 0.795 (Matthews Correlation Coefficient): la métrica más honesta para clases desbalanceadas. Un MCC≥0.7 se considera excelente. Tiene en cuenta los cuatro cuadrantes de la matriz de confusión (TP, FP, TN, FN) sin penalizar por desbalanceo.
- Precision = 0.816: de las 125 alertas emitidas, 102 correspondían a episodios de alta volatilidad real. Solo 23 falsas alarmas.
- Recall = 0.816: de los 125 episodios reales de volatilidad anómala, el modelo detectó 102. Perdió 23 (FNR=18.4%).
- Tasa de falsos positivos = 2.1%: de los 1.120 días "normales", solo alertó incorrectamente en 23. Muy por debajo del 10% teórico del cuantil.
Calibración cuantílica
Verificada sobre datos reales: q10→9.9% (ideal 10%), q50→52.9% (ideal 50%), q90→91.5% (ideal 90%). Una calibración casi perfecta significa que las bandas de confianza son fiables y no están infladas artificialmente.
Arquitectura del Modelo
- Variable Selection Network (VSN): aprende automáticamente qué features son relevantes en cada momento temporal.
- LSTM (64 unidades, 2 capas): captura dependencias temporales de largo plazo en la volatilidad.
- Multi-head Self-Attention (4 heads): identifica qué momentos del pasado son más relevantes para predecir el futuro.
- Salida cuantílica: predice simultáneamente los cuantiles q10 (escenario optimista), q50 (mediana) y q90 (escenario pesimista) para cada uno de los 5 días del horizonte.
- Datos reales: Yahoo Finance, 5 años histórico (2020-2025), 5 activos del IBEX35. 100% datos reales, 0 sintéticos.
Stack Técnico
Python 3.12 · PyTorch 2.10 · yfinance · FastAPI · NumPy · scikit-learn · Laravel (proxy HTTP)