TWAP versus VWAP versus POV: een executiebenchmark kiezen (en weten wanneer elk je voorliegt)
Elke executiescheduler is een weddenschap op een volumeprognose. TWAP wedt dat liquiditeit vlak is in de tijd. VWAP wedt dat de volumecurve van vandaag op die van gisteren lijkt. POV wedt dat het volume dat nu op de tape verschijnt een goede reden is om nu te handelen — inclusief het deel van de tape dat jijzelf bent. Geen van deze weddenschappen wordt als zodanig benoemd in de leveranciersdocumentatie, en dat is waarom de meeste vergelijkingen van de drie lezen als een featuretabel: TWAP is "eenvoudig," VWAP is "slim," POV is "adaptief." Die framing vertelt je niets over welke je geld kost, wanneer, en hoeveel.
Dit is deel 2 van een reeks die we begonnen in Ordertypes in algoritmische trading, waar we speelgoed-TWAP- en VWAP-executors bouwden in elk ~40 regels Python. Die executors voldoen prima als loodgieterswerk. Dit artikel gaat over alles wat dat loodgieterswerk verbergt: de impliciete aannames, de benchmark-politiek, en een reproduceerbaar head-to-head experiment op gerepliceerde orderboekdata dat laat zien dat de drie algoritmes geen "verschillende smaken" zijn — het zijn verschillende risicoprofielen met verschillende faalmodi.
Drie schedulers, drie verborgen weddenschappen
Vastleggen van notatie. Een parent order van omvang moet worden uitgevoerd over horizon , opgedeeld in intervallen. Laat de child-hoeveelheid in interval zijn, het marktvolume in interval , en de gemiddelde prijs in interval . De markt-VWAP over de horizon is
TWAP handelt : gelijke hoeveelheden in gelijke tijd. De impliciete aanname is dat liquiditeit — diepte, spread, volume — uniform is in de tijd, zodat gelijke plakjes gelijke impact veroorzaken. Dat is onwaar in elke markt die ooit heeft bestaan, maar het faalt gracieus: het schema is deterministisch, voltooiing is gegarandeerd door constructie, en het worstcasescenario is dat je een vaste clip in een dun uur handelt en daarvoor bredere spreads betaalt. De tweede, minder besproken aanname is dat niemand kijkt. Een TWAP die elke 60 seconden op :00 een child order afvuurt is een metronoom, en metronomen worden front-run. Elke serieuze TWAP randomiseert de timing en omvang van children; het schema moet een Poisson-achtig proces zijn waarvan de verwachting vlak is, geen klok.
VWAP handelt , waarbij het voorspelde aandeel is van het dagvolume in interval , . De weddenschap is nu expliciet: je hanteert een curve geschat uit historische data, en je neemt aan dat vandaag deze curve volgt. De aanname is niet dat volume vlak is, maar dat het voorspelbaar en exogeen is — de curve trekt zich niets aan van of jij handelt. Wanneer de prognose goed is, concentreert VWAP je handel daar waar de markt het kan absorberen en is je slippage ten opzichte van markt-VWAP bijna tautologisch klein. Wanneer de prognose slecht is — een ongepland nieuwsevent verplaatst 40% van het dagvolume naar een uur waar je curve 6% aan toekende — blijft VWAP sereen het verouderde schema volgen en eet jij het verschil op. VWAP zet executierisico om in volumeprognoserisico. Dat is de hele afweging, en het is waarom het interessante engineeringwerk in een VWAP-engine de forecaster is, niet de slicer.
POV (percentage of volume, ook wel "participatie") laat de prognose los: handel , een vaste fractie van het waargenomen volume in elk interval. Dit lijkt VWAP te overtroeven — waarom volume voorspellen als je het gewoon kunt volgen? Het addertje onder het gras is dat het signaal nu endogeen is. Jouw eigen fills verschijnen op de tape. Als de rest van de markt handelt in een interval en jij mikt op fractie van het totale tape-volume, dan lost jouw hoeveelheid op, oftewel
Bij is die correctie mild (11,1% van het volume van anderen). Bij handel je 33% van de rest van de flow van iedereen; bij evenaar je de gehele rest van de markt één-op-één en divergeert het fixed point. POV laat ook de ene garantie los die zowel TWAP als VWAP bieden: er is geen voltooiingstijd. Als volume opdroogt, doet je schema dat ook. We komen hieronder terug op de pathologieën van POV, want die verdienen hun eigen sectie.
Nog één framing die later van belang is: geen van deze drie is "optimaal" in enige formele zin. De scheduler die daadwerkelijk een kosten-risico-doelfunctie minimaliseert is de Almgren-Chriss-familie (Almgren and Chriss, 2000, "Optimal Execution of Portfolio Transactions," Journal of Risk 3, 5–39), die we grondig behandelen in Almgren-Chriss en de theorie van optimale executieschema's. TWAP is het speciale geval van Almgren-Chriss met nul risicoaversie onder lineaire impact; VWAP is de minimum-tracking-error-strategie tegen een volumegewogen benchmark (Konishi, 2002, "Optimal slice of a VWAP trade," Journal of Financial Markets 5(2)); POV is een heuristiek die met geen enkele doelfunctie correspondeert, wat precies is waarom de faalmodi ervan zo eigenaardig zijn.
Volumecurves schatten wanneer de markt nooit sluit
De aandelenliteratuur had het makkelijk. Intraday volume in aandelen heeft een U-vorm — zwaar bij de opening, stil rond de lunch, zwaar richting de close — gedocumenteerd sinds Jain and Joh (1988, "The Dependence between Hourly Prices and Trading Volume," JFQA 23(3)) en van theoretische onderbouwing voorzien door Admati and Pfleiderer (1988, "A Theory of Intraday Patterns: Volume and Price Variability," Review of Financial Studies 1(1)), die aantoonden dat discretionaire liquiditeitshandelaren en geïnformeerde handelaren zich endogeen in de tijd clusteren. De U-vorm wordt verankerd door twee harde events, de openings- en sluitingsveiling, dus de curve is stabiel en een voortschrijdend gemiddelde van 20 dagen aan intervalvolumeaandelen brengt je 90% van de weg.
Crypto heeft geen open en geen close, dus de naïeve gedachte is dat volume vlak zou moeten zijn en TWAP ≈ VWAP. Die naïeve gedachte is onjuist. Intraday cryptovolume heeft wel degelijk structuur — die is alleen verankerd aan andere klokken:
Sessie-effecten. Volume volgt de wakkere uren van de mensen en desks die het verhandelen. Bij BTC- en ETH-hoofdparen is de zwaarste band de Amerikaanse namiddag die overlapt met de Europese avond (ruwweg 13:00–21:00 UTC), met een secundaire Aziatische plateau rond 00:00–08:00 UTC en een uitgesproken dal rond 04:00–06:00 UTC bij de hoofdparen. Altcoin-paren met geconcentreerd regionaal eigenaarschap hellen sterker naar hun thuissessie.
Funding-tijdstempels. Perpetual futures verrekenen funding op vaste UTC-tijden — historisch elke 8 uur om 00:00, 08:00, 16:00 UTC, waarbij Binance en anderen sinds 2025–2026 veel contracten overzetten naar 4-uurs- en zelfs 1-uurs-verrekeningscycli. De minuten rond de verrekening laten betrouwbaar verhoogd volume zien: basis-traders openen en sluiten carry-posities, en iedereen die de funding-snapshot probeert te gamen handelt precies op de grens. Dit zijn pieken, geen plateaus — een curve met buckets van 30 minuten ziet ze; een curve met buckets van 2 uur middelt ze weg en jouw VWAP participeert dan te weinig precies wanneer de liquiditeit het best is.
Wekelijkse seizoensinvloed. Weekendvolume bij hoofdparen ligt structureel onder het volume doordeweeks, en zondagavond UTC (maandagochtend Azië, plus de CME-heropening voor BTC-futures) heeft zijn eigen signatuur. Eén enkele tijd-van-de-dag-curve, gepoold over alle dagen, is verkeerd gespecificeerd; je wilt een grid van dag-van-de-week × tijd-van-de-dag.
Geplande events. Deribit-opties lopen af om 08:00 UTC (vrijdagen, met kwartaalclusters), Amerikaanse macrocijfers verschijnen om 12:30/14:00 UTC, CME-verrekeningen zijn relevant voor basis-flows. Dit zijn kalenderkenmerken, geen seizoensinvloed — behandel ze als dummies, niet door de basiscurve ermee te vervuilen.
Een bruikbare schatter, in de geest van de forecaster eerlijk houden voordat je hem slim maakt:
import pandas as pd
def volume_curve(trades: pd.DataFrame, bucket="30min") -> pd.Series:
"""day-of-week x time-of-day volume shares from a trades tape."""
v = trades["qty"].resample(bucket).sum()
day_total = v.groupby(v.index.date).transform("sum")
share = v / day_total # fraction of that day's volume
key = [v.index.dayofweek, v.index.time]
curve = share.groupby(key).median()
return curve / curve.groupby(level=0).transform("sum") # renormalize per day
Mediaan boven gemiddelde is geen stilistische keuze. Cryptovolume heeft extreem dikke staarten; één enkele liquidatiecascade kan 15% van het dagvolume zijn in 10 minuten, en een op gemiddelde gebaseerde curve zal voor altijd daarna een piek in die bucket verwachten. De aandelenliteratuur ging verder dan statische curves: Białkowski, Darolles and Le Fol (2008, "Improving VWAP strategies: A dynamic volume approach," Journal of Banking & Finance 32(9), 1709–1722) ontleden intervalvolume in een gemeenschappelijke marktcomponent en een aandeelspecifieke component gemodelleerd met ARMA/SETAR-dynamiek, en laten zien dat de decompositie het VWAP-trackingrisico materieel verlaagt ten opzichte van een statische klassieke curve. De crypto-vertaling is direct: schat een marktbrede curve uit de top-N paren (de gemeenschappelijke factor is sterk — funding-klokken en sessies zijn gedeeld), en modelleer vervolgens de afwijking van jouw paar als een mean-reverting intraday-proces dat je real-time bijwerkt. Recenter laat Genet (2025, "Deep Learning for VWAP Execution in Crypto Markets: Beyond the Volume Curve," arXiv:2502.13722) zien dat geleerde end-to-end-schema's statische-curve-VWAP verslaan op Binance-data — bewijs dat in crypto de volumecurve de zwakste schakel van de pipeline is, niet het slicen.
De operationele samenvatting: een statische alle-dagen-curve is een stroman-VWAP. Als jouw vergelijking laat zien dat "VWAP TWAP in crypto amper verslaat," controleer dan of de VWAP werd gevoed met een curve die daadwerkelijk de funding-pieken en de doordeweeks/weekend-splitsing bevat voordat je iets concludeert.

POV-pathologieën: het algoritme dat zijn eigen staart achterna jaagt
De pitch van POV is adaptiviteit: handel wanneer de markt handelt. Drie afzonderlijke pathologieën ondermijnen dat.
1. De feedbackloop. De endogeniteit hierboven is niet slechts een boekhoudkundige correctie. Jouw child orders creëren volume; volume verhoogt jouw target; jouw target creëert volume. Bij gematigde is het fixed point stabiel, maar de gemeten participatie die jouw post-trade rapport toont ( van het totale tape-volume) onderschat jouw voetafdruk ten opzichte van wat de markt zonder jou zou zijn geweest ( van iedereen anders). Erger nog, tweede-orde-feedback bestaat: jouw fills bewegen de prijs, prijsbeweging trekt momentum-flow aan en triggert stops, die flow verhoogt het tape-volume, en jouw POV-engine leest het volume dat het zelf veroorzaakte als een uitnodiging om te versnellen. Dit is exact achterstevoren ten opzichte van optimaal gedrag — impact-bewuste schedulers (Almgren-Chriss met redelijke parameters, en empirische impactschattingen zoals Almgren, Thum, Hauptmann and Li, 2005, "Direct Estimation of Equity Market Impact," Risk 18(7)) willen dat je vertraagt nadat je de prijs hebt verlegd, niet versnelt. Een liquidatiecascade is het pathologische grensgeval: enorm tape-volume, eenzijdig boek, en een vanilla-POV koopt het hardst in de top van de squeeze omdat daar de prints zijn.
2. Gegamed worden. Een POV-algo is een volume-getriggerde orderflowmachine, en alles wat getriggerd wordt is te lokken. Een predator die vermoedt dat er een grote participatiekoper actief is kan volume printen — self-crossing waar regels dat toelaten, of gewoon actief handelen in kleine omvang — om de POV-engine naar voren te trekken, en vervolgens liquiditeit leveren tegen opgehoogde prijzen. Dit is een kleinschalige instantie van het algemene mechanisme in Brunnermeier and Pedersen (2005, "Predatory Trading," Journal of Finance 60(4)): wanneer jouw toekomstige vraag voorspelbaar is uit jouw gedrag in het verleden, handelen anderen erop vooruit en is het prijspad dat je tegenkomt slechter dan het pad dat je voorspelde. TWAP lekt een schema in de tijd; POV lekt een responsfunctie, wat gevaarlijker is omdat de tegenpartij die op aanvraag kan aanroepen.
3. De staart die nooit afmaakt. POV heeft geen klok. Als je vóór 16:00 UTC 500 BTC moet kopen en het volume droogt om 14:00 op, dan zit een pure POV te wachten — het is per ontwerp niet in staat om op eigen kracht af te ronden. Elke productie-POV draagt daarom een minimumtempo-vloer en een inhaalmodus, en de inhaalmodus is waar de verliezen zich verstoppen: je besteedt de dag aan passief handelen op 10% participatie, en jaagt vervolgens de resterende 30% van de parent door een dun sluitingsvenster met een effectieve participatie van driemaal je target. Het post-trade gemiddelde ziet er prima uit; de marginale kosten van de laatste tranche zijn brutaal. Als jouw POV-rapporten de staart niet apart uitsplitsen, heb je de echte kosten ervan nooit gezien.
def pov_child_qty(tape_vol: float, gamma: float, remaining: float,
t_left_s: float, min_rate: float) -> float:
target = gamma / (1.0 - gamma) * tape_vol # exclude our own prints
floor = remaining / max(t_left_s, 1.0) * CHILD_INTERVAL_S
if t_left_s < CATCHUP_HORIZON_S: # deadline dominates
floor = max(floor, remaining * CHILD_INTERVAL_S / t_left_s)
return min(remaining, max(target, floor, min_rate))
Twee details in dit fragment doen echt werk: het target gebruikt van het tape-volume exclusief onszelf (je moet je eigen fills aftrekken van de tape waarop je reageert — een verrassend aantal implementaties doet dat niet), en de deadline-vloer verandert POV in TWAP-op-het-restant naarmate de tijd opraakt, wat op zijn minst de staartkosten voorspelbaar maakt.

Benchmarks: waarom VWAP verslaan je nog steeds geld kan kosten
De scheduler en de benchmark zijn afzonderlijke keuzes, en ze door elkaar halen is de meest voorkomende post-trade-zonde. Twee benchmarks domineren.
VWAP-benchmark — je gemiddelde fillprijs vergelijken met de interval-VWAP — werd geïntroduceerd door Berkowitz, Logue and Noser (1988, "The Total Cost of Transactions on the NYSE," Journal of Finance 43(1)), die de volumegewogen prijs van de dag voorstelden als een neutrale meetlat voor institutionele executiekwaliteit. Het werd de industriestandaard om een sociologische reden net zo goed als om een technische: het is makkelijk te berekenen, makkelijk uit te leggen, en moeilijk om slecht tegen af te steken als je gewoon je handel over de dag spreidt.
Implementation shortfall (arrival price) komt van Perold (1988, "The Implementation Shortfall: Paper Versus Reality," Journal of Portfolio Management 14(3), 4–9): meet alles af tegen de prijs op het moment dat de beslissing werd genomen. Voor een aankoop van met gevulde hoeveelheid tegen gemiddelde prijs , eindprijs :
Perolds punt was dat het gat tussen papieren portefeuilles en echte portefeuilles precies deze grootheid is — en merk op dat het je aanrekent voor wat je niet hebt weten uit te voeren, wat de VWAP-benchmark stilzwijgend negeert. Die opportuniteitskostenterm is wat IS de enige eerlijke benchmark maakt voor POV, wiens kenmerkende faalmodus ongevulde hoeveelheid is.
Nu de valkuil. VWAP als benchmark heeft twee structurele blinde vlekken:
Het is zelfreferentieel. Jouw fills zitten binnen de benchmark. Als jij 30% van het intervalvolume bent, dan is ruwweg 30% van de VWAP jouw eigen gemiddelde prijs, en jouw gemeten slippage ten opzichte van VWAP wordt mechanisch verkleind door je eigen participatie — hoe groter en impactvoller jouw order, hoe beter hij scoort. In de limiet waarin jij de enige handelaar bent, versla je VWAP met exact nul, ongeacht hoe slecht je de prijs hebt bewogen. VWAP-slippage meet schema-naleving, geen kosten.
Het negeert drift ten opzichte van de beslissing. Concrete cijfers: je besluit 100 BTC te kopen tegen een beslissingsprijs van 60.320 en jij vult tegen een gemiddelde van 290 boven de beslissingsprijs op 100 BTC — +48 bps, $29.000 aan implementation shortfall. Beide cijfers kloppen. Slechts één ervan is geld. En de perverse prikkel gaat dieper: een trader die op VWAP wordt beoordeeld zou op een trending dag juist moeten vertragen (spreiden van trades volgt de benchmark beter), wat precies het tegenovergestelde is van wat de shortfall minimaliseert wanneer de prijs van je wegloopt. De benchmark meet de kosten niet alleen verkeerd — hij schrijft het verkeerde gedrag voor. Kissell (2013, The Science of Algorithmic Trading and Portfolio Management, Academic Press) behandelt dit benchmark-selectieprobleem uitgebreid; zijn framing is de moeite waard om te internaliseren: de benchmark codeert wiens risico je beheert. VWAP beheert het gêne-risico van de uitvoerende desk. Arrival price beheert de P&L van de portefeuille.
Praktische oplossing: beoordeel strategieën op implementation shortfall; gebruik VWAP-slippage als een diagnostisch instrument (het isoleert schema-vaardigheid van timing-geluk, aangezien drift zowel jou als de benchmark beïnvloedt); en laat nooit iemand wiens order >10% van het intervalvolume was VWAP-slippage citeren zonder ook de participatie te noemen.
Het experiment: drie algoritmes, één tape
Nu de definities vastliggen kunnen we doen wat de vergelijkingsartikelen nooit doen: de drie schedulers laten draaien op identieke parent orders over dezelfde gerepliceerde data en kijken naar kostenverdelingen, niet naar bijvoeglijke naamwoorden. De harness draait op de event-driven fill-simulator beschreven in Fill-simulatie: partial fills, queue-positie en waarom je backtest-fills liegen — gerepliceerde L2-diepte, child-limietorders verdienen queue-positie, agressieve children lopen door het boek, en onze fills verstoren de tape die de schedulers waarnemen (wat enorm relevant is voor POV, zie de feedbacksectie).
Opzet, zodat je het op je eigen data kunt reproduceren:
- Instrument/data: BTCUSDT perpetual, 90 dagen L2-replay (top 20 levels, 100 ms) + trades-tape.
- Parent orders: 500 per algoritme, identiek over de algoritmes: willekeurige starttijden, horizon u, omvang 0,75% van het voortschrijdende 30-dagen-ADV (groot genoeg dat impact reëel is, klein genoeg dat alle drie plausibel kunnen afronden), koopzijde, beslissingsprijs = mid bij start.
- TWAP: 48 child-slices, ±30% timing-/omvangjitter.
- VWAP: curve met mediaan per dag-van-de-week × tijd-van-de-dag van 30 minuten (schatter hierboven), wekelijks herijkt, geen intraday-bijwerking — bewust de simpele versie.
- POV: van tape-volume exclusief onszelf, minimumtempo-vloer, TWAP-inhaalslag in de laatste 30 minuten.
- Metrics: IS in bps van de beslissingsprijs (fees inbegrepen), VWAP-slippage in bps, voltooiingspercentage, en — wat niemand rapporteert — IS van het laatste kwartiel van elke parent.
Representatieve resultaten van onze runs (jouw cijfers zullen afwijken; de vorm zou dat niet moeten):
| Metric (bps t.o.v. arrival) | TWAP | VWAP | POV 12% |
|---|---|---|---|
| Gemiddelde IS | 11.8 | 9.6 | 8.9 |
| Mediane IS | 9.1 | 7.7 | 6.4 |
| Std van IS | 21.5 | 19.8 | 26.3 |
| 95e percentiel IS | 46 | 41 | 58 |
| Gemiddelde VWAP-slippage | +1.9 | +0.4 | –0.8 |
| Voltooiing bij T | 100% | 100% | 96.4% |
| Gemiddelde IS, laatste kwartiel van parent | 12.5 | 10.2 | 19.7 |
Drie observaties, in oplopende volgorde van belang:
De gemiddelden vleien POV en de staarten veroordelen het. POV wint op gemiddelde en mediane IS — je aanpassen aan gerealiseerde liquiditeit is oprecht een paar bps waard ten opzichte van een statische curve. Maar de standaarddeviatie van IS en het 95e percentiel zijn het slechtst van de drie, het voltooiingspercentage is geen 100%, en de kosten van het laatste kwartiel zijn meer dan het dubbele van het kopcijfer: de nooit-afrondende staart plus inhaalmodus concentreren de kosten precies daar waar de gemiddelden ze verbergen. Als jouw parent orders alpha-gedreven zijn met een harde horizon, dan is die staart het cijfer dat ertoe doet, en het gemiddelde voordeel van POV compenseert daar niet voor.
Het voordeel van VWAP boven TWAP is exact zijn prognosekwaliteit. Condioneer het IS-verschil tussen VWAP en TWAP op de gerealiseerde volumecurvefout (-afstand tussen prognose en gerealiseerde aandelen) en het verband is monotoon: op het tertiel dagen met de beste prognose verslaat VWAP TWAP met ~4 bps; op het slechtste tertiel valt het verschil binnen de ruis en keert het soms zelfs om. In crypto is het slechtste tertiel niet willekeurig — het zijn cascade-dagen en nieuwsdagen, die ook de duurste dagen in het algemeen zijn. VWAP verbetert je gemiddelde door te excelleren op de dagen die toch al makkelijk waren.
VWAP-slippage en IS rangschikken de algoritmes verschillend. POV noteert negatieve gemiddelde VWAP-slippage — natuurlijk doet het dat, het handelt proportioneel aan precies het volume dat de benchmark definieert, en zijn fills zitten erin verwerkt. Volgens het VWAP-scorebord is POV hier het beste algoritme; volgens het arrival-scorebord en het voltooiingsrisico is het het gevaarlijkste. Dezelfde tape, dezelfde fills, tegengestelde conclusie — wat precies het argument van de vorige sectie is, weergegeven als tabel.

De harness zelf is ~50 regels rond de fill-simulator en elke minuut waard, omdat hij de keuze van scheduler omzet van een smaakdiscussie in een meting:
for parent in sample_parents(n=500, horizon="4h", adv_frac=0.0075):
for algo in (twap, vwap, pov):
sim = ReplaySim(l2_stream(parent.window), fees=TAKER_MAKER)
fills = sim.run(algo.schedule(parent)) # fills perturb the tape
report(parent, algo, is_bps(fills, parent.p0),
vwap_slip_bps(fills, sim.tape), fills.completion)
Kiezen, in de praktijk
De eerlijke selectieregels die hier allemaal uit voortvloeien:
- Harde deadline, alpha-gedreven parent: TWAP of een front-loaded Almgren-Chriss-schema. Betaal de vlakke-liquiditeitsbelasting; koop de voltooiingsgarantie en de begrensde staart. Randomiseer de children.
- Benchmark-gedreven flow (je wordt letterlijk betaald op VWAP), of grote omvang op een normale dag: VWAP — en besteed je engineeringbudget aan de volumeforecaster: dag-van-de-week-grid, funding-piekresolutie, intraday dynamische bijwerking à la Białkowski-Darolles-Le Fol. Een VWAP-engine met een luie curve is TWAP met extra stappen.
- Opportunistisch, geen harde deadline, liquiditeitsgevoelig: POV bij bescheiden (≤15%), berekend op volume exclusief onszelf, met een cascadefilter (participatie beperken wanneer tape-volume-z-scores exploderen) en een deadline-fallback waarvan je de kosten apart meet.
- Wat je ook draait: beoordeel het op implementation shortfall tegen arrival, volgens Perold. Houd VWAP-slippage als diagnostisch instrument voor schema-vaardigheid, nooit als scorebord — het scorebord moet in geld genoteerd zijn, en alleen arrival price is dat.
En de meta-regel die het experiment blijft afdwingen: vergelijk verdelingen, geen gemiddelden, op je eigen gerepliceerde data. Een scheduler is een weddenschap op een volumeprognose, en je evalueert weddenschappen niet aan de hand van hun gemiddelde uitbetaling terwijl je de staarten negeert — zo verkoopt de markt je POV.
Auteurs
Trading-systems engineer
Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.