Jak obliczane są RSI i MACD

Wzory obliczeniowe RSI i MACD, parametry oraz wymagania dotyczące danych.

Jak obliczane są RSI i MACD

Bezpośrednia odpowiedź

RSI (Relative Strength Index) i MACD (Moving Average Convergence Divergence) są obliczane na podstawie historycznego szeregu cen oraz niewielkiego zestawu ustawień.

  • RSI przekształca ostatnie momentum cenowe w skalę 0–100, wykorzystując średnie zyski i średnie straty w wybranym oknie analizy.
  • MACD używa wykładniczych średnich kroczących (EMA) do zmierzenia różnicy między szybszym i wolniejszym oszacowaniem trendu, a następnie opcjonalnie wygładza tę różnicę kolejną EMA.

Aby wyjaśnić i zweryfikować którykolwiek ze wskaźników, potrzebujesz tylko (1) uporządkowanej chronologicznie listy cen, (2) parametrów wskaźnika (takich jak długość okna analizy czy okresy EMA) oraz (3) dokładnej metody obliczeniowej (zwłaszcza w przypadku uśredniania RSI). Ponieważ metoda zależy od tych wyborów, wyniki mogą się różnić w zależności od narzędzi wykresowych i ustawień.

Mechanizm i definicje

RSI: definicja wejściowych danych momentum

RSI zaczyna się od zmian cen między kolejnymi punktami danych.

  1. Oblicz zmianę:
    • (\Delta_t = \text{Cena}t - \text{Cena}{t-1})
  2. Podziel zmiany na zyski i straty:
    • (\text{Zysk}_t = \max(\Delta_t, 0))
    • (\text{Strata}_t = \max(-\Delta_t, 0))
  3. W wybranym oknie analizy o długości (N) oblicz średnie zyski i średnie straty.

Powszechna formuła RSI wykorzystuje wygładzanie w stylu Wildera. Przy wygładzaniu Wildera najpierw obliczasz początkowe średnie, używając pierwszych (N) zysków i strat, a następnie aktualizujesz je rekurencyjnie:

  • Wartość początkowa (dla pierwszej wartości RSI):
    • (\text{ŚrZysk}N = \frac{1}{N}\sum{i=1}^{N}\text{Zysk}_i)
    • (\text{ŚrStrata}N = \frac{1}{N}\sum{i=1}^{N}\text{Strata}_i)
  • Aktualizacja (dla (t > N)):
    • (\text{ŚrZysk}t = \frac{(\text{ŚrZysk}{t-1}\cdot (N-1)) + \text{Zysk}_t}{N})
    • (\text{ŚrStrata}t = \frac{(\text{ŚrStrata}{t-1}\cdot (N-1)) + \text{Strata}_t}{N})

Następnie oblicz wskaźnik względnej siły:

  • (\text{RS}_t = \frac{\text{ŚrZysk}_t}{\text{ŚrStrata}_t})

Na koniec przelicz na skalę RSI:

  • (\text{RSI}_t = 100 - \frac{100}{1 + \text{RS}_t})

Ważny przypadek brzegowy: jeśli (\text{ŚrStrata}_t = 0), to (\text{RS}_t) jest nieokreślone przez bezpośrednie dzielenie. Wiele implementacji traktuje tę sytuację jako RSI zbliżające się do 100, gdy straty są efektywnie zerowe w oknie uśredniania. Podczas weryfikacji wyników musisz dopasować się do tej samej konwencji, której używa Twoje narzędzie do danych.

MACD: definicja różnicy EMA

MACD opiera się na wykładniczych średnich kroczących (EMA), które są ważonymi średnimi kroczącymi reagującymi szybciej na ostatnie ceny.

Podstawowe dane wejściowe to:

  • Okres szybkiej EMA (a)
  • Okres wolnej EMA (b)
  • Okres linii sygnałowej (c) (często (c) wynosi 9 w wielu powszechnych ustawieniach domyślnych, ale powinieneś zweryfikować swoje dokładne ustawienia)
  1. Oblicz szybką i wolną EMA na wybranym szeregu cen:

    • (\text{EMA}_{a}(t))
    • (\text{EMA}_{b}(t))
  2. Oblicz linię MACD jako różnicę:

    • (\text{MACD}(t) = \text{EMA}{a}(t) - \text{EMA}{b}(t))
  3. Opcjonalnie oblicz linię sygnałową jako EMA linii MACD:

    • (\text{Sygnał}(t) = \text{EMA}_{c} \big(\text{MACD}(t)\big))
  4. Często pokazywany jest również histogram (ponownie zależy to od konwencji wykresu):

    • (\text{Histogram}(t) = \text{MACD}(t) - \text{Sygnał}(t))

Kluczowy szczegół dla weryfikacji: inicjalizacja EMA i dokładny wzór używany przez Twoją implementację mogą się różnić (na przykład sposób ustawienia pierwszej wartości EMA). Jeśli obliczony MACD nie zgadza się z wykresem, sprawdź, czy obie strony używają tej samej inicjalizacji EMA i tych samych okresów.

Dowód lub przykład (do samodzielnego sprawdzenia)

Poniżej znajdują się proste, weryfikowalne sposoby sprawdzenia zrozumienia przy użyciu dowolnego stałego historycznego szeregu cen, który już posiadasz.

Przykładowa konfiguracja dla RSI

Założenia dla tego przykładu:

  • Masz ceny (\text{Cena}_0, \text{Cena}_1, …)
  • Wybierasz okno analizy (N)
  • Używasz metody wygładzania w stylu Wildera opisanej powyżej

Kroki, które możesz odtworzyć:

  1. Oblicz (\Delta_t) dla każdego kroku.
  2. Przekształć na (\text{Zysk}_t) i (\text{Strata}_t).
  3. Dla pierwszej wartości RSI uśrednij pierwsze (N) zysków i strat.
  4. Dla kolejnych punktów aktualizuj średnie za pomocą rekurencji Wildera.
  5. Zastosuj (\text{RSI}_t = 100 - \frac{100}{1 + \text{ŚrZysk}_t/\text{ŚrStrata}_t}).

Niezawodnym testem jest obliczenie RSI od podstaw na tych samych danych wejściowych i porównanie wartości w tym samym indeksie czasowym. Jeśli chcesz tylko zweryfikować mechanikę, skup się na wczesnych wartościach RSI, gdzie początkowe średnie mają największe znaczenie.

Przykładowa konfiguracja dla MACD

Założenia:

  • Masz uporządkowany chronologicznie szereg cen
  • Wybierasz okresy (a) (szybka), (b) (wolna) i (c) (sygnał)
  • Używasz tej samej metody EMA (w tym inicjalizacji) dla obu EMA oraz EMA sygnału

Kroki:

  1. Oblicz (\text{EMA}{a}(t)) i (\text{EMA}{b}(t)) w całym szeregu.
  2. Odejmij, aby otrzymać (\text{MACD}(t)).
  3. Oblicz (\text{Sygnał}(t)) jako EMA z (\text{MACD}(t)).
  4. Jeśli to konieczne, oblicz (\text{Histogram}(t) = \text{MACD}(t) - \text{Sygnał}(t)).

Samokontrola polega na sprawdzeniu, czy Twoja linia MACD równa się szybkiej EMA minus wolna EMA w każdym indeksie. Jeśli linia MACD się zgadza, ale linia sygnałowa nie, różnica prawie zawsze wynika z niedopasowania okresu sygnału lub inicjalizacji EMA.

Ograniczenia i tryby awarii

1) Różne „standardowe” ustawienia dają różne liczby

Wyniki zarówno RSI, jak i MACD zależą od parametrów (okno analizy RSI (N); okresy EMA MACD (a), (b) oraz opcjonalny okres sygnału (c)). Nawet gdy użytkownicy myślą, że używają tego samego wskaźnika, ustawienia mogą się różnić między platformami.

2) Dopasowanie danych i brakujące punkty zmieniają obliczenia

Te wskaźniki są zbudowane z kolejnych punktów danych. Jeśli Twój szereg wejściowy ma brakujące świece, nieregularne znaczniki czasu lub inną definicję „Ceny” (taką jak cena zamknięcia w porównaniu z inną wartością pochodną), obliczone zyski/straty dla RSI i sekwencja EMA dla MACD mogą się zmienić.

3) Inicjalizacja uśredniania EMA i RSI wpływa na wczesne wartości

Pierwsze obliczone wartości RSI opierają się na początkowym uśrednianiu w pierwszych (N) okresach. Wczesne wartości MACD zależą od tego, jak EMA są inicjalizowane, zanim algorytm się „ustabilizuje”. Może to powodować widoczne różnice na początku historii wykresu.

4) Przypadki brzegowe mogą prowadzić do nieokreślonych wskaźników

W RSI, gdy średnia strata wynosi zero (lub jest efektywnie zerowa), (\text{RS}) wymaga dzielenia przez zero. Implementacje radzą sobie z tym różnie (np. traktując RSI jako 100). Jeśli weryfikujesz niezależnie, musisz przyjąć tę samą konwencję dla przypadków brzegowych.

5) Wskaźniki nie są samodzielną gwarancją wyników

RSI i MACD opisują wzorce w cenie i momentum (przekształcone matematycznie), a nie przyszłe zachowanie.

Handel walutami i kontraktami CFD wiąże się ze znacznym ryzykiem. Informacje FoxiForex mają charakter edukacyjny i nie są osobistą poradą finansową. Materiały sponsorowane są wyraźnie oznaczone.