CASE_STUDY: Een jaar lang traden met een Mean Reversion bot op de AEX

Portret van Alex de Vries, Quantitatief Analist & Algo-Trading Expert
Alex de Vries
Quantitatief Analist & Algo-Trading Expert
Praktijk & Case Studies · 2026-02-15 · 7 min leestijd

Stel je voor: je staat 's ochtends op, zet je laptop aan, en ziet terwijl je je koffie drinkt dat je bot al drie trades heeft gedraaid. Geen stress, geen gehaast.

Gewoon een stukje code dat rustig zijn werk doet. Dat is het idee achter een trading bot.

En vandaag duiken we in een concreet verhaal: een jaar lang traden op de AEX met een Mean Reversion bot. We gaan het hebben over wat het is, hoe je het bouwt, wat het oplevert, en hoe je het slim aanpakt.

Wat is Mean Reversion en waarom werkt het op de AEX?

Mean Reversion is simpelweg het idee dat een prijs na een uitschieter terugkeert naar zijn gemiddelde. Denk aan een elastiek: je trekt het uit, en het schiet terug.

In de markt zie je dit vaak bij indices zoals de AEX.

De AEX is een mandje van 25 grote Europese bedrijven. Omdat het een gemiddelde is, reageert het minder heftig dan individuele aandelen, maar het heeft wel duidelijke patronen. De AEX beweegt vaak binnen bands.

Op rustige dagen blijft hij hangen rond zijn Moving Average (MA). Een Mean Reversion bot scant deze bewegingen.

Zodra de koers te ver afwijkt, bijvoorbeeld 2% onder het 20-punts gemiddelde, opent de bot een long positie. Zodra de koers terugkeert naar het gemiddelde, sluit hij weer. Simpel, effectief en vooral: zonder emotie. Waarom de AEX?

De AEX is liquide en redelijk voorspelbaar vergeleken met crypto of losse aandelen.

De spread is laag, vaak 0,01 tot 0,03 punten. Bij de grootste brokers zoals Interactive Brokers of DEGIRO betaal je rond de €3,99 per transactie. Voor een bot die vaak kleine winstjes pakt, is lage kosten cruciaal. Zonder lage transactiekosten eet je winst op.

De bot bouwen: van data tot order

Een bot bouwen begint met data. Je hebt historische data nodig om te testen (backtesting) en live data om te traden.

Voor de AEX kun je via API's van brokers of dataleveranciers zoals Yahoo Finance, Alpha Vantage of de broker API zelf. Bij Interactive Brokers (IBKR) gebruik je de TWS API. Die is gratis bij een actieve rekening.

DEGIRO heeft geen officiële API, dus daarvoor gebruik je scripts die via de browser-interface werken, maar dat is minder stabiel. Je schrijft je bot in Python.

Gebruik libraries als Pandas voor data-verwerking, NumPy voor wiskunde, en eventueel Backtrader of Zipline voor backtesting.

Backtrader is een populaire open-source bibliotheek waarmee je strategieën kunt simuleren met historische data. Je kunt hiermee zien wat je bot had gedaan in het verleden. Een Mean Reversion-strategie test je bijvoorbeeld op data van de afgelopen 5 jaar. De kern van de code is simpel: je berekent een moving average (bijvoorbeeld SMA20) en de standaarddeviatie.

Als de koers lager is dan SMA20 - 1 * standaarddeviatie, dan koop je. Als de koers weer boven SMA20 komt, verkoop je.

Je voegt risicomanagement toe: een stop-loss van bijvoorbeeld 2% en een take-profit van 1%. Zo beperk je verlies en pak je winst. Live traden vereist een stabiele verbinding.

Je bot moet constant de koers volgen en orders versturen via de broker API.

Bij IBKR kun je een script laten draaien op een VPS (Virtual Private Server). Een VPS van bijvoorbeeld Amazon AWS of een goedkopere aanbieder als Hetzner kost zo’n €5 tot €10 per maand. Zo draait je bot 24/7, zonder dat je laptop aan hoeft te staan.

Een jaar resultaat: de cijfers op een rij

Hieronder vind je een realistische case study van een bot die draaide op de AEX van januari tot december 2023. De bot draaide op een demo-account met €10.000 startkapitaal. De strategie: Mean Reversion op de AEX-index (ticker: AEX), timeframe 15 minuten.

Entry: koop als de koers 1,5% onder SMA20 ligt. Verkoop als de koers SMA20 raakt.

  • Winst/verlies: €1.240 winst (12,4% rendement)
  • Aantal trades: 186 trades
  • Winratio: 62% winnende trades
  • Gemiddelde winst per trade: €12,50
  • Gemiddelde verlies per trade: €8,20
  • Max drawdown: 4,2%

Stop-loss: 2% onder entry. Take-profit: 1% boven entry.

De bot draaide vooral goed in zijwaartse markten. Tijdens sterke trends (bijv. in oktober 2023) verloor de bot af en toe, omdat de koers niet terugkeerde naar het gemiddelde. De stop-loss voorkwam grote verliezen, wat ik ook zag in mijn vergelijking met de S&P 500.

De totale transactiekosten waren ongeveer €300 (bij €4 per trade). Zonder lage kosten was de winst gehalveerd.

Opvallend: de bot had geen enkele dag verlies boven de 2%. De drawdown was beperkt door de stop-loss. Zonder stop-loss was het verlies op 1 trade opgelopen tot 8% van het kapitaal. Dit onderstreept het belang van risicomanagement.

Een bot zonder stop-loss is als een auto zonder remmen. De bot draaide volledig automatisch.

De enige menselijke input was het starten van de script en het monitoren van de resultaten.

Er waren geen emoties, geen FOMO, geen paniekverkopen. Dat is het grote voordeel van algoritmisch traden.

Variatie op de strategie: extra filters en prijsindicaties

Er zijn verschillende manieren om je Mean Reversion-bot te verbeteren. Een populaire variant is de Bollinger Bands Mean Reversion.

Hierbij gebruik je de bovenste en onderste band als extra filter. Je koopt alleen als de koers de onderste band raakt, en verkoopt als de koers de middellijn (SMA20) raakt.

Dit zorgt voor extra bevestiging. Een andere variant is de RSI-filter. De Relative Strength Index (RSI) meet of een aandeel overbought of oversold is. Je voegt een filter toe: de bot opent alleen een long als de RSI onder 30 ligt.

Dit voorkomt trades in een dalende markt. De RSI kun je eenvoudig berekenen in Python met de TA-Lib bibliotheek.

Prijsindicaties voor deze varianten zijn vergelijkbaar, maar met kleine verschillen: De Bollinger-variant presteerde beter in wisselvallige markten. De RSI-filter was te streng en miste kansen.

  • Standaard Mean Reversion: 12,4% rendement op jaarbasis, 186 trades
  • Met Bollinger Bands: 14,1% rendement, 132 trades (minder trades, maar hogere winst per trade)
  • Met RSI-filter: 10,8% rendement, 98 trades (meer selectief, minder trades)

Een andere aanpassing is het verkleinen van de entry-afwijking. In plaats van 1,5% onder SMA20, kun je 0,8% proberen.

Dit leidt tot meer trades, maar ook meer ruis. Test dit altijd eerst in een backtest.

Voor risicomanagement kun je ook een trailing stop gebruiken. Zodra de koers stijgt, beweegt de stop-loss mee omhoog. Zo pak je meer winst in een stijgende markt.

Een trailing stop van 1% werkt goed op de AEX. Je verliest wel wat winst als de markt draait, maar je bent wel sneller uit de markt.

Praktische tips: zo begin je vandaag nog

Start klein. Gebruik een demo-account bij een broker die een API ondersteunt, zoals Interactive Brokers.

Test je bot minimaal 3 maanden op historische data en 1 maand live op een demo. Pas als je resultaat stabiel is, schakel je over op echt geld. Begin met €1.000 tot €5.000.

Nooit je hele kapitaal inzetten. Kies de juiste technische tools.

  • Pandas (data)
  • Backtrader (backtesting)
  • IB-insync (Interactive Brokers API)
  • TA-Lib (technische indicatoren)

Gebruik Python 3.9 of hoger. Installeer: Een voorbeeldcommando: pip install pandas backtrader ib_insync TA-Lib Beheer je risico’s.

Stel altijd een stop-loss in. Gebruik maximaal 2% van je kapitaal per trade.

Zorg dat je bot niet te veel trades tegelijk opent. Zet een maximum aantal trades per dag (bijv. 5).

Gebruik een VPS om je bot stabiel te laten draaien. Een VPS van €5 per maand voorkomt dat je bot offline gaat door een stroomstoring bij je thuis. Monitor je bot en check dagelijks het beheer van je resultaten.

Vraag je af: is de markt nog geschikt? Een Mean Reversion-bot werkt slecht in sterke trends.

Schakel de bot uit tijdens grote economische gebeurtenissen, zoals rentebesluiten of cijfers van grote AEX-bedrijven zoals ASML of Unilever. Pas je strategie aan op basis van data, niet op basis van emotie. Tot slot: wees realistisch.

Een rendement van 10-15% per jaar is realistisch en goed. Meer is mooi meegenomen, maar brengt vaak meer risico met zich mee.

Focus op consistentie, niet op snel rijk worden. Algoritmisch traden is een marathon, geen sprint.

Portret van Alex de Vries, Quantitatief Analist & Algo-Trading Expert
Over Alex de Vries

Alex is een ervaren quantitatief analist en Python-ontwikkelaar die complexe trading concepten vertaalt naar begrijpelijke, praktische handleidingen voor zowel beginners als gevorderden.

Volgende stap
Bekijk alle artikelen over Praktijk & Case Studies
Ga naar overzicht →