Testowanie poza próbą a powiązane pojęcia forex

Testowanie poza próbą a backtesting i testowanie forward w koncepcjach forex.

Testowanie poza próbą a powiązane pojęcia forex

Bezpośrednia odpowiedź

Testowanie poza próbą (często skracane jako testowanie OOS) to etap oceny mający na celu zmierzenie, jak dobrze zestaw reguł lub dopasowanych parametrów działa na danych, które nie zostały użyte do ich zbudowania lub dostrojenia. Różni się od powiązanych koncepcji oceny w forex — zwłaszcza backtestingu i testowania forward — ponieważ te koncepcje różnią się pod względem kiedy i które dane są używane do dopasowania w porównaniu z oceną wyników.

Pomocnym sposobem myślenia o tej różnicy jest rozdzielenie dwóch faz:

  1. Tworzenie modelu/parametrów (wybór reguł i parametrów) oraz
  2. Ocena wyników (mierzenie rezultatów).

Testowanie OOS utrzymuje te fazy odrębnymi, używając „nowych” danych do oceny, co jest głównym mechanizmem zmniejszającym (ale nie eliminującym) optymistyczne wyniki spowodowane przeuczeniem.

Mechanika: co każda koncepcja robi z danymi

Testowanie poza próbą (OOS)

Testowanie poza próbą to praktyka oceny kandydackiej logiki transakcyjnej (reguły, ustawienia wskaźników, progi, limity ryzyka i podobne wybory) na zbiorze danych, który został wstrzymany z okresu użytego do skonstruowania tych wyborów.

W standardowym układzie edukacyjnym zakładasz, że:

  • Masz historyczny szereg cenowy.
  • Dzielisz go na co najmniej dwie części: część „rozwojową” (w próbie) i część „ewaluacyjną” (poza próbą).
  • Tworzysz lub dostrajasz podejście, używając wyłącznie części rozwojowej.
  • Raportujesz wskaźniki wyników, używając wyłącznie części OOS.

Celem nie jest bezpośrednie przewidywanie przyszłości. Zamiast tego chodzi o sprawdzenie, czy pozorne wyniki podejścia w okresie rozwojowym przenoszą się na dane, których ono nie widziało.

Backtesting

Backtesting to szersza koncepcja symulowania, jak reguły zachowałyby się na danych historycznych. W najprostszej formie backtesting odpowiada na pytanie: „Gdyby te reguły zostały zastosowane do przeszłości, jakie byłyby symulowane wyniki?”

Backtesting można przeprowadzać na wiele sposobów, w tym podejścia, w których te same dane są używane zarówno do dostrajania, jak i do oceny. Kiedy tak się dzieje, wyniki mogą wyglądać lepiej, niż w przypadku prawdziwie niewidzianych danych, ponieważ symulacja może odzwierciedlać wybory, które przypadkowo pasują do szumu.

Zatem kluczowa różnica w porównaniu z OOS nie polega na tym, że backtesting jest „błędny”, ale na tym, że sam backtesting nie gwarantuje ścisłego rozdzielenia między tworzeniem a oceną.

Testowanie forward

Testowanie forward (czasami opisywane jako „handel papierowy” lub „uruchamianie na późniejszych danych”) ocenia podejście w późniejszych okresach po okresie rozwojowym.

Koncepcyjnie kładzie nacisk na czas: pozwalasz systemowi „działać” w okresach, które nie były dostępne podczas tworzenia. To czyni go bliższym użyciu w czasie rzeczywistym niż pojedynczy historyczny podział.

Jednak testowanie forward nadal zależy od założeń. Nawet jeśli kolejność czasowa jest zachowana, wyniki mogą się różnić w zależności od:

  • sposobu modelowania kosztów transakcyjnych,
  • tego, czy wykonanie jest realistycznie symulowane,
  • oraz tego, czy warunki rynkowe się zmieniają.

Ograniczone porównanie: jak różnią się kryteria

Poniżej znajduje się ograniczone porównanie przy użyciu typowych kryteriów weryfikacji. Dla każdego kryterium „kanoniczny właściciel” to koncepcja, której definicja najbezpośredniej odnosi się do tego kryterium.

1) Rozdzielenie danych między tworzeniem a oceną

  • Testowanie OOS (kanoniczny właściciel: OOS): wyraźnie wymaga wstrzymanych danych ewaluacyjnych.
  • Backtesting (kanoniczny właściciel: koncepcja backtestingu): może, ale nie musi, rozdzielać tworzenie od oceny.
  • Testowanie forward (kanoniczny właściciel: testowanie forward): ocenia na późniejszych okresach, zazwyczaj po tworzeniu, ale nie automatycznie zapewnia doskonałego rozdzielenia wszystkich decyzji dotyczących dostrajania.

2) Główny cel

  • Testowanie OOS: ocena generalizacji na nowych danych historycznych.
  • Backtesting: symulacja historycznego zachowania zestawu reguł.
  • Testowanie forward: ocena zachowania w miarę postępu czasu na późniejszych danych.

3) Ryzyko optymistycznych wyników

  • Testowanie OOS: zmniejsza optymistyczne obciążenie, gdy przeprowadzane jest z wyraźnym podziałem, ale może nadal cierpieć z powodu wielokrotnych porównań, wielokrotnego dostrajania lub wycieku przez przetwarzanie wstępne.
  • Backtesting: może być wysoce optymistyczny, jeśli ten sam zestaw danych napędza zarówno projektowanie, jak i ocenę.
  • Testowanie forward: może nadal być optymistyczne, jeśli metoda jest wielokrotnie poprawiana przy użyciu wyników testów forward lub jeśli założenia dotyczące wykonania są nierealistyczne.

4) Typowe tryby awarii

  • Tryby awarii testowania OOS: wyciek danych (pośrednie wykorzystanie przyszłych informacji), przeuczenie do konkretnego segmentu OOS oraz wybór parametrów powtarzany w wielu eksperymentach.
  • Tryby awarii backtestingu: obciążenie w próbie, ponieważ ocena pokrywa się z procesem dopasowania.
  • Tryby awarii testowania forward: zmiana reżimu rynkowego po okresie tworzenia oraz niedopasowanie między symulowanym a rzeczywistym wykonaniem.

Dowód lub przykład (z wyraźnymi założeniami)

Rozważ prosty przykład edukacyjny z założeniami przedstawionymi z góry.

Załóżmy, że zaczynasz od reguły, która używa jednego parametru: długości okna wstecznego. Masz 10 lat tygodniowych danych cenowych.

  • Okres rozwojowy: lata 1–7
  • Okres ewaluacyjny: lata 8–10

Krok A (tworzenie): Testujesz wiele długości okien i wybierasz tę z najlepszymi wynikami w latach 1–7.

Krok B (test OOS): Utrzymujesz wybraną długość okna stałą i oceniasz wyniki na latach 8–10.

W tym układzie:

  • Jeśli wyniki znacznie się poprawiają w latach 8–10, sugeruje to, że reguła może generalizować poza okres rozwojowy.
  • Jeśli wyniki załamują się w segmencie OOS, wskazuje to, że sukces w okresie rozwojowym mógł być specyficzny dla tych wcześniejszych danych.

Teraz porównaj z czystym backtestingiem, w którym oceniasz i wybierasz parametry, używając jednocześnie wszystkich 10 lat. Nawet jeśli symulacja pokazuje silne wyniki, nie można ich przypisać generalizacji, ponieważ okres ewaluacyjny został pośrednio użyty do ukształtowania parametrów.

Na koniec porównaj z testowaniem forward: załóżmy, że opracowujesz metodę w latach 1–7, a następnie uruchamiasz ją w latach 8–10 w sposób przypominający postęp czasu. Może to ujawnić problemy, takie jak praktyczne założenia dotyczące wykonania, ale nadal nie gwarantuje przyszłych wyników, ponieważ rynki mogą się zmieniać, a koszty transakcyjne i realizacja zleceń mogą różnić się od uproszczonych modeli.

Ograniczenia i ryzyka (co może pójść nie tak)

Nawet przy testowaniu OOS istnieją istotne ograniczenia i tryby awarii istotne dla oceny forex.

  1. Przeuczenie pomimo OOS Jeśli wielokrotnie dostosowujesz parametry na podstawie wyników OOS, segment OOS skutecznie staje się częścią procesu decyzyjnego. Może to ponownie wprowadzić optymizm.

  2. Wyciek danych Jeśli przetwarzanie wstępne wykorzystuje informacje, które nie byłyby dostępne w momencie oceny (na przykład normalizacja obliczona przy użyciu przyszłych wartości), wyniki OOS mogą być mylące.

  3. Niestacjonarność i zmiana reżimu rynkowego Rynki forex mogą zmieniać swoje zachowanie w czasie. Metoda, która działa w jednym reżimie, może nie działać w innym, więc wyniki OOS nie są gwarancją odporności.

  4. Niedopasowanie kosztów i wykonania Symulacje backtestingu i testowania forward często upraszczają realizację transakcji. Różnice w kosztach transakcyjnych, spreadach, poślizgu i obsłudze zleceń mogą znacząco zmienić wyniki.

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.