Wat is een 'Dead Man's Switch' voor je trading server?

Portret van Alex de Vries, Quantitatief Analist & Algo-Trading Expert
Alex de Vries
Quantitatief Analist & Algo-Trading Expert
Foutmeldingen & Debugging Live Bots · 2026-02-15 · 7 min leestijd

Stel je voor: je hebt je Python-bot perfect afgestemd. Je backtests met Backtrader of Zipline laten strakke winstcurve zien.

Je hebt een API-sleutel bij Interactive Brokers of Bitvavo, de risicomanagement-regels staan op scherp. Je start de server op je Raspberry Pi of cloud-VM, en je gaat slapen. En dan? Wat als er midden in de nacht een internetstoring is?

Of de stroom uitvalt? Of de broker-API besluit er mee op te houden?

Je bot merkt het niet. Hij staat gewoon aan, te wachten op een signaal dat nooit komt. Of erger: hij mist een exit en je portefeuille loopt schade op.

Dit is het moment dat je een Dead Man's Switch nodig hebt. Het is je digitale veiligheidsnet, de stille waakhond die wanneer je server het begeeft, direct actie onderneemt.

Waarom je bot niet gewoon 'uit' kan gaan

Een Dead Man's Switch is een mechanisme dat actief wordt als je server geen teken van leven meer geeft. Het is het tegenovergestelde van een noodstop die je activeert; dit is een systeem dat in werking treedt als jij het níet kunt. In de wereld van algorithmic trading betekent dit dat je openstaande posities worden gesloten, orderaanvragen worden geannuleerd en je broker-API wordt geblokkeerd.

Waarom is dit zo cruciaal? Omdat je server een kwetsbaar stukje technologie is.

Een simpele kernel panic, een onverwachte update van je Linux-distributie, of een netwerk glitch kan je bot stilzetten. Zonder Dead Man's Switch zit je posities open terwijl de markt door draait.

Je bent blind en hulpeloos. De switch zorgt ervoor dat je kapitaal beschermd wordt op het moment dat je het minste controle hebt. De impact van een crash is vaak groter dan je denkt.

Een Python-script dat crasht, sluit niet automatisch je posities. Die blijven openstaan bij je broker zoals Degiro, Kraken of Interactive Brokers.

Als de markt dan tegen je in beweging komt, loop je verder en verder weg. De Dead Man's Switch is je back-up plan. Het is de garantie dat er altijd een 'sluit alles'-commando wordt verstuurd, zelfs als je server rook maakt. Je betaalt voor gemoedsrust, en dat is in trading onbetaalbaar.

Hoe de waakhond werkt: de kern van het systeem

De werking is simpel maar effectief. Je hebt twee delen nodig: je 'Dead Man' (meestal een simpele script op een server) en je 'Switch' (het mechanisme dat de daadwerkelijke actie uitvoert).

Het idee is eenvoudig: je Dead Man stuurt om de zoveel seconden of minuten een seintje. Zolang dat seintje binnenkomt, weet de Switch dat alles goed is.

Als het seintje stopt, start de timer voor de shutdown. Meestal gebeurt dit via een 'heartbeat' mechanisme. Je Python-script op je trading-server stuurt via een API-call of e-mail een simpel berichtje naar een externe locatie. Dit kan een tweede server zijn, een serverless functie (zoals een AWS Lambda), of zelfs een simpele dienst zoals IFTTT of Zapier.

Als de heartbeat niet op tijd binnenkomt, activeert de externe dienst de noodprocedure.

Dit kan bijvoorbeeld een REST-API call zijn naar je broker om ALLE posities te sluiten. Of een script dat je Python-processen killt en een e-mail naar je telefoon stuurt. De timing is hierbij essentieel.

Je wilt niet dat de switch afgaat als je server een seconde vertraagd is. Daarom stel je een tolerantie in, bijvoorbeeld 3 tot 5 heartbeat-missen.

De bouwstenen voor je eigen switch

Als je heartbeat interval 60 seconden is, en je tolerantie 3 mislukte pulses, dan treedt de actie in werking na 3 minuten totaal stilte.

Dit voorkomt valse alarmen. Voor een simpele setup hoef je niet veel te bouwen. Je hebt je trading-server nodig (een Raspberry Pi 4 met 4GB RAM of een cheap cloud instance van DigitalOcean van €5/maand).

Op die server draait je Python-bot. Daarnaast heb je een externe 'monitor' nodig.

Dit kan een tweede, nog simpelere server zijn die alleen maar luistert.

De communicatie tussen de twee kan via een simpele POST-request via een lokaal netwerk (als ze in hetzelfde datacenter zitten) of via een secure endpoint. Een andere optie is het gebruiken van een broker-functie.

Sommige brokers hebben een 'Conditional Close' of 'OCO' (One-Cancels-Other) order type. Echter, dit werkt vaak alleen als de bot zelf de order plaatst. Als de bot crasht, mis je de trigger. Daarom is een externe monitor vaak betrouwbaarder.

Je kunt een script schrijven in Python dat via de 'requests' library om de zoveel seconden een ping stuurt.

De ontvanger (de switch) checkt of de tijd nu later is dan de laatste ping + de tolerantie. Zo ja, dan voert hij de actie uit. Dit is pure logica, geen magie.

Prijzen en modellen: van DIY tot kant-en-klare oplossingen

Er zijn verschillende niveaus van bescherming, afhankelijk van je budget en technische vaardigheid.

De goedkoopste en meest populaire optie onder retail traders is de DIY-aanpak. Dit kost je niets extra behalve tijd. Je kunt een script bouwen met Python en een cheap VPSje (zoals een €4/maand instance bij Vultr of Hetzner) als monitor. Als je hosting-provider al een monitoring-dienst aanbiedt (bijv.

UptimeRobot), kun je die soms misbruiken door een specifieke URL te pingen die de sluit-actie triggeren. De totale kosten: €0 tot €5 per maand. De moeilijkheidsgraad: gemiddeld.

Je moet je API-sleutels veilig opslaan en weten hoe je een script stabiel draaiend houdt.

Wil je meer zekerheid en minder eigen onderhoud? Dan kies je voor een Managed Service. Er zijn gespecialiseerde diensten voor crypto-traders die 'Safety Switches' aanbieden.

Denk aan diensten als Coinrule of 3Commas (hoewel die vaak ook de bot zelf zijn). Voor een simpele 'Dead Man' functionaliteit betaal je vaak tussen de €10 en €30 per maand.

Deze diensten bieden een dashboard, betere logging en vaak snellere reactietijden. Je koppelt je API-keys (vaak read-only voor monitoring, trade-only voor de sluit-functie) en zij regelen de rest. Dit is ideaal als je niet elke week je eigen server wilt onderhouden.

De duurste en meest robuuste oplossing is een enterprise-grade monitoring tool die draait naast je bot.

Dit is voor serieuze prop-traders of funds. Denk aan een setup met Grafana, Prometheus en Alertmanager, gekoppeld aan custom scripts.

Dit kost al snel €50-€100 per maand aan infrastructuur, maar biedt milliseconden-nauwkeurige detectie en failovers.

Veelgemaakte fouten bij het bouwen

Voor 99% van de traders is dit overkill. Een simpele Python-cronjob op een tweede server is vaak al voldoende om te voorkomen dat je je shirt verliest. Een veelvoorkomende valkuil is dat je de monitor op dezelfde server draait als je bot. Als de server crasht, zijn beide dood.

Dat is als een rookmelder die alleen werkt als er geen brand is. De monitor moet altijd extern zijn.

Een andere fout is het vergeten van error handling in je Python-script.

Als je heartbeat-script crasht, stopt de heartbeat. Je Dead Man's Switch moet dus een 'try-except' block hebben zodat hij probeert te pingen, en als dat mislukt, het opnieuw probeert of veilig afsluit. Vergeet ook niet je API-ratelimits te checken. Je wilt niet dat je broker je blokkeert omdat je te vaak een ping stuurt.

Praktische tips om je switch vandaag nog te regelen

Als je nu met een live bot draait, is dit het moment om actie te ondernemen. Begin met het opzetten van een simpele heartbeat.

Maak een apart Python-bestandje aan, bijvoorbeeld heartbeat.py. Zorg er eerst voor dat je je dependencies goed beheert, en laat dit script vervolgens een simpele POST-request sturen naar een URL die jij beheert.

Die URL logt de tijd van binnenkomst. Op een tweede locatie (bijvoorbeeld je laptop of een andere server) draai je een scriptje dat elk uur checkt: is de tijd van de laatste log ouder dan 2 uur geleden? Zo ja, stuur een e-mail naar jezelf en probeer via de broker-API alle posities te sluiten, of check je netwerkverbinding op latency.

Test je setup grondig. Zet je trading-server uit en kijk of je alarm afgaat.

Zet je internet uit en kijk wat er gebeurt. Simuleer een crash. Een goede Dead Man's Switch is als een parachute: je wilt 'm testen voordat je uit het vliegtuig springt. Zorg dat je weet wat de API-call precies doet. Weet je zeker dat je je broker correct afsluit als je bot een ghost trade opent?

Sommige brokers vereisen dat je per positie sluit. Schrijf dit soort dingen van tevoren uit in je code.

Een laatste tip: combineer de Dead Man's Switch met een 'Kill Switch' in je bot zelf. Je bot moet in staat zijn om op basis van eigen logica (bijv. verlieslimieten) zichzelf uit te schakelen. De Dead Man is de vangrails als de bestuurder in slaap valt.

De Kill Switch is de rem die de bestuurder zelf bedient. Beide zijn nodig voor een veilige rit. Hou het simpel, test het vaak, en slaap daarna pas echt rustig.

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 Foutmeldingen & Debugging Live Bots
Ga naar overzicht →