Skatta och prognostisera en AR-modell

Tidsserieanalys i Python

Rob Reider

Adjunct Professor, NYU-Courant Consultant, Quantopian

Skatta en AR-modell

  • Skatta parametrar från data (simulerade)

    from statsmodels.tsa.arima_model import ARMA
    mod = ARMA(data, order=(1,0))
    result = mod.fit()
    
  • ARMA är inaktuell och har ersatts av ARIMA

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

  • För ARIMA: order=(p,d,q)
Tidsserieanalys i Python

Skatta en AR-modell

  • Fullständig utdata (sant $\large \mu=0$ och $\large \phi=0.9$)
    print(result.summary())
    

Tidsserieanalys i Python

Skatta en AR-modell

  • Endast skattningarna av $\large \mu$ och $\large \phi$ (sant $\large \mu=0$ och $\large \phi=0.9$)
    print(result.params)
    
array([-0.03605989,  0.90535667])
Tidsserieanalys i Python

Prognostisera med en AR-modell

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()
  • Argument till funktionen plot_predict()
    • Första argumentet är den anpassade modellen
    • Ange alpha=None för att dölja konfidensintervallet
    • Ange ax=ax för att rita data och prognos i samma axlar

Tidsserieanalys i Python

Nu kör vi en övning!

Tidsserieanalys i Python

Preparing Video For Download...