Estimación y predicción con un modelo AR

Análisis de series temporales en Python

Rob Reider

Adjunct Professor, NYU-Courant Consultant, Quantopian

Estimación de un modelo AR

  • Para estimar parámetros a partir de datos (simulados)

    from statsmodels.tsa.arima_model import ARMA
    mod = ARMA(data, order=(1,0))
    result = mod.fit()
    
  • ARMA está obsoleto y se ha sustituido por ARIMA

    from statsmodels.tsa.arima.model import ARIMA
    mod = ARIMA(data, order=(1,0,0))
    result = mod.fit()
    
  • En ARMA, order=(p,q)

  • En ARIMA, order=(p,d,q)
Análisis de series temporales en Python

Estimación de un modelo AR

  • Salida completa (verdaderos $\large \mu=0$ y $\large \phi=0.9$)
    print(result.summary())
    

Análisis de series temporales en Python

Estimación de un modelo AR

  • Solo las estimaciones de $\large \mu$ y $\large \phi$ (verdaderos $\large \mu=0$ y $\large \phi=0.9$)
    print(result.params)
    
array([-0.03605989,  0.90535667])
Análisis de series temporales en Python

Predicción con un modelo AR

from statsmodels.graphics.tsaplots import plot_predict
fig, ax = plt.subplots()
data.plot(ax=ax)
plot_predict(result, start='2012-09-27', end='2012-10-06', alpha=0.05, ax=ax)
plt.show()
  • Argumentos de la función plot_predict()
    • El primer argumento es el modelo ajustado
    • Pon alpha=None para no mostrar el intervalo de confianza
    • Pon ax=ax para dibujar datos y predicción en los mismos ejes

Análisis de series temporales en Python

¡Vamos a practicar!

Análisis de series temporales en Python

Preparing Video For Download...