ARCH- en GARCH-reeksen simuleren
In deze oefening simuleer je respectievelijk een ARCH(1)- en een GARCH(1,1)-tijdreeks met een vooraf gedefinieerde functie simulate_GARCH(n, omega, alpha, beta = 0).
Onthoud het verschil tussen een ARCH(1)- en een GARCH(1,1)-model: naast een autoregressieve component waarbij \(\alpha\) wordt vermenigvuldigd met het kwadraat van de residuen met vertraging 1, bevat een GARCH-model ook een moving-averagecomponent waarbij \(\beta\) wordt vermenigvuldigd met de variantie met vertraging 1.
De vooraf gedefinieerde functie simuleert een ARCH/GARCH-reeks op basis van de door jou opgegeven n (aantal simulaties), omega, alpha en beta (standaard 0). De functie retourneert gesimuleerde residuen en varianties. Daarna ga je de gesimuleerde varianties van het ARCH- en GARCH-proces plotten en bekijken.
Deze oefening maakt deel uit van de cursus
GARCH-modellen in Python
Oefeninstructies
- Simuleer een ARCH(1)-proces met
omega= 0.1,alpha= 0.7. - Simuleer een GARCH(1,1)-proces met
omega= 0.1,alpha= 0.7 enbeta= 0.1. - Plot respectievelijk de gesimuleerde ARCH-varianties en GARCH-varianties.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Simulate a ARCH(1) series
arch_resid, arch_variance = simulate_GARCH(n= 200,
omega = ____, alpha = ____)
# Simulate a GARCH(1,1) series
garch_resid, garch_variance = simulate_GARCH(n= 200,
omega = ____, alpha = ____,
beta = ____)
# Plot the ARCH variance
plt.plot(____, color = 'red', label = 'ARCH Variance')
# Plot the GARCH variance
plt.plot(____, color = 'orange', label = 'GARCH Variance')
plt.legend()
plt.show()