2026. augusztus 30. · statisztika

Hány ügyletre van szükség egy backtesztben, hogy a Sharpe-érték jelentsen is valamit?

Hány ügyletre van szükség egy backtesztben, hogy a Sharpe-érték jelentsen is valamit?

Ezt a kérdést teszik fel nekem a legtöbbször, valamilyen formában, azok, akik épp most készültek el az első stratégiájukkal: hány ügylet kell ahhoz, hogy az eredmény valódi legyen? Általában egy számot is mondanak. „Van 1 200 ügylet, az már elég, ugye?” Az őszinte válasz pedig mindenkit bosszant, mert egyáltalán nem az ügyletek számáról van szó.

Íme az egész egyetlen sorban; a bejegyzés hátralévő részében pedig elmagyarázom, miért fáj.

1/√Taz évesített Sharpe standard hibája, T években
±0.8895%-os sáv bármely 5 éves Sharpe-érték körül
1.4ekkora Sharpe-ot mutat a 100 zajstratégia közül a legszerencsésebb ugyanazon az 5 éven

Mekkora a Sharpe-ráta standard hibája?

Ha a Sharpe-ot n periódusos hozamból számítjuk, és feltesszük, hogy ezek függetlenek és nagyjából normális eloszlásúak, a mintavételi hiba:

SE(s) ≈ √((1 + s²/2) / n)

ahol s az ugyanilyen gyakorisággal mért Sharpe. Évesítve mindkét oldalt egy egyszerű összefüggést kapunk. Ha évente k megfigyelésünk van, és az adatok T évet fednek le, az évesített Sharpe S esetén:

SE(S) ≈ √((1 + S²/(2k)) / T)

Nézzük a nevezőben szereplő 2k kifejezést. Napi hozamoknál k = 252, így még a 2-es Sharpe is csak 4/504 ≈ 0.008 értékkel járul hozzá a számlálóhoz. Az egész kifejezés 1-re egyszerűsödik. Az évesített Sharpe standard hibája megközelítőleg 1/√T, ahol T az adatok naptári években mért időtartama. Alig függ magától a Sharpe-értéktől, nem függ a mintavételi gyakoriságtól, és egyáltalán nem függ attól, hány ügyletet kötöttél.

Tehát:

Adatokkal lefedett évekSE(Sharpe)95%-os CI, ha a mért érték 1.5
11.00−0.46 és 3.46 között
20.710.11 és 2.89 között
30.580.37 és 2.63 között
50.450.62 és 2.38 között
100.320.88 és 2.12 között

Egy backteszt, amely két évnyi adaton 1.5-ös Sharpe-ot mutat, 95%-os szinten statisztikailag nem különböztethető meg a pénzfeldobástól. A legtöbb kriptós kutatásnál ez az alaphelyzet, mert a legtöbbeknek csak valamikor 2022 körül kezdődik a tiszta, túlélési torzítástól megtisztított, díjakat pontosan figyelembe vevő adatsora, az érdekes tokenek fele pedig 2023 előtt még nem is létezett.

De nekem 40 000 ügyletem van. Az nem oldja meg?

Nem, és ez az a félreértés, amit a leginkább szeretnék eloszlatni.

Az ügyletek száma és a minta időtartama két külön mennyiség, és a képletben csak az egyik szerepel. Ha a stratégiád hat hónap alatt 40 000 ügyletet köt, akkor T = 0.5, és SE ≈ 1.41. A mért 2.0-s Sharpe 95%-os intervalluma −0.8-tól 4.8-ig terjed. Negyvenezer ügylet után is csak annyi a biztos következtetés, hogy „lehet, hogy jó, de az is lehet, hogy veszteséges”.

Azért, mert ez a 40 000 ügylet nem 40 000 független fogadás 40 000 különböző piaci állapotra. Körülbelül 180 napnyi piaci viselkedésből származó 40 000 megfigyelésről van szó, a napok pedig korrelálnak egymással, ahogy az egyes rezsimeken belüli időszakok is. Egy nagyfrekvenciás, átlaghoz visszatérő portfólió, amely négy hónapon át minden nap pénzt keres, valójában egyetlen fogadást tett — arra, hogy a rövid távú visszatérés kitart ebben a likviditási rezsimben —, és ennek a fogadásnak a kimenetelét talán csak néhány valóban független alkalommal figyelte meg.

Én így fogalmazom át magamban: a rezsimeket számold, ne a teljesüléseket. Hány valóban különböző piaci körülményt élt túl ez a stratégia? Egy finanszírozási rátára épülő carry stratégia, amely egyetlen hosszú, pozitív bázisú időszakban futott, n = 1 megfigyelést látott, függetlenül attól, hány óránkénti újrasúlyozást rögzített.

Gyors ellenőrzés: végezz blokkos bootstrapet a napi P&L-en 20 napos blokkhosszal, majd nézd meg az újramintavételezett Sharpe-értékek eloszlását. Ha az 5. percentilis nulla alatt van, az ügyletek száma lényegtelen. Ehhez körülbelül kilenc sor numpy-kód kell, és ez az egyetlen ellenőrzés több stratégiáról beszélt le, mint bármi más.

Működik ez a képlet valódi stratégiáknál?

Nem egészen, és a tévedése számodra kedvezőtlen irányú. Az 1/√T összefüggés IID, normális eloszlású hozamokat feltételez. A valódi stratégiák hozamai autokorreláltak és ferde eloszlásúak, a ferdeség pedig általában negatív minden olyan stratégiánál, amely carryre, short volra vagy átlaghoz való visszatérésre épül. Mertens korrekciója figyelembe veszi ezeket a momentumokat:

SE(s) ≈ √((1 + s²/2 − γ₃·s + (γ₄−3)·s²/4) / n)

ahol γ₃ a ferdeség, γ₄ pedig a csúcsosság. A negatív ferdeség pozitívvá teszi a −γ₃·s tagot, ami szélesíti az intervallumot. A többlet-csúcsosság tovább tágítja. Egy tipikus, körülbelül −1.2-es ferdeségű és 9-es csúcsosságú kriptós carry P&L esetén azt láttam, hogy a korrigált standard hiba 30–40%-kal nagyobb a naiv értéknél. Lo 2002-es tanulmánya az autokorrelációt is kezeli, és az irány ugyanaz: a hozamok pozitív soros korrelációja felfelé torzítja a naiv Sharpe-ot, és csökkenti a látszólagos hibát — kellemetlen párosítás.

Ezért az 1/√T értéket kezeld a bizonytalanság alsó korlátjaként. Ez a legkedvezőbb eset.

Mekkora Sharpe kell, ha 500 változatot teszteltem?

Most jutunk el ahhoz, ami mindenkinek fontos, aki automatizált kutatási folyamatot futtat — nálunk, a Stratmillnél ez mindennapos: a generáló ügynök nem egy jelöltet állít elő, hanem több százat.

Egy standard normális eloszlásból vett M minta maximumának várható értéke nagyjából √(2 ln M). Ezt megszorozva a standard hibáddal megkapjuk, mekkora Sharpe-ot mutat a valóban értéktelen stratégiák közül a legszerencsésebb.

Tesztelt stratégiák√(2 ln M)Legjobb zajstratégia Sharpe-értéke, 5 év (SE 0.45)Legjobb zajstratégia, 2 év (SE 0.71)
102.150.961.52
1003.031.362.16
5003.531.582.50
5,0004.131.852.93

Nézd meg az utolsó előtti sort. Ha két évnyi adaton 500 jelöltet hoztál létre, és a győztes Sharpe-értéke 2.4, akkor pontosan semmit sem találtál. Ez az érték a zajszint alatt van. Bailey és López de Prado deflált Sharpe-mutatója ezt formalizálja: a próbák Sharpe-értékeinek varianciájával helyettesíti a durva √(2 ln M) közelítést. Érdemes rendesen bevezetni, de már a durva változat is elég ahhoz, hogy ma változtass a gyakorlatodon.

Két dolog miatt a helyzet még rosszabb, mint ahogy a táblázat mutatja. Először is M nem az elmentett stratégiák száma, hanem az értékelt stratégiáké: minden paramétermódosítással, minden „próbáljuk ki 30 periódusos visszatekintéssel is” ötlettel és minden hibajavítás utáni újrafuttatással együtt. Senki sem számolja őket őszintén. Másodszor, a jelöltek nem független minták, ezért a √(2 ln M) túlbecsüli a tényleges próbák számát. Ugyanakkor a korrelált próbák miatt egyetlen szerencsés rezsim egy egész stratégiacsoport eredményét együtt javíthatja.

A kvantitatív kutatás legveszélyesebb száma az, amit senki sem rögzített: hányszor néztél rá az eredményekre.

Mit csinálok hát a gyakorlatban?

Öt dolgot, ebben a sorrendben.

  1. Rögzíts minden értékelést. Legyen egy számláló, amely minden backteszt-futtatáskor nő, az értéke maradjon meg, és soha ne nullázódjon. Ha nem tudod megmondani, mennyi M, a küszöbértékedet sem tudod megadni. Ezen a listán ez a legnagyobb értékű egyórás mérnöki munka.
  2. A Sharpe-ot mindig az intervallumával együtt közöld. Soha ne írj ki puszta számot. A backtesztjelentéseink feltüntetik a 1.72 ± 0.51 (2.9y, skew-adjusted) értéket, és a ± jel nem opcionális. Ez megváltoztatja, hogyan beszél az egész csapat az eredményekről.
  3. Még az eredmények megtekintése előtt állapítsd meg a küszöböt M és T alapján. Vedd ki a számot a fenti táblázatból, és írd le. Az utólag megállapított küszöbök vezetnek ahhoz, hogy mindenki megmagyarázza magának a görbeillesztést.
  4. Ha kevés a mintád, a gyakoriság növelése helyett törekedj nagyobb lefedettségre. Több naptári időt nem tudsz előállítani, de ugyanazt a jelet kipróbálhatod 40 korrelálatlan instrumentumon. Ez valóban növeli a tényleges n értékét, a kereskedési gyakoriság emelésével ellentétben. A korrelációkra viszont figyelj: 40 kriptós örökös határidős ügylet egy kockázatkerülő órában egyetlen instrumentumnak számít.
  5. Utána pedig teszteld éles pénz nélkül. A mintán kívüli idő naponta egy nappal gyarapszik, ezt nem lehet felgyorsítani, és éppen ezért ez az egyetlen minta, amelyre nem lehet túlilleszteni.

Ettől a rövid adatsorok még nem válnak alkalmassá komoly következtetésekre. Azt teszi világossá, milyen gyenge állítást támaszthat alá egy rövid minta — sokkal gyengébbet, mint amit a legtöbb backtesztjelentés sugall. A két évnyi adaton elért 1.5-ös Sharpe olyan hipotézis, amelyet érdemes tesztelni éles pénz nélkül. De nem bizonyított eredmény.

Sharpe-rátatúlillesztésbacktesztelésstatisztikai szignifikanciakvantitatív kutatás
← Összes bejegyzés