In-sample i out-of-sample w tradingu
Optymalizujesz strategię w StrategyQuant X, backtest wychodzi na plus, wskaźniki wyglądają porządnie. A mimo to zostaje jedno pytanie: czy strategia znalazła regułę, która coś znaczy także poza tą jedną krzywą, czy tylko ściśle dopasowała się do przeszłości? Właśnie na to pytanie odpowiada podział na dane in-sample i out-of-sample.
W tym artykule zobaczysz, co konkretnie oznaczają dane in-sample i out-of-sample w StrategyQuant X, jak czytać wskaźnik OOS/IS w databanku oraz gdzie są granice tej metody.
Dlaczego część danych musi pozostać nietknięta
Strategia powstaje w ten sposób, że reguły i parametry są sprawdzane i dopasowywane na historycznych danych kursowych. Jeśli użyjesz przy tym całej dostępnej historii, to na koniec sprawdzasz na dokładnie tych danych, do których strategia już się dopasowała. Wynik wtedy prawie zawsze wygląda dobrze, ale mówi niewiele o tym, czy strategia znalazła rzeczywisty wzorzec, czy tylko odtworzyła przypadkowe wahania tej jednej krzywej.
Dlatego historia jest dzielona na dwie części: jedną do budowania i jedną do sprawdzania, która przy budowaniu pozostaje poza nawiasem.
Dane in-sample: warsztat dla twojej strategii
Dane in-sample, w skrócie IS, to ta część historycznych danych kursowych, za pomocą której rozwijasz i optymalizujesz strategię. Parametry, reguły i wskaźniki ustawia się na tych danych tak, aby pokazał się najlepszy zaobserwowany wynik.
To normalny przebieg budowania strategii w StrategyQuant X i jest on też potrzebny: bez danych do testowania pomysłów nie dałoby się niczego ustawić. Ważne jest tylko to, czego ta liczba nie oznacza. Mocny wynik na danych in-sample nie mówi nic o tym, jak strategia zachowa się później w handlu na żywo. Pokazuje jedynie, jak dobrze reguły dopasowały się do dokładnie tego wycinka przeszłości.
Dane out-of-sample: nietknięty punkt odniesienia
Dane out-of-sample, w skrócie OOS, to oddzielna część historii, której strategia nie widzi nigdy podczas rozwoju. Jest zachowywana wyłącznie do testowania i walidacji i nie wchodzi do optymalizacji. To utrzymuje sprawdzanie niezależnie od tego, co działo się przy budowaniu.
Aby ten podział miał jakąkolwiek wartość, jeden warunek musi być naprawdę spełniony: dane out-of-sample muszą podczas optymalizacji rzeczywiście pozostać nietknięte. Gdy tylko w jakiejkolwiek formie wrócą do procesu rozwoju, podział istnieje już tylko na papierze.

Podział IS/OOS jako podstawowa kontrola przeciw oszukiwaniu samego siebie
Podział na in-sample i out-of-sample uchodzi za jedną z podstawowych kontroli odporności: strategia zbudowana wyłącznie na danych, na których jest też mierzona, nie daje uczciwego obrazu. Jeśli mierzy się ją dodatkowo na danych, których nigdy nie widziała, powstaje obraz bliższy rzeczywistości niż wtedy, gdy oceniasz ją tylko na danych, do których została dopasowana.
Także tutaj obowiązuje ten sam warunek co przy samej definicji: kontrola działa tylko wtedy, gdy część out-of-sample podczas szukania dobrych parametrów naprawdę pozostaje poza nawiasem. I nawet jeśli to się uda, zdany test out-of-sample jest wskazówką, a nie dowodem na to, że strategia działa w handlu na żywo.
Współczynnik OOS/IS w Databank
W Databank StrategyQuant X znajdziesz współczynnik OOS/IS. Ta miara porównuje wyniki strategii w okresie out-of-sample z wynikami w okresie in-sample i wyraża, jak mocno pogorszyły się wyniki poza danymi, na których strategia została zbudowana.
Miara jest obliczana w module Databank po tym, jak przebieg optymalizacji lub walk-forward dostarczył zarówno wyniki in-sample, jak i out-of-sample. Nie jest to więc wartość, którą po prostu odczytujesz, lecz wynik, który powstaje dopiero po pełnym przebiegu z oboma częściami danych.
Co zdradza słaby współczynnik, a czego nie dowodzi dobry
Jeśli wyniki spadają wyraźnie z in-sample do out-of-sample, widać to w słabym współczynniku OOS/IS. Wskazuje to z reguły na jedną z dwóch przyczyn: strategia została nadmiernie dopasowana do danych in-sample, czyli zbyt ciasno przycięta do szczegółów tej jednej krzywej, albo warunki rynkowe przesunęły się między oboma okresami. Dobre wyniki w obu okresach są natomiast czytane jako wskazówka w kierunku odporności.
Ważne pozostaje przy tym jedno ograniczenie: taki odczyt dotyczy dokładnie tego instrumentu, tego interwału czasowego i tego podziału na okresy, które zostały użyte w tym jednym teście. Dobry współczynnik nie dowodzi, że strategia jest wolna od nadmiernego dopasowania, i nie rozstrzyga też z pewnością, czy słaby współczynnik wynika ze strategii, czy z otoczenia rynkowego. To przesłanka, którą czytasz razem z innymi kontrolami, a nie osąd sam w sobie.

Widoczne w zakładce Results: IS i OOS jako kolorowe pasma
Po uruchomieniu walk-forward poszczególne transakcje w zakładce Results są oznaczane na podstawie ustawień walk-forward jako In-Sample albo Out-of-Sample. Krzywa equity pokazuje dodatkowo oba okresy jako pasma tła w różnych kolorach, dzięki czemu podział widać na pierwszy rzut oka.
To zabarwienie to wskazówka orientacyjna, a nie ocena jakości. Pokazuje ci, gdzie w przebiegu czasowym leży która faza, ale samo w sobie nie mówi nic o tym, czy strategia w fazie Out-of-Sample faktycznie wypadła dobrze. Do tego nadal patrzysz na same wskaźniki, na przykład na OOS/IS-Ratio.

Czego to rozdzielenie ci nie mówi
Czysty test out-of-sample na historycznym szeregu danych pozostaje testem na danych z przeszłości. Mówi ci, jak strategia zachowałaby się w dokładnie tym wycinku przeszłości, gdyby parametry były ustalone już wcześniej. Nie mówi ci, jak ta sama strategia zachowa się na danych rynkowych, których jeszcze nie ma.
Poza tym całe to rozdzielenie działa tylko tak długo, jak część out-of-sample pozostaje naprawdę nietknięta. Jeśli podczas rozwoju wciąż zaglądasz do tego samego okna out-of-sample i potem zmieniasz strategię, ta wiedza krok po kroku i tak wchodzi do rozwoju, nawet jeśli nie wpisujesz tych liczb bezpośrednio do optymalizacji. Dane out-of-sample nie są wtedy już naprawdę nieznane, a test traci dokładnie tę wartość, dla której był pomyślany.
To nie czyni podziału IS/OOS bezużytecznym. Zostaje sensownym podstawowym sprawdzeniem przeciw najbardziej oczywistej formie oszukiwania samego siebie, czyli optymalizowaniu obok własnych danych. Nie zastępuje jednak dalszych sprawdzeń i nie zamienia dobrego historycznego wyniku w obietnicę na przyszłość.
Ten artykuł ma charakter edukacyjny i nie stanowi porady inwestycyjnej. Wyniki historyczne, także z backtestów, nie gwarantują przyszłych wyników. Handel instrumentami finansowymi wiąże się z ryzykiem i możesz stracić pieniądze.
Ten artykuł ma charakter edukacyjny i nie jest doradztwem inwestycyjnym. Wyniki osiągnięte w przeszłości nie gwarantują przyszłych wyników.
A jak ty to robisz? Opowiedz w społeczności. Za darmo, w twoim języku.
Zarejestruj się za darmo