Backtest i walidacja strategii GPW Console vs WIG140

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
GPW CONSOLE :: BACKTEST & VALIDATION
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Stan: 2026-10-10 · przeliczenie (2026-09-27) · dane do 2026-09-25. Statyczna migawka analizy; nie odświeża się automatycznie.
<- Strona główna [ESC]

Projekt jest darmowy i rozwijany po godzinach. Jeśli GPW Console jest pomocny, możesz wesprzeć rozwój:buycoffee.to/gpwconsole[WYKOP] GPWConsole — Mikroblog
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 STATUS WALIDACJI
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
NIE POTWIERDZONO TRWAŁEJ PRZEWAGI NAD WIG140
Aktualny walk-forward nie daje odpornego dowodu dodatniej alfy po uwzględnieniu 0,5% kosztu transakcyjnego: Top 10 bije WIG140 w mniej niż 40% startów w każdym oknie. Na spółkach dostępnych w danym dniu (bez survivorship bias) historyczny rdzeń tej strategii (momentum + płynność, bez dywidend po obu stronach) przegrywa z indeksem w ~91% startów (przy danych do 18.09: 81% — wiele startów ma alfę bliską zera i zmienia znak z tygodnia na tydzień) — dodatnie wyniki poniżej to w dużej mierze efekt uniwersum dobranego dziś.
Korekta 2026-09-27: dotychczasowy benchmark (syntetyczny WIG140TR) liczył dywidendy podwójnie — WIG140 jest już indeksem dochodowym. Wszystkie liczby przeliczone; są lepsze o ok. 3,5 p.p. rocznie, wniosek się nie zmienia.
Wyniki HISTORYCZNE z hipotetycznego backtestu; NIE gwarantują przyszłych rezultatów i NIE stanowią porady inwestycyjnej.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 NAJWAŻNIEJSZE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
» Top 10 bije WIG140 W MNIEJ NIŻ 40% startów walk-forward: 0% (okno 24M), 3% (60M), 21% (96M), 36% (pełny zbiór) przy prowizji 0,5%.» Bez survivorship bias — przegrywa: na spółkach dostępnych w danym dniu (60 najpłynniejszych) bije WIG140 w 9% startów (tydzień wcześniej w 19% — wiele startów jest blisko zera).» Prowizja ma istotny wpływ na wynik: 96M/30d +2 012 PLN -> +16 491 PLN przy 0%.» Ranking porządkuje wyniki słabiej, niż wygląda: na dzisiejszym uniwersum spadają od Top 1–10 do Top 31–50; na spółkach z danego dnia wszystkie koszyki przegrywają z indeksem, a Top 1–10 ≥ 11–20 tylko wśród płynnych.» Jedna krzywa equity to nie dowód: ta sama konfiguracja bije benchmark o 131 tys. PLN na jednej ścieżce, a w walk-forward (okno 96M) średnio o 2,0 tys. PLN, w 21% startów; ponad połowa zysku z 2020 to jedna spółka.» Historia testuje głównie momentum, płynność, Piotroski, dywidendę; rekomendacje (A/B) są dopiero od 2025, ESPI od lipca 2026.» Survivorship bias zmierzony na samym momentum: ok. +7 p.p./rok z delistingów i do +15 p.p./rok z doboru spółek. Wszystkie kwoty to górna granica.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 JAK CZYTAĆ TE WYNIKI
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Walk-forward: starty co 28 dni, każdy start to niezależny portfel (1 000 PLN + 1 000 PLN/mies.) prowadzony DO KOŃCA DANYCH (2026-09-25). "24M / 60M / 96M" = z ilu ostatnich miesięcy danych wybieramy starty (22 / 61 / 100 startów), NIE stały horyzont inwestycji. Pełny zbiór 10 lat = 123 starty.
Kolejność miar:
1. WF+ = % startów, które pobiły WIG1402. alfa = wynik portfela − wynik benchmarku (PLN)3. MaxDD = największe obsunięcie portfela
Alfa w PLN rośnie z długością okna, liczbą wpłat i kapitałem; najstarsze starty ważą w średniej najwięcej. WF+ jest na ten efekt odporniejszy, dlatego stoi na pierwszym miejscu.
Filtry jak na produkcji: Top 10, max 2 spółki z sektora, bufor Top 13, histereza h=2, tryb buy-only gdy WIG140 < SMA30. Rebalans co 30 dni, jak na produkcji. Prowizja 0,5% (chyba że zaznaczono inaczej). Podatek rozliczany raz w roku, płacony 30 kwietnia (do 2026-10-10: 1 stycznia; WF+ Top 10 37% -> 36%).
Do 2026-09-28 strona liczyła rebalans co 60 dni: przy prowizji 0,5% WF+ Top 10 wynosił 50% zamiast 37%, przy 0% prawie tyle samo (63% vs 61%). Różnica to koszt dwa razy częstszego obrotu, nie jakość sygnału.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 WALK-FORWARD: WARIANTY SCORINGU (alfa śr., PLN)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Okno / rebalans    WF+    baseline   blend 3M+6M   momentum 6M
──────────────────────────────────────────────────────────────
24M / 30d           0%      −1 910        −1 691        −2 238
60M / 30d           3%      −4 822        −5 060        −6 567
96M / 30d          21%      +2 012        +1 735        +4 960
WF+ podany dla baseline (formuła produkcyjna). Baseline jest lepszy od obu wariantów w oknie 60M, w 24M i 96M pośrodku. Średnie ujemne w oknach 24M/60M, dodatnie w 96M, gdzie najstarsze starty łapią odbicie 2020.Różnice między wariantami są małe wobec rozrzutu startów — nie są podstawą do zmiany formuły.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 JAKOŚĆ RANKINGU: KOSZYKI RANG (123 starty)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Koszyk         alfa @0,5%   WF+    alfa @0%   WF+
─────────────────────────────────────────────────
Top 1             +64 571   76%     +98 233   81%
Top 4             +77 056   72%    +129 703   89%
Top 1–10          +23 037   36%     +51 816   57%
┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ ↑ granica sygnału
Top 11–20         −28 935    2%      −6 700   17%
Top 21–30         −34 053    0%     −10 072   16%
Top 31–50         −39 941    0%     −20 789    6%
Uwaga: koszyki liczone na dzisiejszym uniwersum ~146 spółek. Na spółkach dostępnych w danym dniu (archiwum notowań GPW, te same reguły) wszystkie koszyki przegrywają z indeksem; wśród 60 najpłynniejszych Top 1–10 wypada lepiej niż Top 11–20, a poszerzenie do Top 20 nigdzie nie pomaga.
Top 10 NIE jest dowodem przewagi nad benchmarkiem.Jest najlepiej zachowującym się kompromisem między jakością rankingu a koncentracją:• spadek od rangi 10 w dół utrzymuje się także przy 0% prowizji; to jakość sygnału, nie koszt transakcyjny,• Top 1–5 wygrywają częściej (WF+ 58–98% vs 36%), ale tylko na nachodzących startach i przy dużo większym rozrzucie; na 16 rozłącznych oknach 24M biją WIG140 w 8–9, Top 10 w 10–11, a od Top 10 żaden nie jest lepszy w więcej niż 7,• Top 10: najpłytsze uśrednione obsunięcie (−20% vs −25…−33% dla Top 2–5).Dodatnie średnie przy niskim WF+ biorą się z garstki bardzo dobrych startów (m.in. łapiących odbicie 2020); każdy start trwa do końca danych, więc najstarsze mają największą wagę w średniej PLN.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 PROWIZJA: ISTOTNY WPŁYW NA WYNIK
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Okno / rebalans    prowizja 0,5%     0% (XTB)
─────────────────────────────────────────────
96M / 30d             +2 012 PLN  +16 491 PLN  <- ponad 8× więcej
24M / 30d             −1 910 PLN   −1 310 PLN
Prowizja uderza głównie w długie okna z wieloma rebalancingami. Realny scenariusz dla tej skali kapitału to 0% (XTB do 100 tys. EUR obrotu miesięcznie); wtedy WF+ Top 10 wynosi 57% — ale na dzisiejszym, dobranym z perspektywy czasu uniwersum.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 JEDNA ŚCIEŻKA ≠ DOWÓD
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
0k100k200k300k400k500k2017201820192020202120222023202420252026━━ Top 10 (filtry prod., rebalans 30d)  ━━ WIG140  ┈┈ Wpłaty
Jeden przebieg 2017-01-02 -> 2026-09-25, rebalans co 30 dni, wpłacono 119 000 PLN.  Portfel         413 841 PLN   MaxDD −36,4%
  WIG140          282 768 PLN
  Alfa           +131 073 PLN

Ten wykres MYLI, jeśli czytać go w oderwaniu od walk-forward:ta sama konfiguracja startowana ze 100 różnych dat (okno 96M) bije benchmark średnio tylko o 2 012 PLN i tylko w 21% startów, a na spółkach dostępnych w danym dniu przegrywa w większości. Wykres ilustruje MECHANIKĘ (obsunięcia, wpłaty, tempo wzrostu), nie przewagę nad rynkiem.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ILE WAŻY PRZYPADEK: TERMIN STARTU I ROK 2020
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Ta sama konfiguracja, ten sam okres, start przesunięty o 0–20 sesji (czyli inny kalendarz rebalansów): IRR portfela od 22,3% do 30,4% rocznie. Liczba z jednej ścieżki to jedno losowanie z tego przedziału.
Porównanie z tym, co da się kupić zamiast strategii: 3 ETF-y na WIG20TR / mWIG40TR / sWIG80TR (74/21/5, po opłatach), te same wpłaty, obie strony sprzedają wszystko na koniec i płacą Belkę. Różnica IRR (p.p. rocznie), mediana i zakres z 21 startów:
Okres                 mediana          zakres  Top 10 lepsze
────────────────────────────────────────────────────────────
2017-01 -> 2026-09      +11,6   +7,6 .. +15,5          21/21
2021-01 -> 2026-09       +0,9    −3,1 .. +6,6          13/21
Skąd przewaga z 10 lat: w 2020 jedna spółka, Mercator Medical (rękawiczki), dała 42 143 z 75 488 PLN zysku pozycji (56%). Była w portfelu na wszystkich przesuniętych startach, więc to nie przypadek kalendarza — ale jednorazowe zdarzenie. Bez niej w rankingu przewaga IRR nad WIG140 spada z +9,2 p.p. do +4,7 p.p. rocznie (dodatnia w 21/21 startach).Od 2021 wynik po podatku to rzut monetą. Wszystko powyżej na dzisiejszym uniwersum spółek (survivorship bias).
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 CASE STUDY: BEAR-EXTRA (dopłata w bessie)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Hipoteza: dopłacaj +1 000 PLN w miesiącach, gdy WIG140 < SMA30.Test sprzed rebuildu v2: 5 lat (2021-08 -> 2026-07), 56 startów, rebalans co 30 dni, prowizja 0,5%.
Pierwotny wynik  bear-extra + buy-only bije benchmark w 100% startów↓Problem          dodatkowy kapitał tylko do portfela: 84 tys. vs 60 tys.↓Kontrola         te same dopłaty równo co miesiąc, bez sygnału SMA:                 Bear-extra (SMA30)     +2 324 PLN   96% WF+
                 Uniform (+407/mies.)   +3 012 PLN  100% WF+↓Wynik            SMA30 nie jest źródłem przewagi; działa sam kapitał
ROI na wpłacony kapitał był przy bear-extra wręcz niższy (56,2% vs 60,9% bez dopłat). W kontroli oba warianty mają ten sam łączny kapitał, a bear-extra jest w niej bez trybu buy-only.Poprawka silnika 2026-09-27: benchmark dostaje teraz te same dopłaty co portfel. Obie liczby kontroli wyżej były zawyżone tym samym błędem; na 62 startach 2017–2026 WF+ z dopłatą i bez jest praktycznie taki sam (34% vs 35%), a IRR różni się o 0,1–0,3 p.p. — tyle samo, ile daje równa dopłata co miesiąc albo zmiana wpłaty o 1 PLN.[ODRZUCONE] jako dowód timingu SMA30. Backtest służy też do obalania zbyt dobrych hipotez.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 HIPOTEZY: STATUS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Stan wiedzy na dziś, NIE statystyczny poziom ufności.OBIECUJĄCE   = widoczne w aktualnym rebuildzie v2, bez potwierdzenia OOSDO WALIDACJI = tylko testy sprzed v2 albo za mała próbkaNIEAKTUALNE  = nie powtórzone 1:1 na aktualnych danych
[SŁABE]          Top 10 jest lepsze od dalszych rang
wyraźnie tylko na dzisiejszym uniwersum; na spółkach z danego dnia wszystkie koszyki przegrywają z WIG140, a Top 1–10 ≥ Top 11–20 tylko wśród płynnych spółek; Top 20 nigdzie nie jest lepsze od Top 10[POTWIERDZONE]   Dzisiejsze uniwersum zawyża wyniki
samo momentum: ok. +7 p.p./rok z delistingów, do +15 p.p./rok z doboru spółek; pełnym silnikiem (rebalans 30d, starty co 56 dni) Top 10 wygrywa w 35% startów na dzisiejszym uniwersum i w 5% na 60 najpłynniejszych z danego dnia[NIEUDOWODNIONE] Strategia ma trwałą alfę vs WIG140
WF+ 0–36% przy 0,5% (54% przy rozliczeniu podatku obu stron, ale tylko na nachodzących startach); na spółkach z danego dnia przegrywa w ~91% startów[POTWIERDZONE]   Prowizja ma istotny wpływ na wynik
96M/30d: +2,0 tys. -> +16,5 tys. PLN przy 0%; na 24M efekt mały[OBIECUJĄCE]     500 tys. PLN pozostaje rozsądnym progiem płynności
400–700 tys. nieodróżnialne; 1 mln gorszy, ale różnica mała (pomiar 09-09)[NIEUDOWODNIONE] Buy-only w bessie wygląda lepiej niż sprzedaż/stop
dzisiejsze uniwersum: lepsze od braku filtra w 52/62 startów; na spółkach z danego dnia niejednoznaczne (cały rynek 30/57, 60 najpłynniejszych 24/57)[SŁABE]          B: rekomendacje analityków pomagają
IC +0,01 (52% dodatnich) na 77 snapshotach 2025–2026 — w szumie, mimo look-ahead, który powinien B pomagać[DO WALIDACJI]   G: Piotroski F-Score pomaga
IC +0,036 na 12 tygodniach; historia G to dzisiejsza wartość wklejona wstecz — dane z danego dnia zbierane dopiero od 2026-09-20[BEZ EFEKTU]     Histereza h=2 poprawia wynik
WF+ 54% vs 48% (h=1; alfa po rozliczeniu podatku obu stron) na nachodzących startach, ale na rozłącznych oknach 24M lepsza tylko w 7/16[SŁABE]          A: dyskonto do ceny docelowej pomaga
IC ≈ 0 (49% dodatnich, 77 snapshotów 2025–2026); wpływ na wynik portfela nierozstrzygnięty — zależy od okna (możliwa "value trap")[ODRZUCONE]      SMA30 daje przewagę timingu (bear-extra)
przy tych samych wpłatach po obu stronach WF+ z dopłatą i bez jest taki sam (34% vs 35%), IRR różni się o 0,1–0,3 p.p. — tyle co szum ścieżki[NIEUDOWODNIONE] Blend momentum 3M+6M lepszy od baseline
wygrywa w oknie 24M, przegrywa w 60M i 96M; różnice małe wobec rozrzutu[NIEUDOWODNIONE] Koncentracja Top 2–5 lepsza od Top 10
Top 1–5: WF+ 58–98% vs 36% tylko na nachodzących startach; na rozłącznych oknach 24M żaden nie jest lepszy od Top 10 w więcej niż 7/16, obsunięcia −25…−33% vs −20%[POTWIERDZONE]   Wynik jednej ścieżki zależy od przypadku
start przesunięty o 0–20 sesji: IRR 22–30% rocznie; ponad połowa zysku z 2020 to jedna spółka (Mercator), bez niej przewaga nad WIG140 spada o połowę[NIEAKTUALNE]    Top10/90d bije benchmark w 97% okien (v1)
konfiguracji v1 nie powtórzono 1:1 na danych v2; patrz AUDYT[BRAK DANYCH]    Pełny scoring (A+B+CF+D+E+G) ma przewagę
brak historii rekomendacji (przed 2025) i ESPI (przed 2026)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 CZEGO TEN BACKTEST NIE TESTUJE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Nie odpowiada na pytanie: "Czy obecna strategia GPW Console zarabia?"Historia nie zawiera point-in-time: rekomendacji analityków (A/B), sentymentu ESPI (F), historycznego składu indeksu ani części danych fundamentalnych. To przede wszystkim test mechanicznego rdzenia rankingu: momentum + płynność + Piotroski + dywidenda.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ZNANE OGRANICZENIA
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[HIGH] Survivorship bias: uniwersum to dzisiejsze ~146 spółek, bez wycofanych i zbankrutowanych, dobrane z wiedzą o tym, komu się udało. Na samym momentum (archiwum notowań GPW, 2017–2026) zawyża CAGR o ok. 7 p.p./rok (delistingi) i do 15 p.p./rok (dobór spółek); dla pełnej formuły wielkość nieznana.[HIGH] Brak historii A/B/F: A/B od 2025-01, ESPI od 2026-07; tam gdzie są, rekomendacje zaciągnięte wstecz (look-ahead).[HIGH] Brak prawdziwego out-of-sample: parametry badane na tym samym okresie, na którym są oceniane.[FIX]  Benchmark: do 2026-09-27 syntetyczny WIG140TR doliczał stopę dywidendy do WIG140, który już jest indeksem dochodowym — benchmark był zawyżony o ok. 3,5 p.p. rocznie, a każda alfa zaniżona. Wszystkie liczby na tej stronie przeliczone.[MED]  Dywidendy spółek odtwarzane heurystycznie z cen Yahoo (pojedyncze błędy danych, część zdarzeń odrzucana filtrem).[MED]  Slippage: transakcje po cenie zamknięcia, bez modelu spreadu.[MED]  Asymetria podatkowa: portfel płaci 19% od zrealizowanych zysków i od dywidend, benchmark WIG140 nie (ani prowizji). Zmierzone na 123 startach: podatek waży ok. 1,5x tyle co prowizja, a ok. jednej trzeciej tego efektu to sposób liczenia, nie realny koszt: benchmark nie jest rozliczany na koniec (inwestor w ETF też zapłaci Belkę, tylko raz), a strategia płaci ją tu przy każdej sprzedaży zamiast raz w roku jak w PIT-38. Po poprawieniu obu mediana alfy przy 0,5% prowizji jest dodatnia (+1,8 tys. PLN), a walk-forward wygrywa w 54% startów — ale na nachodzących startach i dzisiejszym uniwersum, więc nie jest to dowód przewagi.[OK]   Momentum w historii liczone bez korekty o dywidendy: NAPRAWIONE 2026-09-13. Historia liczy teraz zwrot całkowity (dywidenda brutto reinwestowana w dniu ex) względem benchmarku dochodowego; historyczne snapshoty scoringu liczono jeszcze względem dawnej serii z podwójnymi dywidendami (wspólne przesunięcie wszystkich spółek, kolejność zmienia tylko przy limicie ±50 p.p.), nowe — względem WIG140. Spółki bez dywidendy mają momentum identyczne co do grosza, płacące zyskują 2-12 p.p.; skład Top 10 zmienił się w 35% snapshotów, zwykle o jedną spółkę. Tabele przeliczone 2026-09-27.[FIX]  Backtest oceniał też spółkę wykluczoną z rankingu na produkcji (GPW, notowana na własnej giełdzie); naprawione 2026-09-13, tabele przeliczone 2026-09-27.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 CO SIĘ ZMIENIŁO: AUDYT BACKTESTU
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
UWAGA: 97% (v1) i 57% (dziś) NIE są wynikami tego samego eksperymentu.Zmieniły się m.in. dane cenowe, filtry, uniwersum spółek i sposób generowania startów. Zestawienie pokazuje rozbieżność między rebuildami; nie wylicza "spadku skuteczności" strategii.
                      WF+ @0%  WF+ @0,5%   filtry produkcyjne
─────────────────────────────────────────────────────────────
Rebuild v1 (07-25)        97%          -   brak
Przeliczenie 10-10        57%        36%   h=2 + buy-only SMA30
v1: Top10/90d, 35 startów co 90 dni, bez filtrów produkcyjnych.Dziś: Top 1–10, 123 starty co 28 dni, rebalans 30d, filtry jak na produkcji, benchmark WIG140 (dochodowy). Rebuild v2 z 2026-09-07 (41% / 33%) liczył względem benchmarku z podwójnymi dywidendami.
Wniosek v1 ("97% okien") nie utrzymał się w aktualnym, bardziej realistycznym teście. Konfiguracji v1 nie powtórzono 1:1 na danych v2, więc nie wiadomo, ile różnicy wynika z danych, a ile z ustawień. Nie ukrywamy v1; jest na dole strony, oznaczony jako nieaktualny.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 DZIENNIK EKSPERYMENTÓW
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2026-07-25  Backtest v1 (Top-N × interwał)          NIEAKTUALNY
2026-07-27  Tryby rynkowego filtra SMA              ZASTĄPIONY
2026-08-15  Interwały rebalancingu 2024–2026        HISTORYCZNY
2026-08-22  Histereza h=0 vs h=2                    ZASTĄPIONY
2026-08-23  Bear-extra + eksperyment kontrolny      ODRZUCONY (timing)
2026-09-06  Sweep momentum (bez filtrów)            NIEPOTWIERDZONY
2026-09-07  Audyt: rebuild 10 lat + filtry prod.    AKTUALNY
2026-09-08  Koszyki rang, formuła bez A/B, IC       AKTUALNY
2026-09-09  Próg płynności D                        AKTUALNY
2026-09-27  Survivorship: uniwersum z dnia (samo C) AKTUALNY
2026-09-27  Benchmark WIG140 zamiast syntetycznego  POPRAWKA
2026-09-27  Koszyki rang na spółkach z danego dnia  AKTUALNY
2026-09-27  Bear-extra: dopłaty też w benchmarku    POPRAWKA
2026-09-27  Buy-only i histereza, aktualne dane     AKTUALNY
2026-09-28  Strona: rebalans 30d jak produkcja      POPRAWKA
2026-10-10  Podatek płatny 30.04 (PIT-38)           POPRAWKA
2026-10-10  Szum startu, rok 2020, 3×ETF na rękę    AKTUALNY
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 PYTANIA METODOLOGICZNE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Q: Czy Top 10 to overfitting pod konkretną liczbę spółek?Częściowo tak; liczba spółek była badana na tych samych danych. Dlatego zamiast jednego "najlepszego N" pokazujemy koszyki rang: alfa i WF+ spadają monotonicznie od Top 1–10 do Top 31–50, także bez prowizji. Na spółkach dostępnych w danym dniu wszystkie koszyki przegrywają z indeksem, ale wśród płynnych kolejność Top 1–10 ≥ Top 11–20 zostaje, a Top 20 nie jest lepsze od Top 10.
Q: Look-ahead bias: czy scoring historii używa dzisiejszych rekomendacji analityków?Tak, tam gdzie rekomendacje istnieją (2025–2026); to znany problem. Przed 2025 A=0 i B=0, więc większość historii to czyste momentum, płynność, Piotroski i dywidenda. Look-ahead powinien POMAGAĆ A/B, a mimo to ich IC jest ≈ 0, a formuła bez A/B nie wypada odpornie gorzej.
Q: Czy jest czysty test out-of-sample?Nie. Wszystkie liczby są in-sample. Namiastką OOS jest tylko korelacja rangowa komponentów z przyszłym zwrotem (IC) na 12 tygodniowych snapshotach zapisanych na żywo przez produkcję (07–08.2026, bez look-ahead) i obserwacja żywego portfela. Rzetelny OOS wymaga zamrożenia parametrów i czekania na nowe dane.
Q: Czy wyższy score przekłada się na wyższy zwrot?Częściowo zbadane. Koszyki rang pokazują monotoniczny spadek wyników od Top 1–10 w dół, ale tylko na dzisiejszym uniwersum (patrz ograniczenia). IC (korelacja z przyszłym zwrotem, 77 snapshotów 2025–2026 odtworzonych wstecz, z rekomendacjami wklejonymi z look-ahead): momentum +0,11 i płynność +0,15 (86–91% dodatnich), rekomendacje i dyskonto ≈ 0. Poprzeczka: sygnał znany z przyszłości daje tu +0,26, więc część IC to survivorship, nie przewidywanie.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 LIVE VALIDATION: STAN NA DZIŚ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Backtest generuje hipotezy. Czy przetrwają poza historią, pokażą dopiero nowe dane.Wyniki na żywo i kalendarz ustalonych z góry ocen: /forward.
CO JUŻ ZBIERAMY
» Snapshoty rankingu z pełną formułą (rekomendacje + ESPI) od lipca 2026, od 2026-09-20 codziennie i z rozbiciem na komponenty.» Mechaniczny paper-portfel Top 10 (od 2026-09-13): te same reguły, zero decyzji uznaniowych — grupa kontrolna, z którą porównywany jest portfel strategii, AI Paper i WIG140 z trzech ETF-ów (zwrot ważony czasem).» Portfel strategii prowadzony na żywo wg sygnałów rankingu (zwrot ważony czasem na /forward).» AI Paper Portfolio (od 2026-07-30): paper trading, w którym AI jest warstwą wykonania nad tym samym rankingiem. To NIE jest niezależna strategia; jej wkład mierzy dopiero różnica względem mechanicznego Top 10, a ta ma na razie kilka tygodni.
CZEGO JESZCZE NIE MA
» Zamrożonych parametrów; formuła i dane wciąż się zmieniają (np. poprawka liczenia momentum 2026-08-19).» Prawdziwego out-of-sample; zaczyna się dopiero od zamrożenia parametrów i obserwacji danych, których strategia nie mogła wcześniej wykorzystać.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 CO DALEJ: KOLEJNE KROKI WALIDACJI
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
01  [✓] Naprawić historyczne momentum (ceny skorygowane o dywidendy)02  [✓] Powtórzyć walk-forward na poprawionych danych03  [✓] Test monotoniczności: decyle momentum vs przyszły zwrot04  [✓] Powtórzyć kluczowe tabele przy 0% prowizji05  [✓] Powtórzyć walk-forward na spółkach dostępnych w danym dniu06  Powtórzyć konfigurację v1 1:1 na aktualnych danych07  Zwiększyć próbkę realnych snapshotów do IC, w tym G (koniec 2026)08  Zamrozić parametry strategii09  Czekać na prawdziwe out-of-sample
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ZASADA WALIDACJI
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Backtest nie ma udowodnić, że strategia działa. Ma próbować ją obalić.Jeśli hipoteza przetrwa kolejne rebuildy, walk-forward i w końcu prawdziwe out-of-sample, dopiero wtedy zaczyna być interesująca.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 METODYKA
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Portfel równoważony Top 10 wg rankingu scoringu, max 2 spółki na sektor, bufor sprzedaży Top 13, histereza h=2 (sprzedaż dopiero po dwóch kolejnych tygodniach poza buforem), tryb buy-only gdy WIG140 spada poniżej SMA30 (w bessie brak sprzedaży).Rebalans co 30 dni (jak produkcja), wpłaty 1 000 PLN na start + 1 000 PLN co 30 dni. Prowizja 0,5% (wariant 0%), podatek 19%, dywidendy netto wdrażane przy najbliższym rebalansie.Benchmark: WIG140 (WIG20 + mWIG40 + sWIG80) — indeks dochodowy GPW, uwzględnia dywidendy. Dane 2016-10 -> 2026-09-25, tygodniowe snapshoty scoringu. Liczby: scripts/backtest_page_numbers.py.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
REBUILD v1 (2026-07-25): NIEAKTUALNY · rozwiń Pierwsza rekonstrukcja danych: prowizja 0%, bez histerezy i trybu buy-only (nie istniały jeszcze w silniku), %WF+ = odsetek 35 okien startowych (co 90 dni) bijących WIG140TR. Zachowane dla przejrzystości; liczby NIE są aktualne (patrz AUDYT wyżej). Wariant Wynik ROI MaxDD Alfa %WF+ ───────────────────────────────────────────────────── Top10/90d 355 945 +202% −39% +43 298 97% Top5/120d 599 258 +408% −34% +286 611 71% Top10/120d 402 701 +241% −40% +90 054 69% Top8/90d 299 595 +154% −41% −13 052 20% Top5/90d 376 059 +219% −29% +63 412 34% Top3/90d 461 754 +291% −37% +149 107 43% Top4/120d 743 409 +530% −30% +430 762 46% WIG140TR 312 647 +165% - - -
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Dane wyłącznie informacyjne — nie stanowią porady inwestycyjnej.━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━