20 september 2026 · uitvoering

Je paperaccount wees de backtestfill af: een brief over exchangefilters

Je paperaccount wees de backtestfill af: een brief over exchangefilters

Je hebt een kleine cryptofuturesstrategie die in meerdere contracten handelt, en je hebt die net van backtesten naar papertrading overgezet. Bij de eerste herbalancering vraagt de strategie om 0.037 BTC. Je simulator accepteert die hoeveelheid; het handelsplatform wijst de order af omdat de hoeveelheidsstap van het contract 0.001 is en de afgeronde order onder de minimale notional uitkomt. Je positie blijft nul, terwijl de backtest een fill registreert.

Je kunt dat verschil makkelijk afdoen als een opmaakfout. Het kan ook veranderen welke assets je aanhoudt, wanneer je herbalanceert en hoeveel risico overblijft nadat een order is mislukt. Behandel de handelsfilters van elk platform als onderdeel van de uitvoeringsregels van je strategie en zorg dat je backtest en paperadapter dezelfde regels in dezelfde volgorde toepassen.

Welke exchangefilters kunnen een order ongeldig maken?

Begin met de instrumentmetadata die je order nodig heeft: de hoeveelheidstoename, minimale hoeveelheid, minimale notional, prijsstap en eventuele limieten voor ordergrootte of prijsbanden. De namen en reikwijdte verschillen per platform. Een spotpaar kan een ander minimum hebben dan het bijbehorende perpetual contract; een filter kan veranderen terwijl je strategie draait.

Neem een doelpositie ter waarde van $12 in een contract met een minimale orderwaarde van $10. Als de hoeveelheidstap je order afrondt naar $9.80, is de order ongeldig, ook al lag het niet-afgeronde doel boven het minimum. Omhoog afronden naar $10.20 kan de order geldig maken, maar je komt dan ook $0.20 boven het doel uit. Dat verschil kan aanzienlijk zijn wanneer de account klein is of de strategie in veel instrumenten handelt.

RegelWat de regel begrenstGevolg voor de backtest
HoeveelheidsstapToegestane wijzigingen in ordergrootteAfgeronde grootte wijkt af van het doel
Minimale hoeveelheid of notionalKleinste aanvaardbare orderSommige trades worden overgeslagen of moeten naar boven worden afgerond
PrijstickToegestane limiet- en triggerprijzenAfronding van de prijs verandert de kans dat de order wordt uitgevoerd
Prijsband of maximale grootteDoor het platform bepaalde grenzen voor orderveldenOrders kunnen worden afgewezen tijdens volatiele markten of grote herbalanceringen

Waar in het orderproces moet je afronden?

Rond de ordervelden af nadat je de gewenste positiewijziging hebt berekend en voordat je besluit de order in te dienen. Bewaar het niet-afgeronde doel voor analyse en leid daaruit een uitvoerbare order af op basis van de huidige positie, contractmultiplier en platformstappen. Bij een verkoophoeveelheidsstap van 0.001 wordt een gewenste verlaging van 0.0017, afhankelijk van je vastgelegde regel, afgerond naar 0.001 of 0.002. Die keuzes laten verschillende restposities achter; “afronden op de precisie” is dus geen volledig beleid.

Voor hoeveelheden voorkomt naar nul afronden dat je de blootstelling per ongeluk sterker vergroot dan de gevraagde wijziging, maar er kunnen kleine restposities overblijven die nooit worden verhandeld. Afronden naar het dichtstbijzijnde getal verkleint de gemiddelde fout, maar kan het doel overschrijden. Voor de minimale notional heb je een afzonderlijke keuze nodig: sla de trade over, bouw op tot de drempel is bereikt, of verhoog de omvang en accepteer de overschrijding. Wissel niet ongemerkt tussen deze opties.

Leg ook vast waarom een order niet is uitgevoerd. “Geen order: onder minimale notional” betekent iets anders dan “uitgevoerd tegen nul”. Bij een portefeuillerebalancering kan een overgeslagen order cash ongebruikt laten of blootstelling aan het oude asset behouden; registreer dat resultaat in de accountstatus.

Hoe houd je backtest- en paperuitvoering op één lijn?

Gebruik waar de systeemarchitectuur dat toelaat in beide processen dezelfde ordervalidatiefunctie. Geef die dezelfde instrumentregels die op dat moment golden, de gewenste order en de accountstatus. De functie moet een genormaliseerde order of een specifieke afwijsreden teruggeven. De simulator kan vervolgens zijn fillaannames toepassen op genormaliseerde orders, terwijl de paperadapter equivalente velden naar het platform stuurt.

Bewaar bij elke run een gedateerde momentopname van de filtermetadata. Als een hoeveelheidstoename of minimum verandert, moet je kunnen achterhalen welke regel de backtest heeft gebruikt. De metadata van vandaag ophalen om een strategie van een jaar geleden opnieuw af te spelen, kan oude orders ongeldig laten lijken of historische orders uitvoerbaar laten lijken terwijl dat niet zo was.

Vergelijk bij een afwijzing door het paperhandelsplatform de ingediende velden en de momentopname van de filters voordat je het signaal aanpast. Als de ordernormalisator van de backtest 0.037 BTC heeft opgeleverd terwijl het platform stappen van 0.001 BTC toestond, zit het verschil in de adapter of de metadata. Was de ingediende order geldig maar is die nooit uitgevoerd, dan kijk je naar uitvoeringsgedrag zoals prijs, liquiditeit of geldigheidsduur.

Wat moet je controleren voordat je de vergelijking vertrouwt?

Houd voor elke herbalancering een beknopt controlespoor bij: doelpositie, huidige positie, ruwe order, genormaliseerde order, toepasselijke filterversie en eindstatus. Vergelijk vervolgens de paper- en simulatielogboeken voor hetzelfde beslismoment.

Je strategie kan nog steeds deugen, ook als de eerste paperherbalancering mislukt. Maar zolang de simulator niet kan uitleggen waarom die order zou zijn geaccepteerd, afgerond, overgeslagen of afgewezen, beschrijft de aandelenlijn een ander uitvoeringssysteem dan het systeem dat je probeert te draaien.

exchangefilterspapertradingordergroottebacktestencryptofutures
← Alle artikelen