Istorinis strategijos testavimas, optimizavimas ir patikros etapai
Kaip gaunami rezultatai įskaičiuojant realias sąnaudas, kaip parametrai parenkami už imties ribų ir kaip strategija pelno perkėlimą į kitą etapą.
Realūs biržos mokesčiai ir sąnaudos
Atliekant atgalinius testus taikomi kiekvienos prekybos vietos skelbiami maker ir taker mokesčiai, neterminuotų ateities sandorių finansavimo mokėjimai, trumpųjų pozicijų skolinimosi išlaidos, pirkimo ir pardavimo kainų skirtumas bei kiekvieno pavedimo įvykdymo rinkos poveikio modelis. Nuosavo kapitalo vertė perskaičiuojama pagal rinkos kainą kiekviename laiko intervale, o svertinės pozicijos gali būti likviduotos pasiekus prekybos vietos palaikomosios maržos ribą. Niekur nepateikiami rezultatai neatskaičius išlaidų.
Pozicijų dydis ir finansinis svertas
Forex strategijose pozicijos dydis nustatomas sveikais bazinės valiutos vienetais, atsižvelgiant į sąskaitos nuosavą kapitalą. Variklis taiko sukonfigūruotą FX sverto ribą, maržos reikalavimus ir konvertavimą į kotiruojamą valiutą. Brokerio naudojamiems lotų dydžiams reikia atskiro patvirtinto susiejimo.
Kaip veikia optimizavimas
Optimizuojant naudojama visa strategijai prieinama istorija. Naujausia jos dalis atidedama kaip kontrolinė imtis. Likusi dalis, kūrimo laikotarpis, padalijama į nuoseklius slenkančio testavimo intervalus: kiekvieno intervalo mokymo atkarpoje ieškoma parametrų, o po jos einančioje testavimo atkarpoje jie vertinami. Taip kiekvienas už imties ribų gautas rezultatas grindžiamas duomenimis, kurių parametrų paieška nematė.
Tada galutiniai parametrai parenkami vieną kartą visam kūrimo laikotarpiui ir lygiai vieną kartą išbandomi su atidėta kontroline imtimi. Kartu pateikiami jautrumo, stabilumo ir statistinio reikšmingumo rodikliai, o perkėlimo į kitą etapą kriterijai vertina už imties ribų gautus rezultatus ir kontrolinės imties rezultatus, niekada – pritaikymą imčiai.
Atidėta kontrolinė imtis
Atidėta kontrolinė imtis yra paskutinė istorijos dalis: ji sudaro bent 20 % istorijos, apima bent 15 dienų ir yra pakankamai ilga, kad būtų galima tikėtis apie 20 sandorių, bet ne daugiau kaip 35 % istorijos. Jei kontrolinė imtis pasiekia 35 % ribą, ji pažymima kaip nepakankamos statistinės galios. Ji niekada nenaudojama parametrams parinkti, o DI agentai mato tik iki kontrolinės imties pradžios gautus rezultatus, todėl jų sprendimai negali būti prie jos priderinti. Jūs, kaip savininkas, visą istoriją matote strategijos puslapyje.
Įdėtiniai slenkančio testavimo intervalai
Slenkančio testavimo intervalai nustatomi pagal sandorių skaičių, o ne vien pagal laiką: kiekvienas testavimo intervalas ilginamas, kol jame galima tikėtis apie 20 sandorių. Intervalai prasideda kas mėnesį, o ilgos istorijos atveju – kas ketvirtį; tarp mokymo ir testavimo paliekamas trumpas tarpas. Kiekvienoje mokymo atkarpoje paieška vykdoma įdėtiniu būdu: mokymo atkarpa vėl padalijama santykiu 70/30, kad parametrai būtų parinkti pagal vidinius validavimo duomenis. Kad rezultatas būtų galutinis, reikia bent 3 intervalų ir pakankamos už imties ribų gautų duomenų aprėpties; kitu atveju pažymima, kad išvadoms nepakanka sandorių.
Parametrų paieška ir galutinis pritaikymas
Parametrų ieškoma taikant Bajeso optimizavimą: kiekviename intervale atliekama apie 30 bandymų vienam derinamam parametrui, iš viso nuo 30 iki 150 bandymų. Užuot pasirinkus vieną geriausią bandymą, atranka teikia pirmenybę parametrams, kurių aplinkos reikšmės taip pat įvertintos gerai, laikantis strategijos rizikos apribojimų. Galutinai iš naujo pritaikant modelį, tas pats atrankos metodas taikomas visam kūrimo laikotarpiui; tada su atidėta kontroline imtimi tikrinami būtent šie parametrai. Kiekvienam optimizavimui skiriamas laiko limitas, o ilgas paieškas galima vykdyti nuotoliniuose skaičiavimo ištekliuose.
Jautrumas ir plokščios sritys
Kiekvienas skaitinis parametras abiem kryptimis keičiamas 10 %, 25 % ir 50 %, o sveikųjų skaičių parametrai – vienu ir dviem žingsniais. Plokščioji sritis rodo, kiek galima keisti parametrą, kol Sharpe rodiklis nukrenta daugiau, nei leidžia jo statistinis neapibrėžtumas; staigesnis kritimas vadinamas lūžiu. Plati plokščioji sritis yra raminantis požymis, o lūžis – įspėjimas. Tai ataskaita, o ne privalomas sprendimo slenkstis.
Parametrų stabilumas
Stabilumas parodo, kiek pasirinkti parametrai skiriasi tarp intervalų, palyginti su atsitiktinio pasirinkimo svyravimais. Panašūs parametrai žymimi kaip stabilūs, o smarkiai besikeičiantys – kaip nestabilūs. Tai kartu su rezultatais pateikiamas įspėjimas, kuris pats savaime niekada nėra kontrolinis kriterijus. Taip pat pateikiamas galutinių parametrų strategijos pakartotinis vykdymas kiekviename intervale; jis pažymimas kaip iš dalies pagrįstas imties duomenimis, nes tie parametrai parinkti naudojant tuos pačius duomenis.
Statistinis reikšmingumas ir pagal bandymų skaičių koreguotas Sharpe rodiklis
Už imties ribų gautos grąžos tikrinamos t testu, atsižvelgiančiu į autokoreliaciją, ir pagal bandymų skaičių koreguotu Sharpe rodikliu. Šiuo rodikliu vertinama, ar rezultatas viršija tai, ką pasiektų geriausias iš daugelio atsitiktinių bandymų, įskaičiuojant efektyvų bandymų skaičių: faktiškai išbandytus variantus, kurių rezultatai gauti už imties ribų, įskaitant kiekvieną papildomą strategijos pataisą po peržiūros. Vidiniai paieškos bandymai neįtraukiami į efektyvų strategijos bandymų skaičių, nes juose nenaudojami už imties ribų gauti duomenys.
Kombinatorinis kryžminis patvirtinimas ir tikimybė, kad atgalinio testavimo rezultatai yra pernelyg pritaikyti duomenims, apskaičiuojami pagal mokymo duomenis kaip diagnostiniai rodikliai. Jie padeda analitikui, tačiau patys savaime nelemia, ar strategija perkeliama į kitą etapą.
Grąžos vertinimo intervalai ir vertinimas keliose rinkose
Lėtai prekiaujančios strategijos gali sudaryti per mažai sandorių, kad būtų užpildyti pagal sandorių skaičių nustatyti intervalai. Tokiu atveju jos vertinamos pagal laikotarpių grąžą, taikant autokoreliaciją įvertinančius testus. Vertinant keliose rinkose, nepakeista taisyklė išbandoma 5 ar daugiau susijusių rinkų: nuoseklūs rezultatai šiose rinkose gali pakeisti nepakankamą išvadoms rezultatą į kriterijus atitinkantį rezultatą, o nesėkmė kitoje rinkoje gali kriterijus atitinkantį rezultatą paversti įspėjimu.
Mažo patikimumo rezultatai
Kai įrodymų nepakanka galutinei išvadai, tačiau nė vienas kriterijus nėra aiškiai neįvykdytas, o analitikas vis tiek rekomenduoja perkelti strategiją į kitą etapą, ją galima pradėti naudoti popierinėje prekyboje su žyma „mažas patikimumas, statistiškai neįrodyta“. Ši žyma rodoma strategijos puslapyje, popierinės prekybos puslapiuose ir pranešimuose. Mažo patikimumo strategija nėra parengta realiai prekybai, kol jos pačios popierinės prekybos rezultatai netampa statistiškai reikšmingi.
Perkėlimo į kitą etapą kriterijai
Perkėlimo į kitą etapą ribos taikomos kode pagal viešai paskelbtą kriterijų failą. Griežtų kontrolinių kriterijų negalima apeiti: pakankama istorija, pelningumas daugumoje kalendorinių metų, kai buvo pozicijų, vidutinė sandorio grąža padengia viso sandorio ciklo išlaidas, maržos naudojimas nėra perteklinis, pateikti už imties ribų gauti rezultatai ir kontrolinės imties rezultatai, kurių statistiniai testai neatmeta, nuosmukis neviršija registruotos ribos, apskaita išsami ir nuosekli.
Lankstūs kriterijai ir išimtys
Lankstūs kriterijai apima nuosmukį, palyginti su pačios strategijos riba, Calmar rodiklį, pelno koeficientą, laimėjimo procentą kartu su vidutinio laimėjimo ir nuostolio santykiu, laikymo trukmę, kontrolinės imties rezultatus, palyginti su slenkančio testavimo rezultatais, pagal bandymų skaičių koreguotą Sharpe rodiklį, pelno koncentraciją vienais metais, rinkos poveikio išlaidas ir nuostolius didelio kintamumo laikotarpiais. Analitikas gali padaryti išimtį dėl lankstaus kriterijaus tik pateikęs rašytinę priežastį, kurioje įvardijamas rodiklis; išimtis įrašoma į vykdymo duomenis, Rizikos pareigūnas gali ją atmesti, o Portfelio valdytojas ją patikrina dar kartą.
Kaip sąžiningai vertinti atgalinio testo rezultatus
Palyginkite nuosavo kapitalo kreivę su nuosmukiu, patikrinkite, kiek sandorių lemia rezultatą, ir įvertinkite vidutinę vieno sandorio grąžą, palyginti su viso sandorio sąnaudomis. Didelė grąža iš kelių sandorių arba už imties ribų išnykstantis Sharpe koeficientas yra įspėjimas, o ne patikimas rezultatas.