Jak obliczany jest trend średniej ruchomej?
Czym jest trend średniej ruchomej?
Trend średniej ruchomej (często skracany do „trend średniej ruchomej”) to sposób na podsumowanie, jak poruszał się szereg czasowy, poprzez wygładzanie przeszłych wartości. Zamiast używać surowych cen (które ulegają wahaniom), obliczasz średnią ruchomą w wybranym oknie. Następnie interpretujesz „trend” na podstawie zachowania średniej ruchomej — zazwyczaj jej nachylenia (rosnącego lub malejącego), kierunku lub jej relacji do ceny albo innej średniej ruchomej.
Kluczowa kwestia: samo obliczenie daje szereg liczbowy (średnią ruchomą). „Trend” to reguła interpretacyjna zastosowana na tym szeregu.
Podstawowe obliczenie: średnia ruchoma
Krok 1: Wybór szeregu wejściowego
Potrzebujesz uporządkowanego w czasie szeregu cen. Typowe wybory (w zależności od implementacji) to ceny zamknięcia, ale można również użyć innych szeregów, takich jak średnie z maksimów/minimów. Formalnie niech:
- (P_t) = wartość ceny w czasie (t)
- (t) postępuje w równych krokach (na przykład każde zamknięcie świecy/słupka)
Krok 2: Wybór długości okna
Wybierz długość okna (n) (na przykład 10, 20, 50 okresów). Ten parametr kontroluje, jak duże wygładzanie zastosujesz.
Krok 3: Wybór typu średniej ruchomej
Najprostszą i najczęściej stosowaną wersją jest prosta średnia ruchoma (SMA): [ \text{SMA}t = \frac{1}{n}\sum{i=0}^{n-1} P_{t-i} ]
Inne implementacje wykorzystują wygładzanie wykładnicze (EMA), które nadaje większą wagę ostatnim obserwacjom: [ \text{EMA}t = \alpha P_t + (1-\alpha)\text{EMA}{t-1} ] gdzie (\alpha) to współczynnik wygładzania powiązany z wybraną długością okresu. Różne platformy stosują nieco inne definicje (\alpha), dlatego należy zweryfikować dokładne odwzorowanie, którego używają.
Wymóg dotyczący danych
Aby obliczyć (\text{SMA}_t) lub (\text{EMA}_t), potrzebujesz wystarczającej liczby obserwacji historycznych, aby wypełnić okno (SMA) lub ustalić wartość początkową (EMA). Wczesne punkty mogą być niezdefiniowane lub mniej wiarygodne z powodu niewystarczającej historii.
Jak część „trendowa” jest obliczana na podstawie średniej ruchomej
Po obliczeniu (M_t) (gdzie (M_t) to (\text{SMA}_t) lub (\text{EMA}_t)), reguła trendu średniej ruchomej przekształca (M_t) w ocenę trendu.
Metoda A: Nachylenie/kierunek średniej ruchomej
Podstawowe podejście polega na sprawdzeniu zmiany średniej ruchomej w ciągu jednego lub więcej okresów.
- Nachylenie jednookresowe: (\Delta M_t = M_t - M_{t-1})
- Nachylenie wielookresowe: (M_t - M_{t-k})
Następnie można zinterpretować:
- Trend wzrostowy: (M_t) rośnie (nachylenie dodatnie)
- Trend spadkowy: (M_t) maleje (nachylenie ujemne)
Ta metoda jest łatwa do zweryfikowania, ponieważ zależy wyłącznie od obliczonych wartości średniej ruchomej.
Metoda B: Średnia ruchoma a cena (względne położenie)
Inna powszechna reguła porównuje średnią ruchomą z bieżącą ceną:
- Jeśli (P_t > M_t), cena znajduje się powyżej średniej (często interpretowane jako bycze/dodatnie nastawienie)
- Jeśli (P_t < M_t), cena znajduje się poniżej średniej (często interpretowane jako niedźwiedzie/ujemne nastawienie)
To nadal nie jest „sygnał” sam w sobie; jest to spójne porównanie, które można obliczyć i przeanalizować.
Metoda C: Przecięcie dwóch średnich ruchomych
Powszechnie stosowany wariant porównuje dwie średnie o różnych długościach:
- (M^{(fast)}_t) z oknem (n_1)
- (M^{(slow)}_t) z oknem (n_2), gdzie zazwyczaj (n_1 \neq n_2)
Interpretacja przecięcia może uwzględniać przypadki, w których:
- (M^{(fast)}_t) rośnie powyżej (M^{(slow)}_t)
- (M^{(fast)}_t) spada poniżej (M^{(slow)}_t)
Ponownie obliczenie jest deterministyczne; reguła interpretacyjna definiuje „trend”.
Dowód lub przykład, który można zweryfikować krok po kroku
Załóżmy, że używasz SMA na cenach zamknięcia, a następnie klasyfikujesz trend za pomocą nachylenia.
Założenia:
- Masz ceny dla kolejnych okresów: (P_1, P_2, …, P_6)
- Długość okna (n=3)
- Krok czasowy jest spójny (brak brakujących słupków)
Oblicz:
- (\text{SMA}_3 = (P_1 + P_2 + P_3)/3)
- (\text{SMA}_4 = (P_2 + P_3 + P_4)/3)
- (\text{SMA}_5 = (P_3 + P_4 + P_5)/3)
- (\text{SMA}_6 = (P_4 + P_5 + P_6)/3)
Następnie trend oparty na nachyleniu dla (t\ge 4):
- (\Delta \text{SMA}_t = \text{SMA}t - \text{SMA}{t-1})
Jeśli (\Delta \text{SMA}_5 > 0), średnia ruchoma rośnie z okresu 4 na 5, co zgodnie z wybraną regułą oznaczasz jako wzrostowy trend średniej ruchomej.
Możesz to odtworzyć na dowolnym zbiorze danych, ponieważ każdy krok jest jednoznaczny: oblicz średnią kroczącą, a następnie oblicz różnicę między kolejnymi wartościami średniej.
Istotne ograniczenia i tryby awarii
Mimo że obliczenie jest proste, kilka ograniczeń często wpływa na wyniki.
1) Wrażliwość na parametry (długość okna i typ średniej)
Zmiana (n) lub użycie SMA zamiast EMA może znacząco zmienić (M_t), co zmienia interpretację trendu. Dłuższe okno zazwyczaj bardziej wygładza (wolniej reaguje). Krótsze okno reaguje szybciej, ale może podążać za szumem.
2) Szum i krótkoterminowe odwrócenia
W niestabilnych warunkach średnia ruchoma może wielokrotnie zmieniać kierunek. Reguła nachylenia może przełączać się między zmianami dodatnimi i ujemnymi, nawet gdy „szerszy obraz” jest niejasny. Powoduje to efekt piły (whipsaw).
3) Opóźnienie jest wbudowane
Każda średnia ruchoma jest operatorem wygładzającym. Ma tendencję do odzwierciedlania przeszłości, a nie bieżącego kierunku. Oznacza to, że ocena trendu może pojawić się po tym, jak szereg już zaczął się zmieniać.
4) Wyrównanie danych i brakujące obserwacje
Obliczenie zakłada spójne kroki czasowe. Jeśli zbiór danych ma luki, różne definicje słupków lub niespójne przetwarzanie znaczników czasu, okno kroczące obejmie niezamierzone okresy.
5) Nie jest to samodzielna prognoza
Trend średniej ruchomej jest opisową transformacją wartości historycznych. Nie definiuje sam w sobie przyszłych wyników. Wzorce historyczne mogą różnić się od przyszłych zachowań, zwłaszcza gdy zmienia się dynamika rynku.
Jak samodzielnie zweryfikować obliczenie
Aby niezależnie zweryfikować trend średniej ruchomej:
- Zapisz dokładne dane wejściowe (P_t) (które pole cenowe) i krok czasowy.
- Określ typ średniej ruchomej (SMA, EMA itp.) oraz wartości parametrów (długość okna (n), a dla EMA dokładną definicję współczynnika wygładzania).
- Oblicz (M_t) dla małego przykładowego zbioru danych.
- Zastosuj jedną, jednoznaczną regułę trendu (nachylenie, cena względem średniej lub przecięcie).
- Sprawdź obsługę krańcową: jak traktowane są wczesne okresy, gdy średnia ruchoma nie może być jeszcze w pełni obliczona.
Jeśli dwa narzędzia generują różne wartości trendu średniej ruchomej, rozbieżność zwykle wynika z różnic w: polu cenowym wejściowym, długości okna, definicji metody uśredniania, odwzorowaniu współczynnika wygładzania EMA lub sposobie obsługi początku szeregu przez narzędzie.