Co to jest przykładowe obliczenie transformaty Fishera?
Definicja transformaty Fishera (co to jest)
Transformaty Fishera to przekształcenie matematyczne stosowane w analizie technicznej w celu przekształcenia szeregu wejściowego (często pochodzącego z ceny) w szereg wyjściowy, który ma tendencję do uwydatniania punktów zwrotnych. Mówiąc wprost: odwzorowuje ograniczoną wartość „gdzie jestem w ostatnim zakresie?” na skalę z silniejszym rozdzieleniem w pobliżu ekstremów.
Ponieważ jest to transformacja, wynik nie jest automatycznie samodzielnym sygnałem transakcyjnym. Najlepiej rozumieć go jako obliczoną liczbę, której zachowanie zależy od tego, jak zdefiniujesz jej dane wejściowe, okno i skalowanie.
Mechanika (jak można skonstruować przykładowe obliczenie)
Przykładowe obliczenie wymaga założeń, które nie są gwarantowane przez samą „rzeczywistość rynkową”. Oto jeden samowystarczalny sposób obliczenia tego numerycznie.
Założenia dla przykładu
- Mamy krótki szereg pięciu cen zamknięcia: 100, 102, 101, 103, 104.
- Używamy długości okna równej 5 (więc każdy krok patrzy na to samo minimum i maksimum w całej próbce). Jest to upraszczające założenie, aby ułatwić weryfikację.
- Dla każdego kroku czasowego t definiujemy znormalizowaną pozycję x w zakresie okna:
- Niech min = 100 i max = 104.
- Zakres = max − min = 4.
- x = (cena − min) / zakres, więc x jest w przedziale [0, 1].
- Następnie odwzorowujemy x na symetryczną ograniczoną wartość w przedziale (−1, 1) za pomocą:
- p = 2x − 1.
- Zatem p wynosi −1, gdy cena = min, i +1, gdy cena = max.
- Aby uniknąć niezdefiniowanych wartości na ±1, ograniczamy p do przedziału (−0.999, 0.999). Jest to wybór implementacyjny; różne oprogramowanie może to obsługiwać inaczej.
- Używamy uproszczonego odwzorowania w stylu Fishera z podstawowym wzorem:
- f = 0.5 * ln((1 + p) / (1 − p)) gdzie ln to logarytm naturalny.
Przy tych jednoznacznych założeniach każdy czytelnik może odtworzyć obliczenia.
Obliczenia krok po kroku dla ostatniego punktu
Dla ostatniej ceny 104:
- x = (104 − 100) / 4 = 1
- p = 2(1) − 1 = 1
- ogranicz p do 0.999
- f = 0.5 * ln((1 + 0.999) / (1 − 0.999)) = 0.5 * ln(1.999 / 0.001) = 0.5 * ln(1999)
Ponieważ ln(1999) ≈ 7.6009, f ≈ 3.8004.
Co zmienia się wcześniej w szeregu
Dla ceny 100:
- x = 0, p = −1 → ogranicz do −0.999
- f ≈ −3.8004
Dla cen pośrednich p znajduje się między −0.999 a 0.999, tworząc wartości pomiędzy tymi ekstremami. To jest efekt „uwydatnienia” w sensie numerycznym: logarytm rośnie szybko, gdy p zbliża się do ±1 (w pobliżu minimum lub maksimum okna).
Ograniczenia i ryzyka (istotne tryby awarii)
- Wrażliwość na parametry. Wynik w dużej mierze zależy od długości okna i dokładnego minimum/maksimum. Zmiana okna zmienia znormalizowane dane wejściowe p, co zmienia f.
- Szczegóły implementacji. Różne implementacje mogą używać różnych zmiennych pośrednich (na przykład używając bieżącego maksimum/minimum, różnego wygładzania lub różnych zasad ograniczania). Nawet przy tych samych cenach f może się różnić.
- Problemy brzegowe. Jeśli p może osiągnąć dokładnie ±1 i nie jest obsługiwane przez ograniczanie lub przesunięcia, odwzorowanie logarytmiczne może stać się niezdefiniowane lub niestabilne numerycznie.
- Nie jest to samodzielna prognoza. Wynik transformaty Fishera jest przekształconą wartością, a nie gwarantowanym związkiem przyczynowo-skutkowym. Historyczne wzorce w jednym okresie nie przesądzają o przyszłych wynikach.
Weryfikacja i kolejne pytanie, na które możesz odpowiedzieć
Aby niezależnie zweryfikować przykład, przelicz ponownie każdy krok, korzystając z tych samych założonych wzorów: min/max, normalizacja do x, odwzorowanie na p, ograniczanie, a następnie transformacja logarytmiczna. Jeśli obliczona wartość się różni, pierwszym miejscem do sprawdzenia jest ograniczanie i obsługa wartości brzegowych.
Przydatne kolejne pytanie brzmi: jak Twoje wybrane oprogramowanie definiuje szereg wejściowy i okno? Transformaty Fishera jest powtarzalna tylko wtedy, gdy definicja danych wejściowych i szczegóły wzoru są zgodne.