Series de tiempo y redes neuronales: caso práctico
Series de tiempo y redes neuronales
Este ejercicio se desarrolló con el fin de entender el uso de diversas herramientas para la series de tiempo, específicamente en la predicción de commodities; oro en éste caso.
Entendimiento de los datos
El análisis se hizo sobre el comportamiento del mercado del ORO, a través de la información obtenida en Yahoo Finance.
Su valor se encuentra en USD y el valor a predecir es el valor de cierre ajustado (Adj Close).
Se toma el conjunto de datos hasta el 1 enero de 2018 como datos de entrenamiento (linea punteada) y el resto cómo datos de evaluación.
![]() |
Gráfico stock oro |
![]() |
Data evaluación |
Hipótesis y variables a realizar
De acuerdo a la literatura, en el desarrollo de análisis en datos ordenados se considera el efecto que tienen los valores previos a los valores futuros.
Bajo esta hipótesis se desarrollan variables cómo:
- Promedio móvil en 7 y 21 días
- Promedio móvil de divergencia/convergencia
- Promedio móvil exponencial
- Bandas de Bollinger
- Momentum
![]() |
Variables basadas en temporalidad |
Estas variables se utilizaran para predecir el valor futuro, por lo cual se emplerá un lag de 10 días.
![]() |
Variables de transformada de Fourier |
Disminución de dimensionalidad
Se tienen 180 variables, de las cuales 10 corresponden al lag de la valor real del precio desde el día 1 hasta 10 días. Las otras 170 variables se buscan agrupar en 5 variables para lo cual se emplea el método de PCA.Variables definitivas
Finalmente, se dejan las variables de lag de 10 días para el valor a predecir y las variables de PCA.En total, 20 variables para predecir.
Modelo
Se emplea una red neuronal con 100 neuronas de entrada entrenando con 2000 epochs y batchs de 100 registros.Resultado
Los resultados parciales son:Epoch 50
![]() |
Entrenamiento y test con 50 Epochs |
Epoch 100
![]() |
Entrenamiento y evaluación 100 epoch |
Epoch 1000
![]() |
Entrenamiento y evaluación 1000 epoch |
Gráfica sobre los datos de evaluación en este último Epoch.
![]() |
Evaluación del modelo entrenado |
Predicción en los últimos 5 días.
![]() |
Predicción últimos 5 días |
Conclusiones
- Se observa que el modelo se adapta muy bien en la generalización al predecir un día a la vez.
- La predicción presenta un error en los datos de evaluación en 0.23 USD en promedio.
- El modelo en general puede ver cuando cae y sube un precio, hace falta un análisis más detallado de este comportamiento.
Futuros análisis
- Incluir análisis de sentimiento.
- Utilizar autoencoder para extraer variables subyacentes.
Comentarios
Publicar un comentario