Použití modelu MA
Pohyb ceny akcie mezi nabídkovou a poptávkovou cenou vyvolává zápornou autokorelaci prvního řádu, ale žádné autokorelace pro vyšší zpoždění. Stejný vzor ACF dostaneš i s modelem MA(1). Proto přizpůsobíš model MA(1) intradenním akciovým datům z předchozího cvičení.
Prvním krokem je výpočet minutových výnosů z cen v proměnné intraday a vykreslení autokorelační funkce. Měl/a bys vidět, že ACF odpovídá průběhu typickému pro proces MA(1). Poté data přizpůsob modelu MA(1) stejným způsobem, jakým jsi to dělal/a pro simulovaná data.
Toto cvičení je součástí kurzu
Analýza časových řad v Pythonu
Pokyny k cvičení
- Importuj moduly
plot_acfaARIMAze statsmodels - Vypočítej minutové výnosy z cen:
- Výnosy vypočítej metodou
.pct_change() - Pomocí pandas metody
.dropna()odstraň první řádek výnosů, který obsahuje hodnotu NaN
- Výnosy vypočítej metodou
- Vykresli ACF funkci pro zpoždění až 60 minut
- Přizpůsob data výnosů modelu MA(1) a vypiš parametr MA(1)
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Import plot_acf and ARIMA modules from statsmodels
from statsmodels.graphics.tsaplots import plot_acf
from statsmodels.tsa.arima.model import ARIMA
# Compute returns from prices and drop the NaN
returns = intraday.___
returns = returns.___
# Plot ACF of returns with lags up to 60 minutes
plot_acf(___, ___)
plt.show()
# Fit the data to an MA(1) model
mod = ARIMA(___, order=(0,0,1))
res = mod.fit()
print(res.params[1])