Äquivalenz von AR(1) und MA(Unendlich)
Um den Zusammenhang zwischen MA- und AR-Modellen besser zu verstehen, zeigst du, dass ein AR(1)-Modell einem MA(\(\small \infty\))-Modell mit passenden Parametern entspricht.
Du simulierst ein MA-Modell mit den Parametern \(\small 0{,}8, 0{,}8^2, 0{,}8^3, \ldots \) für eine große Anzahl (30) von Lags und zeigst, dass es die gleiche Autokorrelationsfunktion hat wie ein AR(1)-Modell mit \(\small \phi=0{,}8\).
Hinweis: Um eine Zahl x auf die Potenz n zu erhöhen, verwende das Format x**n.
Diese Übung ist Teil des Kurses
Zeitreihenanalyse in Python
Anleitung zur Übung
- Importiere die Module aus statsmodels zum Simulieren von Daten und zum Plotten der ACF
- Verwende eine List Comprehension, um eine Liste mit exponentiell abklingenden MA-Parametern zu erstellen: \(\small 1, 0{,}8, 0{,}8^2, 0{,}8^3, \ldots\)
- Simuliere 5000 Beobachtungen des MA(30)-Modells
- Plotte die ACF der simulierten Zeitreihe
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# import the modules for simulating data and plotting the ACF
from statsmodels.tsa.arima_process import ArmaProcess
from statsmodels.graphics.tsaplots import plot_acf
# Build a list MA parameters
ma = [___ for i in range(30)]
# Simulate the MA(30) model
ar = np.array([1])
AR_object = ArmaProcess(ar, ___)
simulated_data = ___.generate_sample(nsample=5000)
# Plot the ACF
plot_acf(___, lags=30)
plt.show()