Förra månaden tog jag en funding-carry-körning i paper och beräknade Sharpe på tre sätt. Den dagliga överavkastningen var i genomsnitt 6.4 baspunkter, med en daglig standardavvikelse på 81 baspunkter. Gånger √252 blir det 1.25. Gånger √365 blir det 1.51. Sampla samma equity-kurva var femte minut och multiplicera med √(365×288), så säger noten 3.08. De två första talen är en kalenderfråga. Det tredje är vad våra research-agenter spottar ur sig när de annualiserar på datafilens frekvens i stället för på beslutets frekvens. Det är ingen Sharpe-kvot i någon mening jag skulle försvara.
Sharpe (ann.): 3.08. Femminutersavkastning, crypto_carry_v3.
Jag behåller 3.08. Det är den som behöver förklaras.
Varför dubblar en femminuters-Sharpe den dagliga?
Kvadratrotsregeln för tid är ett påstående om oberoende dragningar. Addera N i.i.d.-avkastningar så skalar medelvärdet med N, standardavvikelsen med √N, kvoten med √N. Femminuters kryptoavkastning är inte oberoende dragningar. Mittkursen studsar mot budet. En inaktuell mark tickar tillbaka. Funding ackumuleras inte i 288 oberoende skivor; den bokförs på klockslag. En bok som handlar klockan 16:00 UTC och sedan ligger stilla över natten fattade inte 287 andra beslut medan du sov.
När kortsiktig avkastning mean-reverterar, och mikrostrukturbrus mean-reverterar per konstruktion, får en mean-reversion-signal som samplas var femte minut också handla den studsen. Dagliga marks nettar ut den. De extra 1.57 i annualiserad Sharpe är ofta en oscillation på två baspunkter som aldrig överlevde en rundresa på åtta baspunkter. Du hittade inte mer edge. Du skar upp brus i fler bitar och multiplicerade sedan med 324.
Andrew Lo dokumenterade √N-felet 2002, för seriell korrelation i månatlig hedgefondavkastning. Annan marknad. Samma synd. Vi behandlar fortfarande √N som ett formateringsval.
252 eller 365 är den mindre striden
NAV för amerikanska aktier hoppar över helger och helgdagar, vilket ger ungefär 252 punkter om året. Krypto-perps printar på lördagar. Om du markerar en BTC-bok varje kalenderdag är lördagen ett verkligt P&L med verklig funding, och du har ungefär 365 avkastningar. Att använda 252 på den serien underskattar det annualiserade talet med ungefär 20 procent, eftersom √365/√252 är 1.20. Jag använder 365 för en 24/7-bok som markeras dagligen och 252 för en amerikansk aktiebok som markeras vid sessionsstängning. Jag skriver konstanten bredvid Sharpe.
Den skillnaden är verklig. Det är inte heller så 1.51 blev 3.08. Att jämföra en krypto-1.51 byggd på 365 med en aktie-1.51 byggd på 252 utan att konvertera är så pitch decks blir till. Konvertera båda till kalenderårets överavkastning över standardavvikelsen för kalenderårsavkastningar, från dagliga NAV, eller jämför dem inte.
Annualisera efter beslutsklockan
Om strategin kan handla var femte minut och faktiskt gör det, är femminutersavkastning den ärliga serien. Du bör ändå inte blint multiplicera med √105,120, eftersom de avkastningarna är seriellt korrelerade. Bygg ett dagligt NAV från femminutersboken, annualisera sedan den dagliga Sharpe med √365. Den dagliga marken bakar in studsen i samma tal du skulle läsa av ett paper-konto.
Om strategin handlar en gång om dagen, ge den inte en femminuters-Sharpe alls. Och sampla inte om en daglig strategi till minutbars så att equity-kurvan ser slätare ut. En kollega skickade mig en gång en sammetslen plot som var en daglig bok, forward-fillad till minuter. Affärerna hade inte ändrats. Sharpe från minutfilen var enorm. Jag tänker fortfarande på den kurvan när en agent säger att den kollade flera timeframes.
Vad som hör hemma på research-noten
En Sharpe är en egenskap hos en avkastningsserie, inte en egenskap hos en strategi. Noten måste säga vilken serie.
| Konvention | Multiplikator | Ärlig när |
|---|---|---|
| Daglig × √252 | 15.87 | Amerikanska aktier, sessions-NAV, helger är inte avkastning |
| Daglig × √365 | 19.10 | Krypto (eller vilken 24/7-bok som helst) markerad varje kalenderdag |
| Timvis × √(365×24) | 93.6 | Varje timme är ett oberoende beslut, och du tror fortfarande på √N |
| 5-minuters × √(365×288) | 324.3 | Nästan aldrig, för en strategi som inte handlar 288 gånger om dagen |
Jag vill ha tre saker bredvid varje Sharpe vi skriver ut: avkastningsfrekvensen, annualiseringskonstanten och om helgmarks ingår i urvalet. Om en agent utelämnar dem kastar jag talet och räknar om från det dagliga NAV.
Paper trading avgör saken på ett tråkigt sätt. Markera paper-kontot klockan 00:00 UTC. Annualisera den serien med antalet marks under året. Om backtestet bara stämmer efter att du ändrar √N tittade du aldrig på strategin.
← Alla inlägg


