19 oktober 2026 · uitvoering

De herbalancering leek goedkoop totdat we de spread meetelden

De herbalancering leek goedkoop totdat we de spread meetelden

Om 09:00 UTC wilde onze cross-sectionele strategie voor crypto-futures $200,000 verdelen over tien perpetual-contracten. De backtest rapporteerde 4 basispunten aan handelskosten. De paper run, met hetzelfde signaal en dezelfde venue-feecategorie, kwam uit op iets meer dan 20.

Er was niets mis met het kostenoverzicht. We hadden de fee geteld en dat uitvoeringskosten genoemd. Die fout bleef onopgemerkt omdat de strategie in liquide markten handelde, bescheiden orders gebruikte en maar één keer per dag posities wijzigde. Elk van die kenmerken klonk geruststellend, totdat we ons afvroegen tegen welke prijs de orders werkelijk konden worden uitgevoerd.

Deze herbalancering was nuttig om uit elkaar te halen. Ze liet zien hoe een backtest met lage fees de kosten toch kan onderschatten door de marktprijs te behandelen alsof die in onbeperkte hoeveelheden beschikbaar is.

We begonnen met de orderlijst. De strategie was long in de vijf sterkste contracten en short in de vijf zwakste, met gelijke dollarwegingen. Voor de meeste posities was een aanpassing van ongeveer $20,000 nodig. Bij één contract was dat slechts $3,400; bij een ander $31,000. De backtest waardeerde elke transactie tegen de slotkoers van de bar en rekende vervolgens aan elke kant de taker-fee van 2 basispunten van de venue aan.

KostencomponentAanname backtestRaming paper run
Venue-fee, per kant2 bp2 bp
Spread, per kant0 bpOngeveer 4 bp
Impact en vertraging, per kant0 bpOngeveer 4 bp
Geschatte roundtrip4 bpOngeveer 20 bp

De raming van de paper run was geen garantie op uitvoering. Het was een kostenmodel: de waargenomen spread rond het beslismoment, plus een impactraming op basis van de ordergrootte en het recente handelsvolume, met een kleine opslag voor de tijd die nodig was om de order in te dienen en uit te voeren. Die laatste opslag was bewust grof. Een model dat onzekerheid laat verdwijnen, stelt meer gerust dan het oplevert.

We controleerden eerst de spread. Het signaal werd berekend op basis van een voltooide bar van 1 minuut, dus kon de strategie pas een order indienen nadat die bar was gesloten. Voor elk contract namen we de beste bid en ask die beschikbaar waren op het moment dat de order de venue zou bereiken. De midprijs was een referentie, geen uitvoerbare prijs. Een koop begint bij de ask; een verkoop bij de bid.

Dat verschil alleen al verklaarde voor de gemiddelde naam ongeveer 8 basispunten roundtrip. Het verschilde per contract en per minuut. Voor het meest liquide contract was het dichter bij 2 bp per kant. Bij een minder liquide contract liep het op tot 9. Eén spreadwaarde op elke order toepassen zou precies de variatie hebben verhuld die we moesten zien.

Daarna kwam de omvang. Een marktkooporder van $20,000 kan vaak de beste ask nemen zonder veel diepte op te gebruiken, maar dat hangt af van het orderboek op dat moment. We raamden de impact door de zichtbare niveaus in de snapshot af te lopen: hoeveel quote-waarde er op elke prijs stond en welke volumegewogen gemiddelde prijs zou volgen als we genoeg niveaus gebruikten om de order uit te voeren. Voor de aanpassing van $31,000 wees de snapshot op ongeveer 6 bp extra kosten ten opzichte van de midprijs. De order van $3,400 veranderde de raming nauwelijks.

Ook de snapshot zelf was onvolmaakt. Die toonde de weergegeven diepte, niet de verborgen liquiditeit of wat er nog zou staan wanneer onze order aankwam. Crypto-orderboeken kunnen veranderen tussen observatie en indiening; met schaars bemonsterde snapshots kan een backtest die wachtrij niet precies reconstrueren. We gebruikten het orderboek om een plausibele kostenbandbreedte vast te stellen en vergeleken die vervolgens met paper fills om te zien of de raming stelselmatig te optimistisch was.

Bij een marktorder is de midprijs een meetlat. Het is niet de prijs waartegen je kocht of verkocht.

We voerden de herbalancering door met drie aannames. De spread nemen maar de diepte negeren gaf een roundtripraming van 12 bp. Het zichtbare orderboek aflopen bracht die op 18 bp. Met de venue-fees erbij en een opslag van 2 bp per kant voor vertraging kwam de raming uit op ongeveer 22 bp. Het precieze cijfer hing af van de orderlijst en de orderboeksnapshot; de richting niet.

Dat was geen reden om de strategie op te geven. Het was een reden om de backtest opnieuw uit te voeren met kosten die reageren op de transacties die de strategie voorstelt. We voegden spread- en impactramingen per order toe, hielden de fees apart in het rapport en registreerden bij elke gesimuleerde uitvoering de benchmark, het tijdstip en de veronderstelde uitvoeringsmethode.

In de volgende paper run werd de order van één contract opgesplitst in kleinere delen, omdat het eerste deel meer diepte verbruikte dan verwacht. Het signaal van de strategie veranderde niet. De uitvoering wel, en dat was genoeg om de kostentoerekening te veranderen.

Als je backtest zegt dat een herbalancering alleen de fee kost, vraag dan om bij elke uitvoering de prijs, omvang en beschikbare liquiditeit te tonen. Een overtuigend antwoord begint met die bijzonderheden, niet met één getal met het label ‘slippage’.

marktimpactbid-askspreadbacktestenportefeuilleherwegingcrypto-futures
← Alle artikelen