Hoe bouw je een bot die handelt op basis van 'On-chain Data' (Whale alerts)?

Portret van Alex de Vries, Quantitatief Analist & Algo-Trading Expert
Alex de Vries
Quantitatief Analist & Algo-Trading Expert
Algoritmische Trading in de Crypto Markt · 2026-02-15 · 6 min leestijd

Stel je voor: een walvis verplaatst miljoenen dollars aan Bitcoin. Jij wilt dat weten, en wel meteen.

Niet morgen, niet over een uur, maar op het moment dat het gebeurt. Waarom? Omdat whale-activiteit vaak een voorbode is van grote koersbewegingen. In de wereld van algoritmische trading is die snelheid alles. Je bouwt een bot die luistert naar die signalen.

Dit is geen rocket science, maar het vereist wel de juiste tools en een ijzersterke focus op veiligheid. We gaan aan de slag met Python, Quicknode en een flinke dosis pragmatisme. Laten we beginnen.

Bouw een Real-Time Whale Alert Bot (Quicknode Guide)

De kern van je bot is een directe verbinding met de blockchain. Je wilt niet elke seconde de hele blockchain afstruinen (polling), dat is traag en duur.

Benodigdheden en Projectstructuur

Je wilt dat de data naar je toekomt. Quicknode Streams is hier perfect voor.

  • Node.js 20+ en npm: Quicknode vereist deze versie voor hun CLI-tool. Download het van de officiële site. (Tijd: 15 minuten)
  • Een Quicknode Account: Maak een account aan en zet een mainnet endpoint op (bijv. voor Ethereum). (Tijd: 10 minuten)
  • Een Python-omgeving: Gebruik Python 3.9+. Maak een virtuele omgeving met python -m venv venv. (Tijd: 5 minuten)
  • Een Code Editor: VS Code is prima.
  • Een Webhook URL: Je hebt een server nodig die data kan ontvangen. We bouwen die zo.

Het werkt op een push-model, wat betekent dat je betaalt per event, niet per seconde. Dit bespaart je een hoop geld en hoofdpijn. Voordat je een regel code schrijft, zorg je dat je fundament stevig is. Verzamel het volgende:

Je projectstructuur wordt simpel. Maak een map aan, bijvoorbeeld whale_bot.

python -m pip install flask py hmac requests ccxt

Daarin komen twee bestanden: requirements.txt voor je Python libraries en server.py voor je ontvangende script. Installeer de benodigde Python packages: Flask is om je webhook te ontvangen, py en hmac voor veiligheidschecks, en ccxt om later eventueel trades uit te voeren op een exchange.

Ontwikkel een AI Crypto Bot (Yellow.com Gids)

De term 'AI Bot' is een containerbegrip. In de context van whale-watching gaat het vaak om complexe regelsystemen die patronen herkennen in transacties.

Echte AI (machine learning) komt later, als je genoeg data hebt. Eerst bouwen we een slimme, automatische waarnemer.

Evolutie van Handelsautomatisering en AI Integratie

De wereld van geautomatiseerde systemen is enorm; volgens bron 2 voeren ze 70% tot 80% van alle crypto-transacties uit en verwerken ze dagelijks meer dan 50 miljard dollar. Je stapt in een wereld van high-frequency trading. Stap 1: Definieer een 'Whale'. Is het een transactie boven de 1.000.000 dollar?

Of een verplaatsing van 500 ETH van een bekende exchange-wallet naar een cold wallet?

Jij bepaalt de regels. Voorbeeld: een transactie groter dan $500k. Stap 2: Zet je Quicknode Stream op.

In je Quicknode dashboard kies je voor "Streams". Maak een nieuwe stream aan.

Kies de filter "Transaction" en zet een filter op "Value" (bijv. > 500000 USD).

Wijs de stream toe aan je webhook URL. Dit is je bron van data. Stap 3: Bouw je Flask-server.

In server.py zet je een eindpunt op dat POST-verzoeken aanneemt. Dit is je luisterpost.

Stap 4: Voeg veiligheid toe. Quicknode stuurt een HMAC-signature mee.

import hmac
import hashlib
from flask import Flask, request, jsonify

app = Flask(__name__)
SHARED_SECRET = b'jouw_geheime_sleutel_hier'  # Zet dit in een .env file!

@app.route('/webhook', methods=['POST'])
def handle_webhook():
    signature = request.headers.get('X-QN-Signature')
    payload = request.get_data()
    
    # Veiligheidscheck (essentieel!)
    expected_sig = hmac.new(SHARED_SECRET, payload, hashlib.sha256).hexdigest()
    if not hmac.compare_digest(signature, expected_sig):
        return jsonify({'error': 'Invalid signature'}), 403

    data = request.json
    # Verwerk de data hier (bijv. print(data) of stuur een alert)
    print(f"Nieuwe Whale transactie: {data['hash']}")
    
    return jsonify({'status': 'received'}), 200

if __name__ == '__main__':
    app.run(port=5000)

Je MOET deze controleren om te voorkomen dat iemand anders fake-data naar je bot stuurt en je orderboek manipuleert. Veiligheidstip: Gebruik nooit een 'if signature == expected_sig'.

Gebruik altijd hmac.compare_digest om timing-aanvallen te voorkomen. Dit is een veelgemaakte fout die je bot kwetsbaar maakt.

Monitor Whale Activiteit (Cryptocurrency Alerting)

Soms wil je niet meteen een trade uitvoeren, maar gewoon een waarschuwing krijgen.

Misschien wil je zelf de knoop doorhakken of een complexer signaal afwachten. Dan zijn externe alert-diensten handig. Een dienst als Cryptocurrency Alerting kan hierbij helpen.

Gebruikscasus en Alert Limieten

Ze bieden een Pro plan dat je in staat stelt tot 300 alerts te activeren. Dit is handig als je geen eigen server wilt onderhouden, maar wel specifieke voorwaarden wilt instellen (bijv.

"waarschuw me als de Bitcoin Dominance met 2% stijgt"). Zorg dat jouw crypto bot klaar is voor de volgende bull run door deze dienst te combineren met je eigen strategie.

Stel: je Quicknode bot ziet een grote beweging. Je script kan dan via de API van Cryptocurrency Alerting een notificatie sturen naar je Telegram of Discord. Door on-chain data te integreren in je algoritme, scheid je de detectie (Quicknode) van je notificatie (externe dienst). Let op de limieten.

300 alerts klinkt als veel, maar als je een bot draait die kijkt naar alle transacties boven de $100k op Ethereum, kun je die limiet snel raken. Je moet je filters dus scherp zetten. Richt je op specifieke wallets of specifieke tokens.

Integratie met Brokers en Exchanges (CCXT)

Nu je weet dat er een whale is, wil je misschien handelen. Je wilt niet handmatig inloggen op Binance of Kraken.

Je wilt dat je bot de order plaatst. Hiervoor gebruik je CCXT. Combineer dit eventueel met sentimentdata via de Fear & Greed Index, een bibliotheek die een standaardinterface biedt naar tientallen exchanges.

Of je nu backtesting doet of live trades plaatst, CCXT zorgt dat de syntax hetzelfde blijft.

Voeg je exchange-API sleutels toe aan je configuratie (nooit in je code!). Gebruik de CCXT library om een market order te plaatsen zodra je whale-alert afgaat. Stappen voor orderplaatsing:

  1. Importeer ccxt: import ccxt.
  2. Instantieer de exchange: exchange = ccxt.binance({'apiKey': '...', 'secret': '...'}).
  3. Voer de check uit: "Is de whale een koop- of verkoopsignaal?" (Dit hangt af van je strategie, bijv. grote instroom = koop).
  4. Plaats de order: exchange.create_market_buy_order('BTC/USDT', 0.01).

Risicomanagement en Juridische Valkuilen

Automatisch traden op basis van data is machtig, maar gevaarlijk. Een foutje in je code kan je hele portefeuille leegtrekken.

Er zijn verhalen van bots die door een bug oneindig veel orders plaatsten.

Daarnaast kijkt de overheid streng naar crypto. Veelgemaakte fouten en hoe je ze oplost:

  • Fout: Geen maximum ordergrootte instellen. Oplossing: Codeer een hard limiet. Bijvoorbeeld: "Trade nooit meer dan 1% van mijn totale portfolio."
  • Fout: Geen veiligheidschecks op payloads. Oplossing: Implementeer altijd die HMAC-check zoals hierboven beschreven.
  • Fout: De juridische context negeren. Oplossing: Wees je bewust van regelgeving. In de EU is de MiCA (Markets in Crypto-Assets) wetgeving van kracht. In de VS houden de SEC en CFTC toezicht. Zorg dat je bot geen marktmanipulatie pleegt (bijv. door met hoge frequentie fake orders te plaatsen). Dit is niet alleen moreel verkeerd, maar kan je een boete of zelfs celstraf opleveren.

Verificatie-Checklist

Voordat je live gaat, loop je dit lijstje af. Wees streng voor jezelf.

  • Environment: Draait Node.js 20+ en Python 3.9+?
  • Veiligheid: Staan je API-sleutels in een `.env` bestand en niet in de code?
  • Webhook: Is de HMAC-signature check geïmplementeerd en getest?
  • Limieten: Is er een maximum bedrag per trade en per dag gecodeerd?
  • Backtesting: Heb je je strategie getest op historische data (via CCXT of een aparte backtesting tool) om te zien of het idee logisch is?
  • Monitoring: Weet je hoe je de bot kunt stoppen als het misgaat?

Als je deze stappen hebt doorlopen, ben je klaar. Je hebt een fundament gelegd voor een geavanceerd trading systeem. Blijf testen, blijf leren, en vergeet niet: de markt is meedogenloos, maar een goede voorbereiding is je beste bescherming.

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 Algoritmische Trading in de Crypto Markt
Ga naar overzicht →