Czym overfitting różni się od powiązanych pojęć na rynku forex
Bezpośrednia odpowiedź
Overfitting to problem modelowania: strategia lub model predykcyjny dopasowuje się do historycznych danych forex tak ściśle, że wychwytuje przypadkowy szum, a nie powtarzalną strukturę rynku. W badaniach nad rynkiem forex kilka powiązanych pojęć również może prowadzić do rozczarowujących wyników forward, ale różnią się one tym, co dokładnie zawodzi — overfitting koncentruje się na wyuczonej zależności, podczas gdy inne pojęcia dotyczą sposobu przygotowania danych, sposobu przeprowadzania oceny lub sposobu realizacji transakcji.
Mechanizm i definicje
Zacznijmy od kanonicznego znaczenia. Overfitting ma miejsce, gdy wybierasz parametry modelu (lub cechy/zasady), aby zminimalizować błąd na konkretnym zbiorze danych historycznych, aż do momentu, gdy wyniki poprawiają się tam, ale generalizacja jest słaba. W praktyce często oznacza to, że model jest zbyt elastyczny w stosunku do ilości i jakości danych.
Aby uczciwie porównać, powiąż każde pokrewne pojęcie z jego kanonicznym właścicielem:
- Overfitting (właściciel kanoniczny: model/generalizacja): Wyuczone odwzorowanie od wejść do wyjść staje się dopasowane do specyficznych cech historii treningowej. Tryb awarii to słaba generalizacja poza próbą.
- Testowanie na danych historycznych (właściciel kanoniczny: metoda oceny): Testowanie na danych historycznych to proces symulowania, jak strategia zachowałaby się na danych historycznych. Backtest może być poprawny lub mylący, w zależności od założeń, szczegółów implementacji i tego, czy przypadkowo staje się częścią pętli treningowej.
- Wyciek danych (właściciel kanoniczny: potok danych/integralność informacji): Wyciek danych oznacza, że ocena wykorzystuje informacje, które nie byłyby dostępne w danym momencie. Tryb awarii to sztucznie zawyżone wyniki, nawet jeśli model jest prosty.
- Błąd perspektywy czasowej (właściciel kanoniczny: spójność czasowa): Błąd perspektywy czasowej ma miejsce, gdy przyszłe informacje wpływają na wcześniejsze decyzje. Jest to specyficzny rodzaj wycieku związany z nieprawidłowym uporządkowaniem czasowym.
- Dostrajanie parametrów przez wielokrotne testowanie (właściciel kanoniczny: błąd selekcji / porównania wielokrotne): Gdy wypróbowujesz wiele wariantów i wybierasz ten z najlepszymi wynikami historycznymi, dokonujesz selekcji na szumie. Nawet bez zmiany rodziny modeli, wielokrotne eksperymentowanie zwiększa szansę, że jakiś wariant dopasuje się do przypadkowych wzorców.
Te pojęcia są ze sobą powiązane, ale nie są tożsame. Overfitting dotyczy tego, czego uczy się model; wyciek danych i błąd perspektywy czasowej dotyczą tego, co ocena błędnie dopuszcza; wielokrotne testowanie dotyczy tego, jak selekcja zmienia znaczenie wyników historycznych.
Dowód lub przykład (z wyraźnymi założeniami)
Rozważmy uproszczony proces badawczy.
Założenie do przykładu: Masz 200 kolejnych świec historycznych danych forex i budujesz model oparty na regułach, który wykorzystuje kilka średnich kroczących i progi. Dzielisz dane na okres treningowy i okres testowy. Symulujesz również transakcje przy użyciu następnej ceny świecy.
-
Przypadek overfittingu: Załóżmy, że zbiór treningowy zawiera krótkotrwały dryf, którego nie ma w innych miejscach. Jeśli zwiększysz liczbę reguł lub agresywnie dostroisz progi na okresie treningowym, model zacznie ściśle dopasowywać się do tego dryfu. W okresie testowym dryf znika i wyniki się pogarszają. Tutaj głównym trybem awarii jest to, że model dopasował się do szumu lub przejściowej struktury.
-
Przypadek wycieku danych: Załóżmy teraz, że przetwarzanie wstępne przypadkowo wykorzystuje wskaźniki obliczone z przyszłych świec, takie jak wartości normalizacji obliczone z całego zbioru danych. Twój backtest może wyglądać na mocny, ponieważ model widzi informacje, które nie byłyby znane w momencie podejmowania decyzji. Nawet konserwatywny model mógłby wydawać się bardzo dokładny. Tryb awarii to integralność informacji, a nie złożoność modelu.
-
Przypadek błędu perspektywy czasowej: Załóżmy, że logika symulacji generuje sygnał przy użyciu ceny zamknięcia tej samej świecy, a następnie zakłada wykonanie po tym samym zamknięciu. Jeśli faktycznie potrzebujesz ceny zamknięcia do podjęcia decyzji, wykonanie po zamknięciu jest niespójne z rzeczywistym timingiem. Tryb awarii to uporządkowanie czasowe.
-
Przypadek wielokrotnego testowania/selekcji: Załóżmy, że wypróbowujesz 100 różnych kombinacji progów i zatrzymujesz najlepiej działającą w okresie testowym. Nawet jeśli żaden z wariantów nie jest naprawdę predykcyjny, jeden prawdopodobnie będzie wyglądał dobrze przez przypadek. Tryb awarii to selekcja na szumie; może wyglądać jak generalizacja, ale w rzeczywistości jest formą nadmiernej optymalizacji.
Te trzy przykłady pokazują, jak różni właściciele kanoniczni wytwarzają różne „objawy”. W prawdziwych badaniach wiele problemów może współistnieć, co sprawia, że diagnoza jest ważna.
Ograniczenia i ryzyka
Istnieje kilka istotnych ograniczeń, które mają zastosowanie niezależnie od dokładnego pojęcia forex.
Po pierwsze, dopasowanie historyczne nie przesądza o przyszłych wynikach. Ceny forex odzwierciedlają wiele zmieniających się czynników; zależności mogą słabnąć lub zanikać. Nie jest to twierdzenie o żadnej pojedynczej metodzie — to ogólne ograniczenie wnioskowania z danych niestacjonarnych.
Po drugie, ocena jest wrażliwa na założenia. Niewielkie zmiany w sposobie dopasowania sygnałów do czasu wykonania, sposobie traktowania kosztów transakcyjnych lub sposobie przetwarzania cech mogą znacząco zmienić wyniki. Jeśli je zignorujesz, możesz pomylić wadliwy backtest z solidnym modelem.
Po trzecie, złożoność zwiększa ryzyko overfittingu. Przy większej liczbie parametrów, cech lub stopni swobody model ma więcej sposobów na dopasowanie się do historycznych osobliwości. Overfitting jest zatem częściowo funkcją złożoności w stosunku do ilości i zmienności danych.
Po czwarte, wielokrotne dostrajanie i selekcja mogą ukrywać niepewność. Jeśli używasz tego samego zbioru historycznego zarówno do opracowania, jak i wyboru strategii, skutecznie traktujesz przypadkowy szum tak, jakby był sygnałem.
Wreszcie, wykonanie i koszty ograniczają zrealizowane wyniki. Nawet gdy backtest pokazuje zyski, zrealizowane wyniki mogą zostać zmniejszone przez poślizg, spready i inne praktyczne tarcia. Nie „dowodzi” to overfittingu, ale może pogłębiać mylne wrażenia co do jakości modelu.
Weryfikacja i kolejne pytanie
Aby zweryfikować, że potrafisz samodzielnie wyjaśnić różnice:
- Zdefiniuj overfitting w kategoriach błędu generalizacji (wyniki treningowe poprawiają się, poza próbą nie).
- Dla wycieku danych i błędu perspektywy czasowej zdefiniuj, jakie nieprawidłowe informacje dostają się do oceny i w którym kroku czasowym.
- Dla wielokrotnego testowania zdefiniuj błąd selekcji: jak wielokrotne próby zwiększają szansę znalezienia szczęśliwego wzorca.
- Dla testowania na danych historycznych zdefiniuj je jako metodę oceny, której ważność zależy od dopasowania, założeń i tego, czy staje się częścią treningu.
Przydatne kolejne pytanie brzmi: W projekcie Twojej oceny, gdzie wyznaczasz granicę między treningiem, dostrajaniem i testowaniem końcowym? Jeśli ta granica jest niejasna, „overfitting” może stać się zbiorczą etykietą dla kilku różnych trybów awarii.