Een 'Paper Trading' account opzetten om je bot te testen

Portret van Alex de Vries, Quantitatief Analist & Algo-Trading Expert
Alex de Vries
Quantitatief Analist & Algo-Trading Expert
Brokers & API Integraties · 2026-02-15 · 6 min leestijd

Je hebt een algoritmische bot geschreven in Python, je hebt een broker gekozen en je API-sleutels liggen klaar.

Voordat je met echt geld gaat draaien, wil je zeker weten dat je code niet ontploft. Een paper trading account is je digitale proefkeuken. Je bot denkt dat hij handelt, de broker denkt dat hij handelt, maar het geld is nep. Zo test je je strategie zonder bloed, zweet en tranen.

Wat is paper trading en waarom is het onmisbaar?

Paper trading is een simulatieomgeving bij een broker of exchange. Je krijgt virtueel tegoed, vaak €10.000 of €100.000, en je kunt orders plaatsen via dezelfde API die je voor echt geld gebruikt. Het verschil?

Je balans verandert alleen op het scherm, niet op je bankrekening. Waarom doe je dit?

Omdat live markten meedogenloos zijn. Een simpele bug in je Python-script kan je bot laten denken dat hij 1.000 aandelen moet kopen terwijl je maar €500 beschikbaar hebt. Of je API-call faalt en je bot blijft herhalen tot je limiet op is.

Paper trading laat deze fouten zien zonder dat je euro’s verliest. Daarnaast leer je de API kennen.

Je ziet hoe orders worden bevestigd, wat de statussen betekenen en hoe snel je bot reageert. Het is een veilige oefenruimte voor risicomanagement, want je kunt stop-losses, take-profits en position sizing testen zonder angst. Denk er ook aan dat papierhandel geen exacte kopie is van de echte markt. Prijzen kunnen iets afwijken, spreads zijn soms smaller en uitvoering is perfect. Toch geeft het een realistisch beeld van je code en je broker.

Kies je broker of exchange voor paper trading

Niet elke broker biedt paper trading aan, en de kwaliteit verschilt. Voor algoritmische bots in Python zijn er een paar sterke opties.

Interactive Brokers heeft een paper trading account dat perfect sync met hun TWS- of Gateway-API.

Je krijgt €100.000 virtueel tegoed en toegang tot aandelen, opties en futures. De API is uitgebreid en stabiel, maar wel technisch. Binck Academy (nu Saxo Bank) bood vroeger een paper account, maar de huidige Saxo demo is meer voor handmatig traden.

Voor algo’s is de API-toegang beperkt zonder een live account. Als je toch wilt testen, kijk dan naar de Saxo OpenAPI sandbox, maar die is minder uitgebreid voor geautomatiseerde bots.

Exchanges zoals Binance en Bybit bieden futures paper trading via hun testnet. Bij Binance krijg je virtuele USDT en kun je perp-futures traden. De API is vergelijkbaar met de live versie, en je kunt Python-scripts rechtstreeks aansluiten via de ccxt-bibliotheek. Bybit heeft een vergelijkbare testnet met virtuele tegoeden, ideaal voor crypto-bots.

Qua kosten: paper trading is gratis. Bij live handelen betaal je transactiekosten, spread en soms financieringskosten voor futures.

Bij Binance betaal je ongeveer 0,02% maker en 0,04% taker per trade. Bij Interactive Brokers hangt het af van de markt, maar reken op €0,01 tot €0,02 per aandeel met een minimum van €1 tot €3 per order. Voor crypto-bots is de testnet kosteloos, maar live betaal je wel de netwerk- en exchange-fee.

Stap voor stap: je paper account koppelen aan je Python-bot

Begin met het aanmaken van een paper account bij je broker of exchange. Bij Interactive Brokers log je in op de TWS of Gateway, ga je naar Account Settings en activeer je paper trading.

Je krijgt een apart accountnummer dat begint met ‘DF’ (voor demo). Bij Binance ga je naar de Futures Testnet en maak je een aparte API-sleutel aan die alleen toegang krijgt tot de testnet.

python -m venv algo_env
source algo_env/bin/activate  # of algo_env\Scripts\activate op Windows
pip install ccxt ib_insync pandas

Installeer de benodigde Python-bibliotheek. Voor IBKR is ib_insync of de officiële ibapi geschikt, al is het slim om eerst te kijken welke broker de beste documentatie voor Python heeft. Voor crypto is ccxt een populaire keuze.

import ccxt
exchange = ccxt.binance({
    'apiKey': 'JE_TESTNET_SLEUTEL',
    'secret': 'JE_TESTNET_SECRET',
    'enableRateLimit': True,
    'options': {'defaultType': 'future'},
    'urls': {'api': 'https://testnet.binancefuture.com'}
})
balance = exchange.fetch_balance()
print(balance['USDT']['free'])

Gebruik een virtual environment: Koppel je API-sleutel in je code. Bij Binance Testnet:

from ib_insync import IB, Stock
ib = IB()
ib.connect('127.0.0.1', 7497, clientId=1)  # paper port 7497
contract = Stock('AAPL', 'SMART', 'USD')
ib.reqMarketDataType(1)  # 1 = real-time, 2 = frozen, 3 = delayed, 4 = delayed frozen
print(ib.reqCurrentTime())

Bij Interactive Brokers Paper: Schrijf een simpele testfunctie die een order plaatst en direct annuleert. Zo controleer je of de API reageert. Voor Binance: Voor IBKR:

order = exchange.create_order('BTC/USDT', 'limit', 'buy', 0.001, 30000)
print(order['id'])
exchange.cancel_order(order['id'], 'BTC/USDT')

Log je activiteiten. Gebruik Python’s logging-module om elke API-call, fout en orderstatus op te slaan.

order = MarketOrder('BUY', 100)
trade = ib.placeOrder(contract, order)
print(trade.orderStatus)
ib.cancelOrder(order)

Dit helpt bij het terugzoeken van bugs en het verbeteren van je risicomanagement. Test je script stap voor stap. Eerst een simpele marktorder, dan een limietorder, dan een stop-loss. Controleer of je code omgaat met fouten zoals ‘insufficient funds’ of ‘rate limit exceeded’.

Wat je moet testen en hoe je resultaten leest

Begin met het testen van orderuitvoering. Plaats een limietorder iets onder de huidige marktprijs en kijk of hij wordt uitgevoerd.

Bij paper trading is uitvoering vaak perfect, maar je wilt zien hoe je bot reageert op bevestigingen.

Test je risicomanagement. Zet een stop-loss op 2% onder je entry en een take-profit op 4% erboven. Gebruik je Python-bot om deze automatisch te plaatsen en TradingView alerts naar je bot te sturen voor een naadloze uitvoering.

Kijk of je bot de juiste position size berekent op basis van je virtuele balans. Simuleer een crash.

Stel je bot in om te reageren op een scherpe daling, bijvoorbeeld een 5% drop in een uur. Zie hoe je code omgaat met snelle prijsbewegingen en of je stop-losses goed worden uitgevoerd. Log de resultaten in een CSV of database. Sla op: timestamp, symbool, order type, entry, exit, winst/verlies, aantal eenheden.

import pandas as pd
df = pd.read_csv('trades.csv')
df['equity'] = df['profit'].cumsum()
df['equity'].plot()

Gebruik pandas om later een eenvoudige equity curve te plotten. Check je actuele portfolio balans en vergelijk de paper resultaten met live data.

Paper trading toont vaak betere uitvoering dan de echte markt. Pas je verwachtingen aan en neem een marge voor spread en kosten in je live strategie.

Praktische tips voor soepel testen

  • Gebruik aparte API-sleutels voor paper en live. Zo voorkom je dat je per ongeluk met echt geld handelt.
  • Beperk je virtuele balans tot een realistisch bedrag, bijvoorbeeld €10.000. Zo test je position sizing realistisch.
  • Test tijdens openingsuren van de markt. Bij aandelen is de eerste uur na opening het meest volatiel.
  • Gebruik een VPN of beveiligde omgeving voor je API-sleutels, ook voor paper trading.
  • Simuleer transactiekosten in je code. Voeg een vaste fee toe per trade, bijvoorbeeld €0,01 per aandeel of 0,04% voor crypto.
  • Test je bot op een Raspberry Pi of cloud-VM om latency te simuleren. Een lokale laptop is sneller dan een server op afstand.
  • Houd een dagboek bij van je testen. Schrijf op wat er misging en wat je hebt aangepast.
  • Wanneer overstappen naar live? Als je bot 30 dagen stabiel draait op paper, met maximaal 10% drawdown en een winstgevende equity curve.

Met deze aanpak bouw je vertrouwen op in je bot en je broker-integratie. Paper trading is je veilige speeltuin, maar blijf kritisch. Elke markt heeft zijn eigen valkuilen, en alleen door te testen leer je ze kennen.

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 Brokers & API Integraties
Ga naar overzicht →