See on küsimus, mida minult kõige sagedamini küsitakse, mõneti erinevas sõnastuses, inimestelt, kes on just oma esimese strateegia valmis saanud: kui palju tehinguid on vaja, et tulemus oleks päris? Tavaliselt lisandub sellele mingi arv. „Mul on 1,200 tehingut, sellest ju piisab?“ Aus vastus ärritab kõiki, sest tehingute arv pole üldse oluline.
Siin on kogu asi ühe reana. Ülejäänud postituses selgitan, miks see valus on.
Mis on Sharpe'i suhtarvu standardviga?
Kui Sharpe arvutatakse n perioodilise tootluse põhjal, eeldades, et need on sõltumatud ja ligikaudu normaaljaotusega, on valimiviga järgmine:
SE(s) ≈ √((1 + s²/2) / n)
kus s on sama sagedusega mõõdetud Sharpe. Annualiseeri võrrandi mõlemad pooled ja saad lihtsa tulemuse. Kui aastas on k vaatlust ja andmeid on T aasta kohta, siis annualiseeritud Sharpe'il S on järgmine omadus:
SE(S) ≈ √((1 + S²/(2k)) / T)
Vaata nimetajas olevat 2k. Päevase tootluse korral on k = 252, seega annab isegi Sharpe 2 lugejasse panuse 4/504 ≈ 0.008. Kogu avaldis taandub kujule 1. Annualiseeritud Sharpe'i standardviga on ligikaudu 1/√T, kus T tähistab andmete kalendriaastaid. See sõltub Sharpe'ist vaevu, valimi sagedusest üldse mitte ning kindlasti mitte tehtud tehingute arvust.
Seega:
| Andmete aastad | SE(Sharpe) | 95% CI, kui mõõtsid 1.5 |
|---|---|---|
| 1 | 1.00 | −0.46 kuni 3.46 |
| 2 | 0.71 | 0.11 kuni 2.89 |
| 3 | 0.58 | 0.37 kuni 2.63 |
| 5 | 0.45 | 0.62 kuni 2.38 |
| 10 | 0.32 | 0.88 kuni 2.12 |
Järeltest, mille Sharpe on kahe aasta ajaloo põhjal 1.5, ei suuda 95% usaldustasemel statistiliselt eristuda kulliviskest. Enamiku krüptouuringute puhul on see tavapärane olukord, sest enamiku jaoks algavad puhtad andmed, kus on ellujäämisnihe korrigeeritud ja tasud õigesti arvestatud, kuskil 2022 paiku ning pooled huvitavad sümbolid ei olnud enne 2023 olemaski.
Aga mul on 40,000 tehingut. Kas see ei lahenda probleemi?
Ei, ja see on arusaamatus, millest tahan kõige rohkem lahti saada.
Tehingute arv ja valimi pikkus on eri suurused ning valemis esineb neist ainult üks. Kui sinu strateegia teeb kuue kuuga 40,000 tehingut, siis T = 0.5 ja SE ≈ 1.41. Mõõdetud Sharpe'i 2.0 korral ulatub 95% usaldusvahemik −0.8-st 4.8-ni. 40,000 tehingut ja aus järeldus on ikka „võib olla hea, võib olla kahjumlik“.
Põhjus on selles, et need 40,000 tehingut pole 40,000 sõltumatut panust 40,000 eri turuolukorra peale. Need on 40,000 vaatlust ligikaudu 180 päeva pikkusest turukäitumisest; päevad on omavahel korreleeritud ja ka tururežiimid on omavahel korreleeritud. Neli kuud iga päev kasumit teeninud suure sagedusega keskmise poole pöördumise portfell on tegelikult teinud ühe panuse — et lühikese horisondi pöördumine püsib selles likviidsusrežiimis — ning näinud selle panuse tulemust võib-olla vaid käputäiel sõltumatul korral.
Mina mõtlen selle asemel nii: loenda tururežiime, mitte täitmisi. Kui paljudest tõeliselt erinevatest turuoludest see strateegia läbi tuli? Ühe pika positiivse baasiga perioodi jooksul töötanud rahastusintressi kandestrateegia on näinud n = 1, ükskõik kui palju tunnipõhiseid tasakaalustamisi see kirja pani.
Kiirkontroll: tee päevase P&L-i plokk-bootstrap, kasutades ploki pikkuseks 20 päeva, ja vaata uuesti valitud Sharpe'ide jaotust. Kui 5. protsentiil on alla nulli, pole tehingute arv oluline. Selleks kulub umbes üheksa rida numpy-koodi ja see on mind veennud rohkematest strateegiatest loobuma kui ükski teine kontroll.
Kas valem kehtib päris strateegiate puhul?
Mitte täpselt, ning viga on sinu jaoks ebasoodsas suunas. Tulem 1/√T eeldab sõltumatuid ja identselt jaotunud normaaljaotusega tootlusi. Päris strateegiate tootlused on autokorreleeritud ja viltused ning kõik, mis meenutab kandestrateegiat, volatiilsuse lühikeseks müümist või keskmise poole pöördumist, on tavaliselt negatiivse viltusega. Mertensi parandus lisab need momendid arvestusse:
SE(s) ≈ √((1 + s²/2 − γ₃·s + (γ₄−3)·s²/4) / n)
kus γ₃ on viltusus ja γ₄ on järsakus. Negatiivne viltusus muudab −γ₃·s liikme positiivseks, mis laiendab vahemikku. Üleliigne järsakus laiendab seda veel. Tüüpilise krüptorahade kandestrateegia P&L-i puhul, mille viltusus on umbes −1.2 ja järsakus umbes 9, olen näinud korrigeeritud standardviga lihtsast hinnangust 30–40% suuremana. Lo 2002. aasta artikkel käsitleb autokorrelatsiooni ning mõju on sama märgiga: tootluste positiivne ajaline korrelatsioon paisutab lihtsustatud Sharpe'i ja vähendab näilist viga, mis on ebameeldiv kooslus.
Seega käsitle 1/√T-d oma määramatuse alampiirina. See on parim võimalik juht.
Kui palju peab Sharpe olema, kui katsetasin 500 varianti?
Nüüd jõuame osani, mis on oluline kõigile, kes kasutavad automatiseeritud uurimistoru. Stratmillis oleme sellises olukorras iga päev: genereeriv agent ei paku üht kandidaati, vaid sadu.
M standardnormaaljaotuse väljavõtte maksimumi oodatav väärtus on ligikaudu √(2 ln M). Korruta see oma standardveaga ja saad Sharpe'i, mida näitab M-ist kõige õnnelikum tegelikult täiesti väärtusetu strateegia.
| Testitud strateegiad | √(2 ln M) | Parima mürastrateegia Sharpe, 5 aastat (SE 0.45) | Parima mürastrateegia Sharpe, 2 aastat (SE 0.71) |
|---|---|---|---|
| 10 | 2.15 | 0.96 | 1.52 |
| 100 | 3.03 | 1.36 | 2.16 |
| 500 | 3.53 | 1.58 | 2.50 |
| 5,000 | 4.13 | 1.85 | 2.93 |
Vaata eelviimast rida. Kui genereerisid kahe aasta andmete põhjal 500 kandidaati ja võitja Sharpe on 2.4, siis pole sa midagi leidnud. See jääb müratasemest allapoole. Bailey ja López de Prado deflateeritud Sharpe'i meetod kasutab lihtsustatud √(2 ln M) asemel katsete Sharpe'ide dispersiooni ning seda tasub korralikult rakendada, kuid lihtsustatud variantki aitab juba täna käitumist muuta.
Kaks asja muudavad olukorra tabelis näidatust hullemaks. Esiteks pole M salvestatud strateegiate arv, vaid nende strateegiate arv, mida sa hindasid — sinna kuuluvad kõik parameetrite muudatused, iga „proovin veel 30-perioodilist tagasivaateakent“, iga korduskatse pärast veaparandust. Keegi ei loe neid ausalt. Teiseks pole kandidaadid sõltumatud väljavõtted, seega hindab √(2 ln M) tegelikku valikut üle; samas tähendab katsete korrelatsioon ka seda, et üks õnnelik tururežiim tõstab tervet strateegiarühma korraga.
Kvantitatiivses uurimistöös on kõige ohtlikum arv see, mida keegi kirja ei pannud: mitu korda sa tulemust vaatasid.
Mida ma siis tegelikult teen?
Viis asja, sellises järjekorras nagu mina need ette võtaksin.
- Logi iga hindamine. Iga järeltesti käivitamise korral suurenev loendur, mis salvestatakse ega lähe kunagi nulli. Kui sa ei oska öelda, mis on M, ei oska sa öelda ka oma lävendit. See on kogu nimekirja kõige väärtuslikum tund inseneritööd.
- Esita Sharpe alati koos usaldusvahemikuga. Ära kuva kunagi üksikut arvu. Meie järeltestide aruanded väljastavad
1.72 ± 0.51 (2.9y, skew-adjusted)ja ± pole valikuline. See muudab kogu meeskonna viisi tulemustest rääkida. - Määra M-i ja T põhjal lävend enne tulemuste vaatamist. Võta number ülaltoodud tabelist ja pane kirja. Tagantjärele valitud lävenditega veenab igaüks end kõverat sobitama.
- Kui valim on väike, eelista sagedusele laiemat valikut. Kalendriaega juurde toota ei saa, aga sama signaali saad rakendada 40 korreleerimata sümbolile. See suurendab tegelikku n-i päriselt, erinevalt tehingusageduse suurendamisest. Jälgi siiski korrelatsioone — riskikartlikul tunnil on 40 krüptoperpetuaalset futuurilepingut üks instrument.
- Seejärel kauple demokontol. Valimiväline aeg koguneb üks päev korraga ja otseteed pole. Just seepärast on see ainus valim, mida keegi ei saa üle sobitada.
Ükski neist võtetest ei muuda lühikesi valimeid kasutuskõlblikuks. Need aitavad sul olla aus selle suhtes, milliseid järeldusi lühike valim toetab — need on palju tagasihoidlikumad kui enamik järeltestide aruandeid mõista annab. Kahe aasta põhjal saadud Sharpe 1.5 on hüpotees, mida tasub demokontol katsetada. See ei ole tõestatud tulemus.
← Kõik postitused
