Walk-forward analysis odtwarza powtarzany cykl: dobór parametrów na wcześniejszych danych, następnie sprawdzian na późniejszym fragmencie. Pomaga ocenić procedurę aktualizacji strategii. Nie zapewnia niezależności wszystkich obserwacji ani nie usuwa przedopasowania, jeśli sam sposób podziału wybierasz po obejrzeniu wyników.

Ustal, co będzie aktualizowane

Okno in-sample służy kalibracji, a kolejne okno out-of-sample ocenie wybranej konfiguracji. Przed uruchomieniem określ długość obu okien, odstęp między aktualizacjami, zakres parametrów i kryterium ich wyboru. Zapisz także sposób rozstrzygania remisów i zachowanie, gdy żaden wariant nie spełnia warunków.

Testujesz nie tylko ostatni zestaw parametrów, ale cały algorytm ich odnawiania. Jeśli co rok wybierasz inne ustawienia według stałej reguły, wyniki opisują tę procedurę. Nie należy przedstawiać ich jako historii jednego zestawu, który został wybrany dopiero na końcu.

Samo szukanie maksymalnego zysku w każdym oknie jest określonym kryterium, a nie neutralnym ustawieniem. Zdefiniuj, jak uwzględniasz koszty, ekspozycję i liczbę obserwacji. Nie poprawiaj kryterium osobno dla każdego okna po zobaczeniu jego późniejszego wyniku.

Zobacz chronologię na kalendarzu

Własny przykład organizacyjny: trzy lata kalibracji, rok sprawdzianu i coroczna aktualizacja. To ilustracja, nie rekomendacja długości dla każdej strategii. Okresy testowe są rozłączne, ale okresy kalibracji częściowo się pokrywają.

Przykład przesuwanego okna: parametry wybierane przed kolejnym rokiem
KrokDane do kalibracjiPóźniejszy sprawdzian
12020–20222023
22021–20232024
32022–20242025

W drugim kroku dane z 2023 r. mogą już wejść do kalibracji: byłyby wtedy znane. To zgodne z zaplanowaną chronologią. Czym innym jest obejrzenie wyniku 2025 r., zmiana długości wszystkich okien i przedstawienie powtórki jako dziewiczego testu.

Nie nazywaj tych trzech wyników niezależnymi eksperymentami. Wspólne dane treningowe, zależności rynkowe i ta sama rodzina reguł łączą kolejne próby. Większa liczba okien może dostarczyć dodatkowych obserwacji, ale sama nie wyznacza pewności statystycznej.

Wybierz okno przesuwane albo rozszerzane

W wariancie rolling początek i koniec kalibracji przesuwają się, więc najstarsze dane wypadają. W wariancie anchored lub expanding początek pozostaje stały, a koniec przesuwa się naprzód. W naszym przykładzie okna rozszerzane obejmowałyby kolejno 2020–2022, 2020–2023 i 2020–2024.

Krótsza pamięć może ograniczać wpływ dawnych warunków, lecz jednocześnie zmniejsza próbę. Dłuższa zachowuje więcej obserwacji, ale może łączyć odmienne otoczenie. Nie ma zasady, że strategie trendowe muszą stosować rolling, a powrót do średniej zawsze anchored.

Zapisz uzasadnienie wyboru przed porównaniem wyników. Jeżeli porównujesz kilka długości, potraktuj je jako kolejne próby badawcze. Wybranie najlepszego kalendarza na podstawie OOS jest również optymalizacją, nawet gdy parametry wskaźnika pozostają bez zmian.

Sprawdź przeciek na granicach okien

Całe dopasowanie powinno korzystać wyłącznie z dostępnej wcześniej informacji. Dotyczy to także normalizacji, wyboru zmiennych i uzupełniania braków. Przeliczenie średniej i odchylenia na całej historii przed podziałem może wprowadzić informację z przyszłości do wcześniejszych sygnałów.

W uczeniu maszynowym wynik przypisany do obserwacji może obejmować następne dni. Jeżeli taka etykieta z końca treningu używa cen z okresu testowego, samo uporządkowanie dat nie wystarcza. Trzeba rozpoznać nakładający się horyzont i odpowiednio usunąć lub oddzielić obserwacje.

Parametr gap w TimeSeriesSplit pozwala pominąć pewną liczbę próbek między treningiem a testem. Nie rozpoznaje sam wszystkich przecieków. Biblioteka wskazuje też znaczenie równych odstępów próbek dla porównywalnego czasu trwania foldów; nieregularne zdarzenia wymagają własnej kontroli kalendarza.

Rozgrzewanie wskaźnika wcześniejszymi cenami jest zwykle zgodne z chronologią. Wykorzystanie późniejszych cen do uzupełnienia wcześniejszego braku już nią nie jest. Sprawdź moment dostępności każdej zmiennej, szczególnie przy danych makro podlegających rewizjom.

Połącz wyłącznie właściwe wyniki OOS

Z góry ustal obsługę pozycji przechodzących przez datę aktualizacji. Możesz badać zamknięcie z kosztami albo dalsze prowadzenie według zapisanej reguły. Nie wolno bez wyjaśnienia usuwać otwartych strat na granicy i zaczynać kolejnego okna od czystego salda.

Buduj chronologiczny wynik okresów sprawdzających; nie dodawaj do niego zysków z kalibracji. Jeśli okna OOS nakładają się, określ sposób wyboru lub łączenia sygnałów, aby nie policzyć tej samej ekspozycji dwukrotnie. Utrzymaj spójną politykę kapitału i wielkości pozycji.

Pełne obsunięcie wylicz z połączonej ścieżki equity. Średnia z maksymalnych obsunięć okien nie jest obsunięciem całego okresu. Podobnie średni roczny procent bez określenia wag i kapitalizacji może inaczej wyglądać niż rzeczywisty wynik kolejnych lat.

Co oznacza walk-forward efficiency?

W dokumentacji TradeStation WFE porównuje roczną stopę zwrotu OOS z roczną stopą zwrotu IS. Przykład: 10% / 20% daje 0,5, czyli 50%. Porównanie wymaga zgodnych zasad liczenia, kosztów i ryzyka. Przy zerowym mianowniku iloraz jest nieokreślony.

Wskaźnik bywa mylący: OOS −5% i IS −10% także dają 0,5, choć oba wyniki są stratne. Wartość powyżej jedności nie dowodzi podglądu przyszłości; późniejszy okres mógł być korzystniejszy. Sam iloraz nie pokazuje rozkładu strat ani niepewności.

Próg 50% występuje jako reguła orientacyjna w dokumentacji narzędzia. Nie jest uniwersalnym warunkiem uruchomienia rachunku realnego. WFE poniżej określonej wartości również nie diagnozuje automatycznie przedopasowania. Oceń poszczególne okna, liczbę transakcji, koszty i koncentrację zysków.

Porównaj też procedurę aktualizacji z prostym punktem odniesienia, na przykład wersją bez ponownej optymalizacji, ustaloną przed sprawdzianem. Więcej pracy obliczeniowej nie oznacza lepszego wyniku. Użyj tych samych danych, kosztów i zasad wielkości pozycji, aby porównanie nie premiowało tylko większej ekspozycji.

Obejrzyj rozkład wyników między oknami. Jeden bardzo dochodowy rok może odpowiadać za całość zysku, a pozostałe lata przynosić straty. Nie usuwa to automatycznie sensu reguły, ale zmienia ocenę koncentracji i zakresu dowodów. Zapisz także okresy bez transakcji, zamiast pomijać je w prezentacji.

Remis kalibracji potrzebuje reguły przed poznaniem OOS

W hipotetycznych dwóch krokach warianty A i B mają identyczny wynik kalibracji. Przed sprawdzianem ustalasz, że remis rozstrzyga wybór A. Dopiero później poznajesz wartości netto OOS w tabeli. Dla przejrzystości liczymy stałe kwoty bez kapitalizacji.

Wybór po wyniku tworzy inną procedurę
Okno OOSWynik AWynik BWcześniejsza regułaNajlepszy po fakcie
1+ 5−1A: + 5A: + 5
2−2+ 6A: −2B: + 6
Suma+ 3+ 5+ 3+ 11

Wynik + 11 nie pochodzi z ustalonej procedury: drugi remis rozwiązano z wiedzą o przyszłym sprawdzianie. Również wybór jednego B na podstawie końcowej sumy + 5 nie jest wcześniejszą regułą A. Trzeba odróżnić trzy różne eksperymenty.

Zapisz klucz remisu w konfiguracji: może to być kolejność parametrów albo inne jawne kryterium. Zachowaj pełną listę równorzędnych kandydatów i wybrany identyfikator przed każdym OOS. Jeżeli dopiero raport zainspirował nową politykę, oznacz ją nową wersją i sprawdzaj później. Nie istnieje uniwersalny najlepszy klucz; chodzi o odtwarzalność wyboru bez informacji z przyszłości.

Zapisz ograniczenia przed kolejną próbą

Historyczny Forward w MT5 pozwala wydzielić późniejszy fragment testowanego okresu i sprawdzić wybrane konfiguracje. Pojedynczy taki podział nie tworzy automatycznie pełnego cyklu wielu przesuwanych okien. Nie jest też obserwacją przyszłego rynku na demo.

Zachowaj wszystkie kalendarze, zakresy parametrów i kryteria, które wypróbowano. Niewykorzystany wcześniej końcowy okres lub późniejsza obserwacja mogą dostarczyć kolejnego sprawdzianu, dopóki ich wynik nie służy dalszemu wyborowi. Żaden podział nie gwarantuje przyszłego zysku.

Praktyczną dokumentację procesu znajdziesz w planie walidacji. Podstawy backtestu pomagają sprawdzić wykonanie, a symulacja Monte Carlo bada inne pytanie: wrażliwość wyników na przyjęty model losowania.

Sprawdź, czy rozumiesz

Jedno krótkie ćwiczenie

WFE wynosi 50% przy wyniku IS −10% i OOS −5%. Czy to oznacza rentowną strategię?

Sprawdź odpowiedź

Nie. Iloraz −5% / −10% wynosi 0,5, ale oba wyniki są stratne. Sam WFE nie zastępuje oceny zysku netto, ryzyka, kosztów i próby.

Następny temat: Monte Carlo strategii: symulacja, obsunięcie i ograniczenia →