Du sendte meg egenkapitalkurven og handelsloggen og spurte om det er for godt til å være sant. Kort svar: Det er verken åpenbart ekte eller åpenbart falskt, og du kan finne ut hva det er på omtrent en dags arbeid. Her kommer det lange svaret, for diagnosen er viktigere enn konklusjonen.
Dette har du: et 15-minutters mean-reversion-signal på BTCUSDT- og ETHUSDT-perps på Binance, z-score for prisen mot et gjennomsnitt over 96 barer, selg på toppene og kjøp på bunnene, hold i 2-8 barer. Backtesten dekker perioden fra feb. 2024 til jun. 2026. Sharpe 2.9 etter gebyrer ifølge gebyrmodellen din. Da du fordelte P&L etter minutt på døgnet, viste det seg at 71% kom i de tre femtenminuttersintervallene som omfatter 00:00, 08:00 og 16:00 UTC.
Du vet allerede hvorfor det er mistenkelig. La meg forklare hvorfor det også delvis ikke er det.
Fundingklokken er reell og flytter faktisk prisen
Binance gjør opp funding for perpetual-kontrakter kl. 00:00, 08:00 og 16:00 UTC. Hver posisjon som er åpen på oppgjørstidspunktet, betaler eller mottar funding. Dette er en fast, planlagt og allment kjent kontantstrøm, og den skaper reell ordreflyt rundt tidspunktet — ikke en dataartefakt, men noe tradere faktisk gjør.
Ordreflyten har et mønster. I løpet av de ti til tretti minuttene før oppgjøret stenges eller sikres posisjoner som ikke vil betale. Hvis funding ligger på +0.04% for intervallet, vil en long som uansett har tenkt å gå ut, gå ut før oppgjøret i stedet for etter, mens en basis-trader som er short perp, gjerne holder gjennom. Det gir et asymmetrisk press med en tidsfrist. Så, rett etter oppgjøret, kommer noe av denne flyten tilbake — long-posisjonene som ville unngå funding, går inn igjen — og du får en delvis reversering.
Et mean-reversion-signal som utløses kl. 23:52 og går ut kl. 00:12, står altså akkurat der en forutsigbar likviditetshendelse finner sted. Noe av fordelen din skyldes sannsynligvis reverseringen etter et mekanisk press styrt av kalenderen. Dette er et reelt markedsmikrostrukturfenomen, og det har vært reelt i årevis.
Men før jeg ville tro på et tall så stort som ditt, ville jeg gjerne vite dette.
Seks ting du bør sjekke, i den rekkefølgen jeg ville sjekket dem
Begynn med de enkleste, for de fleste av disse strategiene ryker på sjekk to eller tre.
- Er funding-P&L telt dobbelt? Hvis fill-motoren din belaster åpne posisjoner med funding og prisserien din er en markprisserie, ikke en serie med siste omsatte pris, kan det hende du betaler eller tjener funding to ganger — én gang eksplisitt og én gang gjennom markprisens konvergensatferd. Skriv ut den rå fundingkontantstrømmen per handel, og sammenlign ti av dem med historiske fundingdata fra børsens endepunkt.
- Hvilket tidsstempel har fundingraden? Historikken for fundingrater hos Binance returnerer en fundingTime som angir oppgjørstidspunktet. Enkelte leverandører stempler den samme raden ved starten av intervallet den gjelder for. Hvis din er forskjøvet med åtte timer, har du handlet på et signal som kjenner framtiden. Dette er den vanligste måten jeg har sett en falsk fundingfordel oppstå på, og den gir nøyaktig ditt P&L-mønster — konsentrert rundt oppgjørsbarene, riktig fortegn, fantastisk.
- Hva skjer med spreaden kl. 00:00:00? Hent ordreboken, ikke kline-dataene. På en 1-minuttsbar er spreaden usynlig; sekundene rundt oppgjøret kan den bli 3-5 ganger større på en mellomstor handelsplattform. Hvis fillene dine modelleres til midtpris eller sluttkurs, høster du en spread som ikke fantes.
- Fungerer den fortsatt bare på de to andre oppgjørstidspunktene? Del opp de tre vinduene. Kl. 00:00 UTC har en annen ordreflyt enn kl. 08:00 (omtrent ved åpningen i Asia) og 16:00 (ettermiddagen i USA). Hvis alle pengene kommer fra ett av de tre vinduene, har du omtrent 300 hendelser, ikke 900, og Sharpe-ratioen bør beregnes på nytt ut fra det.
- Fungerer den på en handelsplattform med en annen klokke? Dette er den gode testen. Kjør det identiske signalet på en plattform der funding gjøres opp hver time eller etter en annen tidsplan. Hvis effekten skyldes funding, bør den følge klokken til den plattformen. Hvis signalet fortsatt utløses kl. 00:00 UTC på en plattform som ikke gjør opp funding kl. 00:00 UTC, har du funnet et midnattsartefakt i datapipelinen, ikke en fundingeffekt.
- Hvor mye av P&L-en kommer i de første og siste 90 sekundene? Hvis hele fordelen ligger i et vindu på under to minutter, er 15-minuttersbarene dine altfor grove til å gi et ærlig bilde av inngangsprisen. Du bør anta at fillen du modellerer, er den beste som var tilgjengelig i vinduet, ikke den du faktisk ville fått.
Sjekk fem er den jeg ville tatt først hvis jeg bare hadde en time. Det er et rent naturlig eksperiment og krever ikke ny infrastruktur utover en annen datakilde.
Hva oppgjørsvinduet faktisk koster deg
La oss anta at effekten er reell og at du består alle seks sjekkene. Da må du beregne kostnadene ordentlig, for handelen du modellerer, er ikke den handelen du ville fått.
Her er en sammenligning av en tur-retur-handel på 20 minutter i en rolig time og en som går over et oppgjørstidspunkt, på en USDⓈ-M-perp med taker-inngang og taker-utgang, for en ordre på $50k:
| Rolig time (f.eks. 03:20 UTC) | Går over kl. 00:00 UTC | |
|---|---|---|
| Taker-gebyr, tur-retur | 0.09% | 0.09% |
| Typisk betalt spread | ~0.4 bp | 1.5-3 bp |
| Slippage for en ordre på $50k | ~0.5 bp | 2-6 bp |
| Betalt/mottatt funding | 0 | ±1 til ±4 bp (hele intervallet) |
| Realistisk totalkostnad | ~10 bp | 13-19 bp før funding |
Fundingraden er interessant, og det er derfor jeg stadig vender tilbake til sjekk én. Hvis du holder posisjonen gjennom oppgjøret, får du hele fundingbeløpet for intervallet, uansett hvor lenge du har holdt. Tolv sekunders eksponering kl. 23:59:54 koster deg funding for hele åtte timer. En strategi med en gjennomsnittlig holdetid på 20 minutter som krysser oppgjørstidspunktet, betaler carry for åtte timer på en handel på tjue minutter. Gebyrmodellen din må belaste dette slik, ikke fordele det proporsjonalt med tiden.
En beslektet felle: Hvis du unngår å holde gjennom oppgjøret — går ut kl. 23:58 og inn igjen kl. 00:02 — har du doblet antallet gebyrer, og strategien din bygger nå på at to ekstra taker-handler koster mindre enn én fundingbetaling. Noen ganger stemmer det. Regn det ut eksplisitt i stedet for å la backtesten avgjøre det for deg.
Regimespørsmålet du ennå ikke har stilt
Utvalget ditt går fra feb. 2024 til jun. 2026. Funding var ikke i samme regime gjennom hele perioden. I lange strekk lå 8-timersraten fast på gulvet på 0.01%, og ingen hadde grunn til å endre posisjonene sine rundt oppgjøret. Andre uker lå den på 0.05%+ i flere dager, og ordreflyten før oppgjøret var voldsom.
Fordel P&L-en etter den rådende fundingraten på handelstidspunktet — for eksempel i fire grupper etter absoluttverdien av raten. Hvis fordelen skyldes fundingflyt, bør den øke omtrent monotont med |funding|. Nær null funding, nær null fordel; høy funding, stor fordel. Hvis resultatet i stedet er flatt på tvers av gruppene, eller enda verre, konsentrert i gruppen med lav funding, er fundingen en forklaring du har lagt på noe annet.
Jeg liker denne testen fordi den gir en etterprøvbar prediksjon som følger av din egen forklaring. Du spør ikke «fungerer den fortsatt» — du spør «fungerer den av grunnen jeg hevdet».
Dette ville jeg faktisk gjort
Hvis den består testen: gjør den mindre. Den ærlige versjonen av strategien er ikke 900 handler i året på et 15-minutters rutenett. Det er noen hundre nøye utvalgte hendelser, med inngangslogikk spesifisert ned til sekundet og en fillmodell basert på øyeblikksbilder av ordreboken, ikke kline-data. Da sitter du igjen med noe mindre, mindre pent og lettere å forsvare. Det er også den versjonen som kan ha en sjanse til å holde i paper trading, det eneste stedet du finner ut om fillene du har forutsatt, faktisk finnes.
Hvis den stryker på sjekk to — tidsstempelforskyvningen — ikke bli altfor irritert. Alle går i den fella minst én gang. Og det er verdt å lese datalasteren nøye i stedet for å lappe på tidsforskyvningen, for hvis funding er forskjøvet, er det en god sjanse for at open interest også er det. Det vil du vite før neste idé.
En ting til, og dette er det folk hopper over. Uansett hva du finner, skriv ned de seks sjekkene og resultatene ved siden av strategien. Om seks måneder kommer du eller noen andre til å lage et strukturelt identisk signal, få den samme vakre kurven og starte den samme diskusjonen fra grunnen av. Diagnosen er den varige verdien her. Det er ikke sikkert strategien er det.
← Alle innlegg
