Een trailing stop-loss toevoegen aan je trend-following bot
Waarom een trailing stop-loss je bot een stuk slimmer maakt
Een trend-following bot koopt als de markt omhoogschiet en verkoopt als die onder een vaste drempel zakt.
Dat werkt, maar die vaste drempel voelt soms als een te strakke broek. Je wint of verliest op een vaste afstand, terwijl de markt misschien net even anders beweegt.
Een trailing stop-loss lost dat op. De stop beweegt met de koers mee, omhoog bij een stijgende trend en omlaag bij een dalende trend. Je beschermt je winst zonder te vroeg uit te stappen. Je bot houdt ruimte om te ademen, maar sluit wel netjes als de trend echt omdraait.
Denk aan een raceauto: je houdt de rem bij de hand, maar je trekt hem pas aan als het echt nodig is.
Zo voelt een trailing stop-loss: geen harde muur, maar een slimme bewegende grens.
De kerninstellingen voor een trailing stop-loss
Je bot heeft drie knoppen om te draaien: de afstand, de verplaatsingsstap en de minimumwinst.
De afstand bepaalt hoe ver de stop achter de koers hangt. Te dicht en je bot sluit bij elke kleine schommeling. Te ver en je geeft te veel winst weg. De verplaatsingsstap bepaalt hoe snel de stop meebeweegt.
Bij een stabiele trend mag de stap klein zijn, bij een wilde markt kies je een grotere stap. De minimumwinst zorgt dat de stop pas gaat bewegen als je een bepaalde winst hebt behaald.
Zo voorkom je dat de stop direct meekruipt bij een kleine opleving.
Stel je voor: je instap is 100, je afstand is 3 punten, je stap is 1 punt en je minimumwinst is 2 punten. Pas als de koers naar 102 gaat, verschuift de stop naar 99. Bij 103 wordt het 100, en zo verder. Dat voelt eerlijk en beheerst.
Backtesten met Python: hoe je echt ziet wat werkt
Je wilt geen gokje wagen. Backtesten met Python geeft je harde cijfers over winst, drawdown en het aantal uitstappen.
Gebruik een robuuste library en een echte broker-API voor data, niet alleen een csv’tje van een week. Populaire Python-tools voor backtesting zijn Backtrader, Zipline en Lean (van QuantConnect).
Backtrader is licht en fijn voor beginners, Zipline is sterk voor academische tests, Lean is krachtig voor professionele setups met meerdere assets. Kies wat bij je broker en je datafeed past. Je script bouw je in vier stappen: data ophalen bij je broker (bijvoorbeeld Interactive Brokers of Alpaca), een trend-strategie definieeren, een trailing stop-loss toevoegen en runnen op historische data. Check de resultaten op slippage en commissies. Zonder die twee klopt je bot in de praktijk niet.
Een backtest zonder slippage en commissies is als een zonnebril in een donkere kamer: het ziet er goed uit, maar je ziet niets.
Producten en brokers: drie concrete opties met prijzen
Je bot heeft een broker met een stabiele API en lage commissies. Hier zijn drie opties die goed werken voor trend-following met trailing stops.
Prijzen zijn indicatief en kunnen wijzigen, check altijd de site van de aanbieder. 1) Interactive Brokers (IBKR)
Prijs: vanaf €0,35 per aandeel in Europa, vanaf $0,35 per aandeel in de VS. Commissie op opties en futures varieert, spread is klein.
Pro-abonnementen vanaf €10 per maand, die je terugkrijgt in commissies.
Voordelen: sterke API (TWS/REST), directe toegang tot aandelen, opties, futures en forex; lage spreads; backtesten met historische tick- en 1-minuutdata beschikbaar.
Nadelen: complexe interface, leercurve; datafeeds kunnen extra kosten; minimale activiteitseis kan voelen als druk.
2) Alpaca
Prijs: commissievrij aandelenhandel in de VS (bestaat uit de spread), crypto vanaf 0,3% per transactie. Data-abonnementen vanaf $9 per maand voor diepere data.
Voordelen: schone REST-API, makkelijk te koppelen aan Python, paper trading voor testen, snelle implementatie van trailing stops via API-orders.
Nadelen: primair VS-markt, geen Europese aandelen via dezelfde API; data is beperkt zonder betaald abonnement. 3) Binance (via futures)
Prijs: maker/taker fees vanaf 0,1% en lager met VIP-niveaus of BNB-korting.
Funding rates kunnen oplopen, dat telt mee in je rendement.
Voordelen: diepe liquiditeit, veel crypto-paren, API met futures en stop-orders; je kunt een trailing stop direct als order type gebruiken.
Nadelen: hogere volatiliteit, funding rate risico, toezicht verschilt per land; je bot moet strakke risicomanagement-regels hebben. Wil je een broker die in Europa breed toegankelijk is en een stabiele API heeft?
IBKR is vaak de meest complete keuze. Alpaca is heerlijk simpel voor VS-aandelen.
Binance is krachtig voor crypto, maar vraagt extra discipline.
Vergelijking: welke broker past bij jouw bot?
Hieronder een snelle vergelijking op basis van API-kwaliteit, kosten, marktdekking en trailing stop-mogelijkheden. Kies op basis van je focus: aandelen en futures wereldwijd ga je naar IBKR.
- Interactive Brokers: API krachtig en breed, kosten laag tot matig, markten wereldwijd, trailing stop via API of TWS, backtesten met hoogwaardige data. Ideaal voor serieuze aandelen- en futures-bots.
- Alpaca: API supermakkelijk, commissievrij aandelen VS, beperkte marktdekking, trailing stop via API-order logica, backtesten met paper trading en eigen scripts. Top voor beginners en snelle prototypes.
- Binance: API snel en rijk, kosten laag, crypto-only, native trailing stop via futures, backtesten met eigen datafeed en event-sourcing. Top voor crypto-trend-following, maar let op funding rates en volatiliteit.
Simpele VS-aandelen en een korte leercurve naar Alpaca. Crypto en snelle order-types naar Binance. Voor elke broker geldt: test je bot op slippage en orderexecutie, niet alleen op koersdata.
Implementatie: hoe je een trailing stop-loss bouwt in Python
Begin met een duidelijk plan: je eigen moving average crossover bot bouwen, waarbij de trailing stop de positie beschermt. Schrijf een klasse die de stop bijhoudt: bij een lange positie beweegt de stop alleen omhoog, bij een korte positie alleen omlaag. Gebruik een eenvoudige formule: stop = hoogste koers sinds entry minus afstand.
Pas de stop alleen aan als de nieuwe stop beter is dan de vorige.
Sluit de positie als de koers de stop raakt. Log elke aanpassing, zodat je achteraf ziet wat er gebeurde.
Code-voorbeeld in pseudocode:
if long:Zorg dat je API-call de stop aanpast zonder de positie per ongeluk te sluiten. Test dit met paper trading of een demo-account. Een foutje hier kost geld.
nieuwe_stop = max(huidige_stop, hoogste_koers - afstand)
if koers <= nieuwe_stop: sluit_positie()
else if short:
nieuwe_stop = min(huidige_stop, laagste_koers + afstand)
if koers >= nieuwe_stop: sluit_positie()
Sluit je script af met een risicomanagement-check: maximaal aantal trades per dag, maximale drawdown per dag, en een kill-switch als de bot te veel verliest.
Een trailing stop is geen magisch schild, het is een gereedschap dat je moet onderhouden.
Risicomanagement: wat vaak misgaat en hoe je het voorkomt
Veel bots falen omdat de stop te strak staat of te snel beweegt.
Bij volatiele aandelen of crypto wil je een ruimere afstand en een grotere stap. Bij stabiele aandelen mag de stop dichter en de stap kleiner. Let op slippage en commissies.
Een trailing stop die bij elke tick beweegt, kan te veel trades genereren. Tel de kosten mee in je backtest.
Een bot die 0,1% per trade wint, maar 0,15% kost, verliest op lange termijn.
Gebruik een maximum drawdown-drempel. Zodra je bot een bepaald verlies in een dag of week raakt, stop je de bot en analyseer je de data. Dit voorkomt dat een kleine fout uitgroeit tot een grote pijn.
Aanbevelingen per budget en gebruik
Starter met weinig budget: Alpaca met paper trading en Python (Backtrader). Kosten laag, implementatie snel, risico beperkt.
Focus op een simpele trend-strategie met een trailing stop van 2–3% en een stap van 0,5–1%. Koop data pas als je echt nodig hebt. Intermediate met aandelen en futures: Interactive Brokers met Python (Backtrader of Lean).
Gebruik 1-minuutdata voor een realistische backtest. Kies een afstand van 1–2% voor aandelen, 0,5–1% voor futures, en een stap die past bij de volatiliteit.
Plan je trades buiten openingsuren om slippage te beperken. Geavanceerd crypto-trader: Binance futures met Python (eigen event-driven bot). Een grid bot instellen voor een zijwaartse markt helpt je om rendement te behalen via de API, mits je rekening houdt met funding rates. Test met meerdere tijdframes en assets.
Gebruik een kill-switch en een daglimiet op verlies. Wees streng voor jezelf.
Waar te kopen: ga naar de officiële sites van Interactive Brokers, Alpaca en Binance. Maak een account aan, activeer API-toegang en zet paper trading aan. Koop alleen data-abonnementen als je echt historische diepte nodig hebt voor backtests.
Checklist voor een soepele livegang
- Backtest op minimaal 1 jaar data, inclusief commissies en slippage.
- Test paper trading voor minimaal 2 weken met je trailing stop-logica.
- Stel duidelijke afstanden en stappen in per markt en tijdframe.
- Log elke stop-beweging en elke exit, analyseer wekelijks.
- Zet een drawdown-drempel en een kill-switch in je bot.
- Start klein met reëel geld, schaal op als de bot stabiel is.
Een trailing stop-loss maakt je trend-following bot geen garantie op winst, maar wel een stuk slimmer. Je beschermt wat je wint, je geeft de trend ruimte en je houdt controle. En dat voelt precies zoals het hoort: je zit zelf aan het stuur, maar je hebt een slimme bijrijder naast je.
