Machine Learning in trading: Hoe bouw je een voorspellende bot?

Portret van Alex de Vries, Quantitatief Analist & Algo-Trading Expert
Alex de Vries
Quantitatief Analist & Algo-Trading Expert
Trading Strategieën & Logica · 2026-02-15 · 6 min leestijd

Stel je voor: je bouwt je eigen handelsbot die voor je werkt terwijl je slaapt. Geen magie, gewoon slimme code met Python, een broker API en een strategie die je zelf hebt ontworpen.

Machine Learning (ML) maakt dat mogelijk, maar het is geen goudmijn. Slechts 10-30% van de botgebruikers behaalt consistent rendement.

Toch gebruikt 58% van retailinvestors AI voor portfolio-opbouw, en autonome AI agents verwerken maandelijks meer dan $400 miljoen aan handelsvolume. In Nederland ben je zelf verantwoordelijk; geen financieel advies. Laten we aan de slag gaan met een praktische, toegankelijke gids voor een voorspellende bot op basis van Python, backtesting en risicomanagement.

Hoe bouw je een trading bot: een stap-voor-stap gids

Je begint met een duidelijk doel: een bot die een voorspellend model draait, risicomanagement toepast en via een broker API handelt.

We werken in Python omdat het beginner-vriendelijk is en veel libraries biedt voor data, ML en API’s. We richten ons op crypto via Binance, wereldwijd marktleider voor crypto-handel via API, beschikbaar voor Nederlandse gebruikers.

  • Een computer met minimaal 8 GB RAM en een stabiele internetverbinding.
  • Python 3.10 of nieuwer geïnstalleerd.
  • Een Binance-account met API-sleutels (lees-/schrijfrechten beperkt tot handel).
  • Een code-editor zoals VS Code.
  • Een broker met lage handelskosten en betrouwbare API (bijvoorbeeld Binance voor crypto).

We bouwen stap voor stap: omgeving, strategie, backtest, live implementatie en monitoring. Wat je nodig hebt voordat je start: Verwachte tijd per stap: 1–3 uur, totaal 10–20 uur voor een eerste werkende bot. Budget: gratis (open source) tot €50 per maand voor data feeds en hosting.

Stap 1: Zet je ontwikkelomgeving op. Installeer Python, maak een virtuele omgeving en installeer bibliotheken: pandas, numpy, scikit-learn, tensorflow of pytorch voor ML, ccxt of python-binance voor API, en backtrader of vectorbt voor backtesting.

Stap 2: Verzamel historische data. Gebruik de Binance API om prijsdata te downloaden (bijvoorbeeld 1-uurs candles van BTC/USDT over 2 jaar). Sla op als CSV of Parquet voor snel inladen.

Stap 3: Maak een basisfunctie voor dataverwerking. Schoon data op, behandel missende waarden en bereken technische indicatoren.

Stap 4: Ontwerp een eenvoudige ML-strategie. Train een model dat de volgende prijsbeweging voorspelt (classification: omhoog/omlaag of regression: prijs).

Gebruik features zoals moving averages, RSI en volatiliteit. Stap 5: Bouw een risicomanagementlaag. Stel een stop-loss in op 2% gebaseerd op volatiliteit, en bereken position sizing op basis van je accountsaldo en risicotolerantie.

Stap 6: Backtest de strategie op historische data. Meet rendement, drawdown en winstpercentage.

Pas parameters bij tot je stabiele resultaten ziet. Stap 7: Implementeer live trading via de API.

Start klein (bijvoorbeeld €100–€500), monitor elke trade en log alle acties. Stap 8: Monitor en verbeter.

Trading bot basisfuncties en strategieën

Check elke dag op errors, prestaties en marktveranderingen. Pas je model periodiek bij met nieuwe data. Een trading bot heeft drie kernfuncties: signalen genereren, slim risicomanagement toepassen en orders uitvoeren via de broker API. Voor een voorspellende bot gebruik je ML om signalen te verbeteren, maar begin met een bewezen basisstrategie.

Start met een trendvolgende strategie: een 50-period SMA boven de 100-period SMA is koop, anders verkoop.

Dit is eenvoudig en robuust. Voeg ML toe door een classifier te trainen die bepaalt of de SMA-crossing waarschijnlijk winstgevend is op basis van volatiliteit en volume. Gebruik concrete parameters:

  • 50-period SMA op 1-uurs candles.
  • 100-period SMA op 1-uurs candles.
  • Stop-loss op 2% onder instapprijs, gebaseerd op ATR (Average True Range) voor volatiliteit.
  • Take-profit op 4% (risico-rendement 1:2).
  • Position sizing: max 2% van je totale kapitaal per trade.

Veelgemaakte fout: te veel indicatoren combineren waardoor de bot overfit. Houd het simpel: 2–3 features voor je ML-model, zoals SMA-afstand, RSI en ATR.

Ontwikkelomgeving en programmeertaal keuze

Python is de meest toegankelijke taal voor trading bots. Wil je bijvoorbeeld een grid trading bot bouwen? Je schrijft snel code, vindt veel voorbeelden en hebt krachtige libraries.

  • pandas en numpy voor data.
  • scikit-learn voor klassieke ML-modellen.
  • tensorflow of pytorch voor diepe modellen.
  • ccxt of python-binance voor API-toegang.
  • vectorbt of backtrader voor backtesting.

Installeer eerst Python, maak een virtuele omgeving (python -m venv bot-env) en activeer deze. Installeer dan de packages: Gebruik VS Code als editor; installeer de Python-extensie voor autocompletion en debugging.

Test je API-toegang met een simpele aanroep: vraag de serverstatus op bij Binance, en download een beperkte dataset (bijvoorbeeld 1000 candles) om te controleren of je verbinding werkt. Veelgemaakte fout: onveilige opslag van API-sleutels.

Strategieontwerp met indicatoren en risicobeheer

Gebruik environment variables (bijvoorbeeld .env-bestand) en zet geen sleutels in je code of Git-repo.

Bouw je strategie rond drie delen: data, model en risico. Data: gebruik OHLCV (Open, High, Low, Close, Volume) van Binance.

  • Logistische regressie: snel en interpreteerbaar, goed voor beginners.
  • Random Forest: robuust, minder gevoelig voor ruis.
  • LSTM (diep leer): voor tijdreeks, maar pas op met overfitting.

Features: SMA-50 en SMA-100, RSI (14-period), ATR (14-period) voor volatiliteit. Doelvariabele: richting van de volgende candle (omhoog/omlaag) of prijsniveau. Modelkeuze: Risicomanagement is essentieel.

Stel een stop-loss in op 2% van je positie, gebaseerd op ATR (bijvoorbeeld 1,5 × ATR onder instapprijs).

Backtesting en prestatie-evaluatie

Gebruik position sizing: bereken het aantal coins als (accountsaldo × 0,02) / (instapprijs − stop-loss). Beperk het aantal open posities tot 1–3 om concentratierisico te vermijden. Veelgemaakte fout: geen rekening houden met transactiekosten.

Binance rekent circa 0,1% per trade; verwerk dit in je backtest en live-logica. Backtesting simuleert je strategie op historische data.

  1. Laad 2 jaar 1-uurs data van BTC/USDS via Binance API.
  2. Definieer signalen: koop als SMA-50 > SMA-100 én ML-model voorspelt stijging met zekerheid > 0,6.
  3. Voeg risicoregels toe: stop-loss 2%, take-profit 4%, max 2% kapitaal per trade.
  4. Draai backtest en meet: totaal rendement, max drawdown, winstpercentage, Sharpe-ratio.
  5. Optimaliseer voorzichtig: verander 1 parameter per keer en gebruik out-of-sample data.

Gebruik vectorbt of backtrader voor snelle tests. Laad je data, definieer entry- en exit-regels, voeg stop-loss en take-profit toe, en test de meest effectieve algoritmische trading strategieën in je simulatie.

Concrete stappen: Streef naar een winstpercentage van 50–60% bij een risico-rendement van 1:2. Een drawdown van max 10–15% is acceptabel voor een crypto-bot.

Live trading implementatie en monitoring

Als je resultaten te mooi lijken (bijvoorbeeld >100% rendement zonder drawdown), is het model waarschijnlijk overfit. Veelgemaakte fout: data leakage (toekomstige data gebruiken in training).

Splits data strikt: train op 70%, valideer op 15%, test op 15%.

  1. Log alle acties: signaal, order-id, prijs, volume, tijd.
  2. Voer één trade tegelijk uit; wacht tot exit voordat je een nieuwe entry neemt.
  3. Monitor de bot continu: check elke 15–30 minuten op errors, vertragingen en onverwachte orders.
  4. Stel alerts in (bijvoorbeeld via Telegram) voor grote drawdowns of API-fouten.
  5. Hertrain het model wekelijks met nieuwe data om drift te voorkomen.

Start klein. Gebruik een apart Binance-account met €100–€500 en beperkte API-rechten (alleen handel, geen opnames).

Verbind je bot met de API: authenticatie met API-sleutel en secret, en gebruik de python-binance library om orders te plaatsen. Stappen voor live implementatie: Gebruik een VPS (virtual private server) voor stabiele uptime, bijvoorbeeld een goedkope optie van €5–€10 per maand. Zorg voor lage latentie: kies een server dicht bij Binance-datacenters (bijvoorbeeld in Europa).

Verificatie-checklist

Veelgemaakte fout: vergeten dat AI geen magische oplossing is. Houd rekening met marktomstandigheden; een bot die in rustige markten werkt, kan falen tijdens extreme volatiliteit.

  • Omgeving werkt: Python draait, packages geïnstalleerd, virtuele omgeving actief.
  • Data betrouwbaar: Binance API levert consistente candles zonder missende waarden.
  • Strategie getest: backtest toont stabiele resultaten met realistische transactiekosten.
  • Risicomanagement actief: stop-loss 2%, position sizing correct, max posities beperkt.
  • API-beveiliging: sleutels opgeslagen in environment variables, rechten beperkt.
  • Monitoring ingesteld: logs, alerts en VPS actief.
  • Startbedrag klein: €100–€500, geen geld dat je niet kunt missen.

Check voor livegang: Onthoud: eigen verantwoordelijkheid. Dit is geen financieel advies.

Test, leer en verbeter. Met een stap-voor-stap aanpak bouw je een voorspellende bot die past bij jouw risicoprofiel en doelen.

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 Trading Strategieën & Logica
Ga naar overzicht →