Kl. 09:00 UTC ville vår krypto futuresstrategi med tvärsnittsurval omfördela $200,000 mellan tio eviga kontrakt. Backtestet rapporterade 4 baspunkter i handelskostnader. Papperskörningen, med samma signal och avgiftsnivå på handelsplatsen, uppskattade kostnaden till lite över 20.
Det var inget fel på avgiftsschemat. Vi hade räknat med avgiften och kallat den handelskostnad. Misstaget levde kvar eftersom strategin handlade på likvida marknader, använde måttliga order och bara omsatte portföljen en gång om dagen. Var och en av de formuleringarna lät lugnande ända tills vi frågade vilket pris orderna faktiskt kunde få.
Ombalanseringen var värd att granska närmare. Den visade hur ett backtest med låga avgifter ändå kan underskatta kostnaderna genom att behandla marknadspriset som om det gick att handla obegränsade volymer till det priset.
Vi började med orderlistan. Strategin var lång i de fem starkaste kontrakten och kort i de fem svagaste, med lika stora dollarvikter. De flesta positionerna behövde justeras med ungefär $20,000. Ett kontrakt behövde bara $3,400 i justering, ett annat $31,000. Backtestet värderade varje affär till stapelns stängningskurs och lade sedan på handelsplatsens takeravgift på 2 baspunkter per sida.
| Kostnadskomponent | Antagande i backtestet | Uppskattning från papperskörningen |
|---|---|---|
| Avgift på handelsplatsen, per sida | 2 bp | 2 bp |
| Spread, per sida | 0 bp | Cirka 4 bp |
| Marknadspåverkan och fördröjning, per sida | 0 bp | Cirka 4 bp |
| Uppskattad kostnad tur och retur | 4 bp | Cirka 20 bp |
Uppskattningen från papperskörningen var inget löfte om ett avslut. Det var en kostnadsmodell: den observerade spreaden kring beslutstidpunkten, plus en uppskattning av marknadspåverkan utifrån orderstorlek och nyligen omsatt volym, med ett litet påslag för tiden det tar att skicka och genomföra ordern. Det sista påslaget var avsiktligt grovt. En modell som får osäkerheten att försvinna känns tryggare än den är användbar.
Vi började med att kontrollera spreaden. Signalen beräknades utifrån en avslutad 1-minutsstapel, så strategin kunde skicka ordern först när stapeln hade stängt. För varje kontrakt tog vi den bästa köp- och säljkurs som fanns tillgänglig när ordern skulle ha nått handelsplatsen. Mittkursen var ett jämförelsevärde, inte ett pris som gick att handla till. Ett köp börjar på säljkursen; en försäljning börjar på köpkursen.
Bara den skillnaden förklarade cirka 8 baspunkter tur och retur för den genomsnittliga tillgången. Den varierade mellan kontrakt och minuter. Det mest likvida kontraktet låg närmare 2 bp per sida. För ett mindre likvidt kontrakt vidgades spreaden till 9. Om vi hade använt samma spread för alla order skulle vi ha dolt just den variation vi behövde se.
Sedan kom orderstorleken. Ett marknadsköp på $20,000 kan ofta ta den bästa säljkursen utan att förbruka särskilt mycket av orderdjupet, men ”ofta” beror på orderboken just då. Vi uppskattade marknadspåverkan genom att gå igenom de synliga nivåerna i ögonblicksbilden: hur stort värde i noteringsvalutan som fanns på varje prisnivå och vilket volymvägt genomsnittspris som skulle uppstå om vi tog tillräckligt många nivåer för att fylla ordern. För justeringen på $31,000 antydde ögonblicksbilden en extra kostnad på cirka 6 bp jämfört med mittkursen. Ordern på $3,400 påverkade knappt uppskattningen.
Även ögonblicksbilden var ofullständig. Den visade det synliga orderdjupet, inte dold likviditet eller vad som skulle finnas kvar när vår order kom fram. Kryptoböcker kan förändras mellan observation och inskickning; ett backtest byggt på glesa ögonblicksbilder kan inte återskapa kön exakt. Vi använde orderboken för att ringa in en rimlig kostnad och jämförde sedan med papperskörningens avslut för att se om uppskattningen systematiskt var för optimistisk.
För en marknadsorder är mittkursen ett mått att jämföra med. Det är inte priset du köpte eller sålde till.
Vi körde ombalanseringen med tre olika antaganden. Om vi tog spreaden men bortsåg från orderdjupet blev den uppskattade kostnaden 12 bp tur och retur. När vi gick igenom den synliga orderboken steg den till 18 bp. Med handelsplatsens avgifter och ett påslag på 2 bp per sida för fördröjning blev uppskattningen cirka 22 bp. Den exakta siffran berodde på orderlistan och ögonblicksbilden av orderboken; riktningen gjorde det inte.
Det var ingen anledning att överge strategin. Det var en anledning att köra om backtestet med kostnader som anpassas efter de föreslagna affärerna. Vi lade till uppskattningar av spread och marknadspåverkan för varje order, redovisade avgifterna separat och noterade jämförelsevärde, tidsstämpel och antagen exekveringsmetod bredvid varje simulerat avslut.
I nästa papperskörning delades en order i ett kontrakt upp i mindre delar eftersom den första delen förbrukade mer av orderdjupet än väntat. Strategins signal ändrades inte. Exekveringen gjorde det, och det räckte för att ändra kostnadsfördelningen.
Om ditt backtest säger att en ombalansering bara kostar avgiften, be det visa priset, storleken och den tillgängliga likviditeten bakom varje avslut. Ett övertygande svar börjar med de uppgifterna, inte med en enda siffra märkt ”slippage”.
← Alla inlägg


