1. Nauka
  2. /
  3. Kursy
  4. /
  5. Analiza szeregów czasowych w Pythonie

Connected

ćwiczenie

Czy mamy pewność, że ta akcja wykazuje powrót do średniej?

W poprzednim rozdziale zobaczyłeś, że autokorelacja tygodniowych zwrotów akcji MSFT wyniosła -0,16. Wydaje się to dużą wartością – ale czy jest ona istotna statystycznie? Innymi słowy, czy można powiedzieć, że prawdopodobieństwo zaobserwowania tak dużej ujemnej autokorelacji, gdyby prawdziwa autokorelacja wynosiła zero, jest mniejsze niż 5%? Czy autokorelacje przy innych opóźnieniach również różnią się istotnie od zera?

Nawet jeśli prawdziwe autokorelacje są zerowe dla wszystkich opóźnień, w skończonej próbie zwrotów estymowane autokorelacje nie będą dokładnie równe zeru. Odchylenie standardowe próbkowej autokorelacji wynosi \(\small 1/\sqrt{N}\), gdzie \(\small N\) to liczba obserwacji. Jeśli więc \(\small N=100\), odchylenie standardowe ACF wynosi 0,1 – a ponieważ 95% rozkładu normalnego mieści się między +1,96 a -1,96 odchylenia standardowego od średniej, 95-procentowy przedział ufności to \(\small \pm 1.96/\sqrt{N}\). Przybliżenie to jest trafne tylko wtedy, gdy wszystkie prawdziwe autokorelacje są równe zero.

Obliczysz rzeczywisty i przybliżony przedział ufności dla ACF, a następnie porównasz go z autokorelacją dla opóźnienia pierwszego, wynoszącą -0,16, uzyskaną w poprzednim rozdziale. Tygodniowe zwroty Microsoftu są wczytane do ramki danych o nazwie returns.

Instrukcje

100 XP
  • Oblicz ponownie autokorelację tygodniowych zwrotów z serii 'Adj Close' w ramce danych returns.
  • Wyznacz liczbę obserwacji w ramce danych returns za pomocą funkcji len().
  • Wyznacz przybliżony 95-procentowy przedział ufności dla estymowanej autokorelacji. Funkcja sqrt() z modułu math jest już zaimportowana i możesz jej użyć.
  • Wykreśl funkcję autokorelacji returns przy użyciu plot_acf zaimportowanego ze statsmodels. Ustaw alpha=0.05 dla przedziałów ufności (to wartość domyślna) oraz lags=20.