Backtest jest potrzebny — ale nie jest dowodem

Backtest odpowiada na pytanie: jak określona procedura zachowałaby się na przeszłych danych? To ważny filtr. Pozwala odrzucić słabe pomysły, porównać modele i zauważyć problemy z kalibracją. Nie odpowiada jednak automatycznie na pytanie, jak model poradzi sobie jutro.

Największe ryzyko pojawia się wtedy, gdy wynik historyczny traktujemy jak gwarancję. Im więcej decyzji podjęliśmy po obejrzeniu danych, tym bardziej rezultat może opisywać konkretną próbę zamiast powtarzalnej zależności.

Pięć najczęstszych źródeł fałszywej przewagi

1. Przeciek informacji z przyszłości

Data leakage powstaje, gdy cecha, obróbka lub selekcja modelu korzysta z informacji, której nie dało się znać w momencie prognozy. Może to być końcowa tabela sezonu, statystyka zaktualizowana po meczu albo normalizacja wykonana na całym zbiorze. Nawet subtelny przeciek potrafi mocno zawyżyć wynik.

2. Losowy podział zamiast czasu

Przemieszanie meczów i losowe wydzielenie zbioru testowego ignoruje kolejność wydarzeń. Model może uczyć się na spotkaniach późniejszych niż te, które prognozuje. W sporcie, gdzie siła drużyn, trenerzy i style stale się zmieniają, taki test jest szczególnie mylący.

3. Overfitting przez wiele eksperymentów

Jeżeli sprawdzimy setki kombinacji cech, progów i algorytmów, któraś przypadkiem uzyska świetny wynik. To odpowiednik wielokrotnego rzucania monetą i pokazywania tylko najlepszej serii. Zbiór testowy przestaje być niezależny, jeśli na jego podstawie wielokrotnie zmieniamy model.

4. Wybór wygodnej próby

Wynik można nieświadomie poprawić przez wybór lig, sezonów lub progów, które akurat pasują do hipotezy. Prawdziwa jakość powinna być raportowana na całej z góry określonej próbie oraz osobno dla segmentów, które mogą zachowywać się inaczej.

5. Świat po teście nie jest taki sam

Zmieniają się przepisy, tempo lig, dostępność danych, trenerzy i zachowanie rynku. Model może dobrze odtwarzać starszą rzeczywistość, ale stopniowo tracić trafność. Dlatego stabilność w czasie jest ważniejsza niż jeden rekordowy sezon.

Najważniejsza zasada: każda transformacja danych, selekcja cech, kalibracja i wybór progu muszą korzystać wyłącznie z informacji dostępnych przed prognozowanym meczem.

Jak powinien wyglądać uczciwy test?

Chronologiczny walk-forward

Model uczymy na przeszłości, prognozujemy kolejny okres, zapisujemy wynik i dopiero wtedy przesuwamy okno. Ten proces powtarza sposób, w jaki system działa na żywo. Nie zna on rezultatów, które dopiero nastąpią.

Osobny etap kalibracji

Model może poprawnie porządkować mecze od mniej do bardziej prawdopodobnych, ale zawyżać pewność. Dlatego trzeba sprawdzać nie tylko trafienia, lecz również Brier score, log loss i krzywe kalibracji. Prognozy około 70% powinny realizować się około siedem razy na dziesięć w dużej próbce.

Zamrożone reguły przed okresem testowym

Rynek, próg, sposób wyboru i wszystkie filtry należy ustalić wcześniej. Po zobaczeniu wyników nie usuwamy niewygodnych meczów ani nie zmieniamy definicji sukcesu. Każda nowa hipoteza wymaga kolejnej niezależnej próby.

Pełne raportowanie

Oprócz średniej jakości pokazujemy liczbę obserwacji, wyniki w czasie, przedziały niepewności oraz rozbicie według lig i przedziałów prawdopodobieństwa. To pozwala zobaczyć, czy wynik jest stabilny, czy zależy od jednego krótkiego okresu.

Forward-only: moment prawdy

Najmocniejszym sprawdzianem są prognozy zapisane przed rozpoczęciem meczu i nigdy później niezmieniane. Tak powstaje próbka forward-only. Początkowo będzie mała i chaotyczna, dlatego pojedyncza seria trafień lub porażek niewiele znaczy. Jej wartość rośnie wraz z czasem.

W modelu prawdopodobieństwa szukamy przede wszystkim dobrej kalibracji i stabilności. Gdy analiza uwzględnia kursy, dochodzą CLV oraz ROI, ale również one wymagają odpowiednio dużej próbki i kosztów możliwych do odtworzenia w praktyce.

Jak robi to MatchupLab?

  • Zachowujemy chronologię danych i testujemy modele w trybie walk-forward.
  • Prognozy produkcyjne zapisujemy przed meczem w rejestrach append-only.
  • Każdy rynek oceniamy oddzielnie, bez ukrywania słabszych segmentów.
  • Pokazujemy niepewność i zgodność modeli zamiast samej wartości punktowej.
  • Traktujemy backtest jako filtr badawczy, a nie marketingową gwarancję.

Wniosek

Dobry backtest jest fundamentem, lecz jego prawdziwą wartość określa jakość procedury. Chronologia, brak przecieku, zamrożone reguły, kalibracja i późniejszy forward-only oddzielają badanie modelu od dopasowywania historii. W analityce piłkarskiej uczciwość testu jest równie ważna jak sam algorytm.

Materiał ma charakter edukacyjny. Nie jest gwarancją wyniku ani poradą finansową.