Klokken 00:05 UTC en tirsdag rangerte krypto-strategien vår på tvers av markeder 40 evigvarende kontrakter etter en kortsiktig trendindikator og tok likevektede posisjoner i de ti øverste. Backtesten viste et sunt gap mellom vinnerne og taperne. Så ba vi den handle for $250,000 i kapital, og den lovende kurven begynte å rakne.
Problemet lå ikke skjult i signalet. Det lå i rebalanseringen: ti kjøp, ti salg og noen kontrakter der den viste dybden så romslig ut helt til ordrene kom inn samtidig. Strategien hadde behandlet en porteføljeendring som en prisoppdatering. En handelsplass behandler den som en kø med faktiske ordrer.
Vi spilte av denne tirsdagen på nytt, steg for steg. Først måtte de gamle posisjonene reduseres. Deretter måtte de nye åpnes. Målvektene var enkle; veien dit var det ikke.
Åtte basispunkter per side kom fra ett enkelt anslag på gjennomsnittskostnaden. Det dekket handelsplassens gebyr og et lite påslag for slippage. Dermed fikk alle ordrene samme regning, enten det var en likvid kontrakt på et rolig tidspunkt eller en lite likvid kontrakt rett etter et kraftig volatilitetsutslag.
Vi begynte med den største ordren. Målet på $25,000 utgjorde 0.4% av dagsvolumet, et forholdstall som virket ubetydelig. Men dagsvolumet forteller deg ikke hva som er tilgjengelig i sekundene du trenger å handle. Det var lite dybde øverst i ordreboken, og spreaden økte raskt på de neste nivåene. Å krysse spreaden for hele beløpet ville ha spist seg gjennom flere prisnivåer. En limitordre ville bare spart spread hvis den ble fylt, og strategien hadde ingen garanti for å få fyllingen før neste beslutning.
Derfor delte vi ordren opp i fem bolker på $5,000. Det reduserte det umiddelbare avtrykket, men innførte en tidsplan og en markedsbane: hver bolk kunne komme inn til en annen pris, og en rask bevegelse kunne etterlate posisjonen halvveis bygget opp. Vi registrerte begge utfallene. Den opprinnelige backtesten hadde ikke registrert noen av dem.
Og dette var bare ett ben. Strategien solgte posisjoner som hadde falt ut av topp ti, samtidig som den kjøpte erstatninger. Nettoeksponeringen holdt seg nær målet, men brutto omsetning var nesten dobbelt så stor som den allokerte kapitalen. Hvis vi bare belaster kostnader på den endelige porteføljeendringen, overser vi handlene som måtte til for å komme dit.
| Utførelsesvalg | Hva det sparte | Hvilken risiko det innebar |
|---|---|---|
| Én markedsordre | Tid og usikkerhet rundt fullføring | Større forbruk av dybden i ordreboken på én gang |
| Fem markedsordrer i bolker | Mindre umiddelbart avtrykk | Prisbevegelse mellom bolkene |
| Limitordre | Mulighet for å betale mindre spread | Delvis fylling eller ingen fylling |
Den ettermiddagen erstattet vi det faste slippage-påslaget med en enkel deltakelsesmodell. Forventet påvirkning fra hver ordre økte med størrelsen relativt til nylig omsatt volum, og vi satte en grense for simulert deltakelse slik at en strategi ikke kunne stå for en urealistisk stor andel av markedet. Det var fortsatt en tilnærming: aggregert volum er ikke en live ordrekø, og en bar viser ikke alle prisene underveis. Men modellen tvang backtesten til å erkjenne at det samme signalet får ulike utførelseskostnader ved ulike størrelser.
I den reviderte kjøringen belastet vi også taker-gebyrer når ordren krysset spreaden, og maker-gebyrer bare når simuleringen faktisk forutsatte at en hvilende ordre ble fylt. Funding ble fortsatt behandlet som en separat kostnad ved å holde posisjonen; den hørte ikke hjemme i rebalanseringskostnaden. Da vi holdt disse postene atskilt, ble det tydelig hva som hadde gått galt. Strategien hadde ikke plutselig blitt dårligere til å forutsi. Omsetningen kostet for mye i forhold til forspranget den forutsa.
Ved ukeslutt hadde vi redusert rebalanseringsfrekvensen og utelukket kontrakter der tilgjengelig dybde gjorde målvekten urealistisk. Avkastningen i backtesten gikk ned. Forutsetningene om utførelse ble enklere å forklare, og det var et mer nyttig resultat enn et høyere tall.
Når du vurderer en porteføljestrategi, følg én rebalansering helt ned i detaljene: fra målvekter til enkeltordrer, fra ordrer til sannsynlige fyllinger og fra fyllinger til gebyrer og markedspåvirkning. Hvis dette forløpet mangler, beskriver egenkapitalkurven en portefølje som aldri måtte handle.
← Alle innlegg


