IniziaInizia gratis

Previsioni con modello MA

Come hai fatto con i modelli AR, userai i modelli MA per generare previsioni in-sample e out-of-sample con la funzione plot_predict() di statsmodels.

Per la serie simulata simulated_data_1 con \(\small \theta=-0.9\), traccerai previsioni in-sample e out-of-sample. Una grande differenza che vedrai tra le previsioni out-of-sample con un modello MA(1) e un modello AR(1) è che, a più di un periodo nel futuro, le previsioni dell’MA(1) coincidono semplicemente con la media del campione.

Questo esercizio fa parte del corso

Analisi delle serie temporali in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Importa la classe ARIMA e la funzione plot_predict
  • Crea un’istanza della classe ARIMA chiamata mod usando i dati simulati simulated_data_1 e l’ordine (p,d,q) del modello (in questo caso, per un MA(1)), order=(0,0,1)
  • Stima il modello mod con il metodo .fit() e salva il risultato in un oggetto chiamato res
  • Traccia i dati in-sample a partire dal punto dati 950
  • Traccia le previsioni out-of-sample dei dati e gli intervalli di confidenza usando la funzione plot_predict(), partendo dal punto dati 950 e terminando la previsione al punto 1010

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Import the ARIMA and plot_predict from statsmodels
from statsmodels.tsa.arima.model import ARIMA
from statsmodels.graphics.tsaplots import plot_predict

# Forecast the first MA(1) model
mod = ARIMA(___, order=___)
res = mod.fit()

# Plot the data and the forecast
fig, ax = plt.subplots()
simulated_data_1.loc[950:].plot(ax=ax)
plot_predict(res, start=___, end=___, ax=ax)
plt.show()
Modifica ed esegui il codice