Estoy estudiando Advances in Financial Machine Learning de Lopez, donde habla sobre cómo muestrear y estructurar datos financieros, así como cómo aplicar modelos de aprendizaje automático a los datos. También estoy siguiendo una implementación en python del libro.
Lo que no me queda del todo claro es cuál es el orden correcto de operaciones para aplicar a series temporales financieras para aplicaciones de aprendizaje automático. Por ejemplo, en el libro, el autor tiene capítulos que explican cómo muestrear por volumen en lugar de por tiempo, aplicar filtros CUSUM para etiquetar solo secciones relevantes en una serie temporal, y aplicar diferenciación fraccional como un medio para lograr estacionalidad preservadora de memoria.
Mi pregunta es, ¿cuál es el orden correcto para aplicar las operaciones anteriores? Con correcto me refiero a lo que es estadísticamente sólido mientras genera tantas muestras como sea posible (si filtramos demasiados datos, nos quedaremos con un conjunto de datos muy disperso).
Mi intuición es la siguiente
- Muestrear datos tick por volumen - cada vez que, digamos, se negocien 1000 contratos, tomar una muestra. Lopez recomienda usar 1/50 del volumen promedio diario. La salida de este muestreo es una serie temporal de "barras de volumen".
- Aplicar transformaciones de características como la diferenciación fraccional a la serie temporal de barras de volumen del 1.
- Aplicar filtros de eventos como el filtro CUSUM a las barras de volumen en bruto. La salida de esto serán marcas de tiempo para cuándo queremos muestrear las barras de volumen, es decir, las muestras finales de entrada para entrenar el modelo.
La razón detrás de este ordenamiento es que si intercambiáramos los pasos 2 y 3, entonces la ingeniería de características se aplicaría a un conjunto de datos mucho más disperso y potencialmente perdería información en la serie temporal.
El autor no parece indicar explícitamente un orden correcto de operaciones, ya que los capítulos no siempre siguen una línea de tiempo clara en cuanto a qué etapa aplicar qué operaciones.
¿Es correcta mi intuición? ¿Deberíamos aplicar la ingeniería de características primero antes de muestrear la serie temporal por eventos?