Zaawansowane zagadnienia dotyczące WMA (ważona średnia krocząca)
Bezpośrednia odpowiedź
WMA (Weighted Moving Average) to metoda średniej kroczącej, która wygładza szereg czasowy, łącząc najnowsze obserwacje przy użyciu z góry określonego zestawu wag. „Zaawansowane zagadnienia” wynikają głównie z wyboru i walidacji tych wag, zrozumienia, jak okno wsteczne zmienia reaktywność, oraz rozpoznawania trybów awarii (na przykład wrażliwości na zaszumione dane lub zniekształceń spowodowanych lukami i niespójnymi danymi). Ponieważ WMA jest obliczeniem deterministycznym, możesz je niezależnie zweryfikować, odtwarzając formułę krok po kroku na tym samym szeregu wejściowym.
Mechanizm i definicja
WMA jest zdefiniowana, gdy określisz:
- Długość okresu wstecznego (N): ile przeszłych obserwacji jest uwzględnianych na każdym kroku czasowym.
- Regułę wag: jak wagi są przypisywane do tych N obserwacji.
- Szereg danych: jakie „ceny” lub „wartości” podajesz do średniej (na przykład ceny zamknięcia) i z jaką częstotliwością próbkowania.
Typowy schemat wag przypisuje większe wagi nowszym obserwacjom. Jeśli oznaczymy najnowszą obserwację (w czasie t) jako x_t, a starsze obserwacje jako x_{t-1}, x_{t-2}, …, x_{t-(N-1)}, typową WMA można zapisać jako:
WMA_t = (\sum_{i=0}^{N-1} w_i · x_{t-i}) / (\sum_{i=0}^{N-1} w_i)
Tutaj w_0 to waga dla najnowszej wartości x_t, a w_{N-1} to waga dla najstarszej wartości x_{t-(N-1)}. Wiele implementacji używa wag rosnących w kierunku teraźniejszości (na przykład wag liniowych). Niektóre platformy mogą stosować inne konwencje (na przykład, czy wagi są ściśle liniowe, czy też kładą nacisk na inne pozycje). Oznacza to, że dwie implementacje „WMA(10)” mogą się różnić, jeśli ich reguły wag są różne.
Dowód lub przykład do sprawdzenia
Ponieważ nie ma tu wymaganych faktów specyficznych dla rynku, najsilniejszym „dowodem” jest powtarzalność matematyki.
Przykład obliczeniowy z podanymi założeniami
Załóżmy:
- Długość okresu wstecznego N = 4
- Liniowe wagi rosnące w kierunku teraźniejszości: wagi dla x_t, x_{t-1}, x_{t-2}, x_{t-3} to 4, 3, 2, 1
- Brak brakujących wartości w szeregu wejściowym
Niech ostatnie cztery obserwacje będą:
- x_t = 100
- x_{t-1} = 98
- x_{t-2} = 101
- x_{t-3} = 97
Oblicz sumę ważoną:
- 4·100 + 3·98 + 2·101 + 1·97 = 400 + 294 + 202 + 97 = 993
Oblicz sumę wag:
- 4 + 3 + 2 + 1 = 10
Następnie:
- WMA_t = 993 / 10 = 99.3
Jest to w pełni deterministyczne przy danych założeniach. Jeśli odtworzysz to samo obliczenie, a twój wynik będzie inny, przyczyną jest zwykle jedna z następujących:
- inna konwencja wag (na przykład odwrócona kolejność wag)
- inna definicja N (ile punktów jest uwzględnianych)
- inne traktowanie znaczników czasu lub częstotliwości próbkowania
Ograniczenia implementacyjne do rozważenia
W praktyce „zaawansowane” problemy często pojawiają się wokół danych wejściowych, a nie formuły:
- Wyrównanie próbkowania: Jeśli dane są nieregularne lub agregujesz je do innej częstotliwości, wartości x_t się zmieniają, więc WMA się zmienia.
- Normalizacja: Mianownik (suma wag) musi odpowiadać twojej definicji wag. Niektóre kody mogą już domyślnie normalizować.
- Okres rozgrzewki: Dla pierwszych N−1 punktów WMA nie można obliczyć bez wystarczającej historii. Platformy mogą wyprowadzać puste wartości, częściowe obliczenia lub przesunięte wartości.
- Przetwarzanie wstępne danych: Podziały, dywidendy lub inne działania korporacyjne są mniej istotne dla rynku FX niż dla akcji, ale inne korekty (takie jak czyszczenie wartości odstających) mogą nadal zmieniać szereg podawany do WMA.
Ograniczenia i ryzyka (istotne tryby awarii)
WMA nie „przewiduje” przyszłych wartości; jest mechanizmem wygładzania i ważenia. Główne ograniczenia mają charakter operacyjny i statystyczny.
-
Wrażliwość na szum i krótkotrwałe ruchy Ponieważ WMA kładzie nacisk na nowsze obserwacje, może reagować szybciej niż prosta średnia krocząca, ale oznacza to również, że może wzmacniać wpływ krótkoterminowych skoków lub szumu pomiarowego.
-
Zależność od parametrów (N i wag) Zmiana N lub reguły wag zmienia efektywną „pamięć” średniej. Dwa różne wybory mogą dawać wyniki, które przez pewien czas wyglądają podobnie, a następnie rozchodzą się podczas zmian reżimu. Jest to oczekiwane; historyczne podobieństwo nie gwarantuje przyszłego podobieństwa.
-
Przypadki brzegowe wynikające z luk w danych lub niespójnych szeregów Jeśli twój szereg wejściowy zawiera brakujące punkty, a twoja implementacja je uzupełnia (na przykład przez interpolację lub wypełnianie w przód), wynik WMA może być obciążony, ponieważ „prawdziwa” sekwencja została zmieniona. Nawet niewielkie różnice w sposobie obsługi brakujących danych mogą prowadzić do różnych średnich.
-
Mylące porównania między ramami czasowymi WMA obliczona na jednej ramie czasowej próbkowania nie może być bezpośrednio interpretowana jako „ten sam wskaźnik” na innej. Jeśli jeden szereg używa świec jednominutowych, a inny świec pięciominutowych, podstawowe obserwacje x_t reprezentują różne agregaty czasowe.
-
Zmiana reżimu i niestacjonarność Szeregi czasowe często zmieniają zachowanie w czasie (na przykład reżimy zmienności). Ponieważ WMA używa stałych wag, może opóźniać się lub nadmiernie reagować, gdy zmienia się struktura statystyczna szeregu.
Te ograniczenia oznaczają, że WMA należy traktować jako opisową transformację wybranych danych przeszłych, a nie jako samodzielną pewność co do przyszłego kierunku.
Weryfikacja i kolejne pytanie
Aby niezależnie zweryfikować fakty dotyczące WMA dla twojego przypadku użycia:
- Przelicz WMA z surowych wartości x_t, używając dokładnie tego samego N, reguły wag i normalizacji.
- Potwierdź, jak twoje wybrane narzędzie obsługuje okres rozgrzewki i brakujące dane.
- Udokumentuj źródło danych i częstotliwość próbkowania, aby twoja weryfikacja odpowiadała danym wejściowym.
Przydatnym kolejnym pytaniem do zbadania (bez zakładania sygnału) jest: jak wybór ramy czasowej i schematu wag zmienia reaktywność WMA w porównaniu z alternatywnymi średnimi kroczącymi na tym samym szeregu? Jeśli porównujesz wyniki, upewnij się, że zachowujesz spójność N i wyrównania próbkowania dla uczciwego sprawdzenia.
Jeśli chcesz, podziel się dokładną formułą WMA lub regułą wag, której używa twoja platforma (na przykład, czy używa wag liniowych, czy innego schematu), a pomogę ci przełożyć ją na prosty, weryfikowalny język obliczeniowy.