Modelli GARCH in Python
Chelsea Yang
Data Science Instructor
from arch import arch_model

Sviluppa un modello GARCH in tre passi:
Assunzioni del modello:
"normal" (predef.), "t", "skewt""constant" (predef.), "zero", "AR""GARCH" (predef.), "ARCH", "EGARCH"
basic_gm = arch_model(sp_data['Return'], p = 1, q = 1,
mean = 'constant', vol = 'GARCH', dist = 'normal')
Mostra l’output della stima ogni n iterazioni:
gm_result = gm_model.fit(update_freq = 4)

Disattiva la visualizzazione:
gm_result = gm_model.fit(disp = 'off')
Stimati con il "metodo di massima verosimiglianza"
print(gm_result.params)
mu 0.077239
omega 0.039587
alpha[1] 0.167963
beta[1] 0.786467
Name: params, dtype: float64
print(gm_result.summary())

gm_result.plot()

# Previsione a 5 periodi avanti
gm_forecast = gm_result.forecast(horizon = 5)
# Stampa l’ultima riga della varianza prevista
print(gm_forecast.variance[-1:])
h.1 h.2 h.3 h.4 h.5
Date
2019-10-10 0.994079 0.988366 0.982913 0.977708 0.972741
h.1 nella riga "2019-10-10": previsione a 1 passo usando i dati fino a quella data inclusa
Modelli GARCH in Python