ComenzarEmpieza gratis

Aplicación de un modelo MA

El rebote del precio de las acciones entre la oferta y la demanda induce una autocorrelación de primer orden negativa, pero no autocorrelaciones en rezagos superiores a 1. Obtendrás el mismo patrón ACF con un modelo MA(1). Por tanto, ajustarás un modelo MA(1) a los datos bursátiles intradía del último ejercicio.

El primer paso consiste en calcular minuto a minuto los rendimientos de los precios en intraday, y trazar la función de autocorrelación. Debes observar que la ACF se parece a la de un proceso MA(1). A continuación, ajusta los datos a un MA(1), del mismo modo que hiciste con los datos simulados.

Este ejercicio forma parte del curso

Análisis de Series Temporales en Python

Ver curso

Instrucciones de ejercicio

  • Importa los módulos plot_acf y ARIMA de statsmodels
  • Calcula los rendimientos minuto a minuto a partir de los precios:
    • Calcula los rendimientos con el método .pct_change()
    • Utiliza el método pandas .dropna() para eliminar la primera fila de retornos, que es NaN
  • Traza la función ACF con retardos de hasta 60 minutos
  • Ajusta los datos de devoluciones a un modelo MA(1) e imprime el parámetro MA(1)

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

# Import plot_acf and ARIMA modules from statsmodels
from statsmodels.graphics.tsaplots import plot_acf
from statsmodels.tsa.arima.model import ARIMA

# Compute returns from prices and drop the NaN
returns = intraday.___
returns = returns.___

# Plot ACF of returns with lags up to 60 minutes
plot_acf(___, ___)
plt.show()

# Fit the data to an MA(1) model
mod = ARIMA(___, order=(0,0,1))
res = mod.fit()
print(res.params[1])
Editar y ejecutar código