Ingeniería de Características para el Machine Learning Financiero: Convertir Precios en Bruto en Señal
Entrega a un modelo de machine learning los precios de cierre en bruto y no aprenderá casi nada útil — o peor, aprenderá algo que parece brillante en el backtest y se derrumba en real. En el trading cuantitativo, el modelo rara vez es la parte difícil. La parte difícil es la ingeniería de características (feature engineering): transformar los datos de mercado en bruto en entradas que de verdad lleven información predictiva, sin colar el futuro. Aquí es donde vive la mayor parte de la ventaja real — y la mayor parte de los errores reales.
Por qué los precios en bruto son malas características
Los niveles de precio son no estacionarios: su media y su varianza se desplazan con el tiempo, así que un nivel que significaba "caro" hace cinco años hoy no significa nada. Los modelos entrenados con niveles en bruto memorizan en la práctica un rango de precios concreto y fallan cuando el mercado sale de él. La solución es transformar los precios en algo más estable:
Familias útiles de características
Las buenas características codifican distintas facetas del comportamiento del mercado:
El pecado mortal: el sesgo de anticipación y la fuga de datos
El error más peligroso del ML financiero es dejar que información del futuro se filtre en una característica. Produce backtests espectaculares que son pura ficción. Protégete sin descanso:
Las etiquetas también son características
Cómo definas lo que intentas predecir importa tanto como las entradas. Una etiqueta ingenua de "la próxima barra sube o baja" es ruidosa e ignora el riesgo. Un etiquetado más robusto — por ejemplo, si se alcanza un objetivo de beneficio antes que un stop dentro de un horizonte (la idea de la triple barrera) — produce objetivos que reflejan cómo operaría de verdad la estrategia.
Menos suele ser más
Con suficientes características, un modelo siempre encontrará patrones espurios en el ruido — otra vez la trampa de las comparaciones múltiples. Prefiere un conjunto más pequeño de características con sentido económico, comprueba su estabilidad a lo largo del tiempo y valida con pruebas adecuadas fuera de muestra y de walk-forward en lugar de fiarte del ajuste dentro de muestra.
En resumen
En el machine learning financiero, la ingeniería de características es la estrategia. Haz las características estacionarias, escálalas con honestidad, codifica comportamiento real del mercado y — sobre todo — sé paranoico con la fuga de datos y la anticipación, porque el mercado no te pagará por una ventaja que solo existía porque tu backtest podía ver el futuro. Construye características causales, estables y con sentido económico, y el modelo se convierte en la parte fácil.
Entrega a un modelo de machine learning los precios de cierre en bruto y no aprenderá casi nada útil — o peor, aprenderá algo que parece brillante en el backtest y se derrumba en real. En el trading cuantitativo, el modelo rara vez es la parte difícil. La parte difícil es la ingeniería de características (feature engineering): transformar los datos de mercado en bruto en entradas que de verdad lleven información predictiva, sin colar el futuro. Aquí es donde vive la mayor parte de la ventaja real — y la mayor parte de los errores reales.
Por qué los precios en bruto son malas características
Los niveles de precio son no estacionarios: su media y su varianza se desplazan con el tiempo, así que un nivel que significaba "caro" hace cinco años hoy no significa nada. Los modelos entrenados con niveles en bruto memorizan en la práctica un rango de precios concreto y fallan cuando el mercado sale de él. La solución es transformar los precios en algo más estable:
- Rendimientos (especialmente rendimientos logarítmicos) en lugar de niveles — aproximadamente estacionarios y comparables en el tiempo y entre instrumentos.
- Valores normalizados o estandarizados — puntuaciones z, o escalado a un rango fijo, para que las características vivan en escalas comparables.
- Medidas relativas — distancia a una media móvil, rango porcentual dentro de una ventana móvil, ratios en lugar de absolutos.
Familias útiles de características
Las buenas características codifican distintas facetas del comportamiento del mercado:
- Momento / tendencia — rendimientos en varios horizontes, pendientes de medias móviles, el tipo de información que hay detrás de indicadores como el RSI o el MACD.
- Volatilidad — desviación típica móvil, ATR, volatilidad realizada; el régimen importa tanto como la dirección.
- Volumen / liquidez — volumen relativo, desequilibrio de order flow, spread.
- Calendario / estacionalidad — hora del día, día de la semana, sesiones, codificadas de forma cíclica (seno/coseno) en lugar de como enteros en bruto.
- Transversales (cross-sectional) — cómo se posiciona un instrumento frente a sus pares en el mismo momento.
El pecado mortal: el sesgo de anticipación y la fuga de datos
El error más peligroso del ML financiero es dejar que información del futuro se filtre en una característica. Produce backtests espectaculares que son pura ficción. Protégete sin descanso:
- Usa solo información disponible en la barra desde la que predices. Una característica calculada en el instante T debe usar datos hasta T y ni un tick más.
- Ajusta las transformaciones solo con datos de entrenamiento. Calcular una media, una desviación típica o un escalador sobre todo el conjunto — incluido el periodo de prueba — filtra el futuro hacia el pasado. Ajusta en entrenamiento, aplica en prueba.
- Cuidado con las ventanas de indicadores que "espían". Algunos suavizados "centrados" e indicadores que repintan usan barras futuras por construcción. Confirma que cada característica es causal.
- Atención al sesgo de supervivencia y a los datos point-in-time. Usa los datos tal como eran en su momento, no como se revisaron después ni con los nombres deslistados eliminados.
Las etiquetas también son características
Cómo definas lo que intentas predecir importa tanto como las entradas. Una etiqueta ingenua de "la próxima barra sube o baja" es ruidosa e ignora el riesgo. Un etiquetado más robusto — por ejemplo, si se alcanza un objetivo de beneficio antes que un stop dentro de un horizonte (la idea de la triple barrera) — produce objetivos que reflejan cómo operaría de verdad la estrategia.
Menos suele ser más
Con suficientes características, un modelo siempre encontrará patrones espurios en el ruido — otra vez la trampa de las comparaciones múltiples. Prefiere un conjunto más pequeño de características con sentido económico, comprueba su estabilidad a lo largo del tiempo y valida con pruebas adecuadas fuera de muestra y de walk-forward en lugar de fiarte del ajuste dentro de muestra.
En resumen
En el machine learning financiero, la ingeniería de características es la estrategia. Haz las características estacionarias, escálalas con honestidad, codifica comportamiento real del mercado y — sobre todo — sé paranoico con la fuga de datos y la anticipación, porque el mercado no te pagará por una ventaja que solo existía porque tu backtest podía ver el futuro. Construye características causales, estables y con sentido económico, y el modelo se convierte en la parte fácil.
clean
by ai-agent