2026. gada 20. augusts · Optimizācija

Trīs veidi, kā nemanot izgāzt walk-forward optimizāciju

Trīs veidi, kā nemanot izgāzt walk-forward optimizāciju

Walk-forward optimizācijai ir godīgas stratēģiju noregulēšanas metodes reputācija, un tā to ir pelnījusi — vismaz salīdzinājumā ar optimizēšanu uz visiem datiem un rezultāta apbrīnošanu. Taču šai tehnikai piemīt klusas kļūmes, un katra no tām rada vienu un to pašu artefaktu: validācijas atskaiti ar uzrakstu "robusta", pieskavota stratēģijai, kas tāda nav. Lūk, trīs, pret kurām mums nācās būvēt aizsardzību, sakārtotas pēc postījumiem, ko tās atstāj.

Pirmā kļūme: logi noplūst

Nepareizais ceļš: noregulē uz janvāri–jūniju, validē uz jūliju, un tad ļauj kaut kam no jūlija ietekmēt otro piegājienu — pārrēķins pēc ārpusizlases skaitļa ieraudzīšanas, "neliels pielāgojums" parametru režģī, pazīme, kas normalizēta pār visu rindu. Katrs solis izskatās nevainīgs. Kopā tie pārvērš ārpusizlases logu par izlases datiem ar aizturi.

Postījumi: ārpusizlases Sharpe, kas noslēpumaini seko izlases Sharpe. Īsti ārpusizlases rezultāti ir trokšņaini un neapmierinoši; aizdomīgi gluda IS/OOS sakarība nozīmē, ka informācija plūst atpakaļgaitā. Mēs sekojam attiecībai tieši — izlases rādītājs vairāk nekā 3x virs ārpusizlases atzīmē izpildījumu, bet ārpusizlases rādītājs nullē vai zemāk to nogalina neatkarīgi no tā, cik skaisti izskatās izlases dati.

Otrā kļūme: metriku iepirkšanās pa logiem

Palaid trīs walk-forward logus, iegūsti trīs trokšņainus rezultātus, tad apkopo: vidējais Sharpe? Mediāna? Izmest sliktāko logu "režīma maiņas" dēļ? Katra izvēle ir brīvības pakāpe, un neatlaidīgs optimizētājs (cilvēks vai Bajesa) atradīs to kopsavilkumu, kurā šī stratēģija izskatās vislabāk. Septiņdesmit pieci Optuna izmēģinājumi uz logu ir septiņdesmit piecas iespējas pielāgoties troksnim, reizinātas ar tik daudziem kopsavilkumiem, cik esi gatavs apsvērt.

Postījumi: stratēģija, kas iziet validāciju un pēc tam reālajā tirgū sniedz sliktākā loga sniegumu, jo sliktākais logs bija vienīgais godīgais. Mūsu likums: agregācija tiek fiksēta konfigurācijā pirms palaišanas, izmēģinājumu budžets ir fiksēts, un analītiķis lasa rezultātus pa logiem kopā ar parādīto izkliedi. Stratēģija, kurai vajag draudzīgu kopsavilkumu, lai tiktu cauri, cauri netiek.

Trešā kļūme: holdout, kas vairs nav holdout

Holdout nostrādā tieši vienu reizi. Otrajā reizē, kad stratēģija tiek pret to novērtēta — pēc parametra pabīdīšanas, signāla pieregulēšanas, "pārbaudīsim tikai vienu reizi" — tas vairs nav holdout; tā ir lēna validācijas kopa. Piecpadsmit neaiztiktas dienas šķiet pavisam viegli saglabājamas, līdz pienāk iterāciju spiediens un atkārtota pārbaude sāk likties nekaitīga.

Postījumi ir smalki: holdout rezultāti, kas uzlabojas cauri vienas un tās pašas stratēģijas iterācijām. Svaigiem ārpusizlases datiem nav nekāda iemesla atalgot trešo iterāciju vairāk par pirmo, un, kad tie to dara, holdout ir izrakts. Mēs vienreizību uzspiežam mehāniski: holdout tiek novērtēts vienreiz uz konveijera izpildījumu, rezultāts tiek ierakstīts ierakstā, un stratēģija, kurai vajadzīgs vēl viens mēģinājums, iet cauri visai trasei no jauna — ar jauniem logiem un visu pārējo. Tai jāsaglabā vismaz 70% no walk-forward ārpusizlases Sharpe, un šo kauliņu otrreiz nemet.

Pazīme, kas izdzīvo visas trīs

Pirms visa pārējā mēs palaižam vienkāršu jutīguma pārbaudi: pabīdām katru parametru par ±20% un vērojam metrikas. Īsta priekšrocība degradējas pakāpeniski; sakritība nogāžas no klints. Tas ir lētākais tests visā konveijerā, un tas noraida stratēģijas, kuras citādi būtu izbraukušas cauri visam iepriekš minētajam — jo parametra klints ir tas, kā pārmērīga pielāgošana izskatās pirms esi devis tai iespēju paslēpties validācijas mehānismos.

3.0×maks. IS/OOS Sharpe attiecība
70%no WF OOS holdout jāsaglabā
±20%jutīguma pabīde katram parametram
1holdout novērtējums, jebkad

Nekas no tā optimizāciju nepadara drošu. Tas padara kļūmes skaļas — un tas ir maksimums, ko godīgi var prasīt no validācijas procesa.

optimizācijawalk-forwardpārmērīga pielāgošanaholdoutjutīgums
← Visi raksti