Portfolio

Crypto handelaar: grid trading platform Botje met multi-exchange API-koppeling

Grid trading bot die 24/7 koopt en verkoopt op vijf crypto-exchanges, met realtime dashboard en winstoverzicht.

Crypto handelaar: grid trading platform Botje met multi-exchange API-koppeling

Intro

Voor een professionele crypto handelaar bouwde CodeDivers Botje: een maatwerk grid trading platform dat automatisch koopt en verkoopt op meerdere exchanges. De klant handelde actief op verschillende platforms, maar het handmatig beheren van honderden prijsniveaus, orderstatussen en winstberekeningen over Binance, Bitvavo, Kraken, Bybit en Revolut was niet schaalbaar.

De vraag was helder: één betrouwbaar systeem dat 24/7 koersen volgt, grid-posities beheert en orders uitvoert — met een overzichtelijk dashboard voor winst, transacties en open posities.

De uitdaging

Grid trading op crypto-exchanges is technisch veeleisend. Elke exchange heeft een eigen API met verschillende authenticatie, rate limits, orderformaten en afrondingsregels. Revolut X gebruikt Ed25519-signing in plaats van de standaard HMAC-aanpak van andere platforms. Crypto-prijzen vereisen extreme decimale precisie — fouten in afronding leiden direct tot mislukte of onjuiste orders.

Organisatorisch speelde mee dat de handelaar parallel op meerdere markten en exchanges opereerde. Zonder centraal systeem was er geen uniform overzicht van posities, winst per grid en orderstatus. Handmatig handelen kostte tijd en was niet reproduceerbaar op schaal.

Onze aanpak

CodeDivers startte met een heldere architectuur: een exchange-abstraction layer waarbij alle platforms via dezelfde interface orders plaatsen en tickers ophalen. Voor de gangbare exchanges werd de CCXT-bibliotheek ingezet; voor Revolut X ontwikkelden we een eigen CCXT-compatibele wrapper met Ed25519-signing en veilige orderafhandeling.

De grid-logica werkt op basis van vooraf gedefinieerde prijsniveaus (seeds): bij elke cron-run haalt de bot de actuele koers op, vergelijkt die met open posities en plaatst buy- of sell-orders wanneer de markt een grid-niveau raakt. Alle transacties, koersen en winsten worden in MySQL vastgelegd voor rapportage en analyse.

Tijdens de realisatie bouwden we een klikdemo en verbose debug-modus: elke stap in het trading-proces is zichtbaar en controleerbaar. Een dry-run modus maakt het mogelijk om het volledige pad te testen zonder live orders of database-wijzigingen. Zo werd de onderbouw — van architectuur tot productie-omgeving — stap voor stap gevalideerd.

Wat we hebben gebouwd

  • Grid trading engine — automatische buy/sell op vooraf ingestelde prijsniveaus met take-profit per positie
  • Multi-exchange connector — uniforme interface voor Binance, Bitvavo, Kraken, Bybit en Revolut X
  • Seed generator — grid-posities aanmaken over een prijsbereik met configureerbare stapgrootte en winstmarge
  • Realtime koersregistratie — ticker-data per exchange en markt, met detectie van abnormale koerssprongen
  • Order lifecycle tracking — statussen van OPEN tot BUY_FILLED en SELL_FILLED, inclusief partiële fills
  • Dashboard en winstoverzicht — winst per grid, per exchange en per markt met grafieken (Flot)
  • Positie-grid visualisatie — interactief overzicht van actieve, gevulde en verkochte grid-niveaus
  • Transactielog en saldi — volledige historie en balance-overzicht per exchange
  • Market data import — klines en historische koersdata voor analyse
  • Dry-run en testnet — veilig testen zonder live orders (Binance testnet, verbose debug-modus)
  • Foutafhandeling en alerting — e-mailmelding bij netwerk- of exchange-fouten en grote koerswijzigingen

Technologie & integraties

Stack: PHP, MySQL/MariaDB, Composer, Bootstrap 5, jQuery, Flot (grafieken), GMP/BCMath voor decimale precisie, cron-gestuurde uitvoering.

API-koppelingen:

  • Binance — spot trading via CCXT (productie en testnet)
  • Bitvavo — Nederlandse exchange, EUR-paren (BTC/EUR, ETH/EUR)
  • Kraken — met aangepaste precisie-afhandeling voor grote exponenten
  • Bybit — leveraged tokens en spot
  • Revolut X — eigen client met Ed25519-signing en CCXT-compatibele wrapper

Alle exchanges communiceren realtime via REST API's: tickers, balances, order placement en order status. De architectuur is uitbreidbaar — nieuwe exchanges toevoegen vereist alleen configuratie en een connector.

Resultaat

De handelaar opereert nu vanuit één platform over vijf exchanges, met honderden grid-posities die 24/7 automatisch worden beheerd. Handmatig orders plaatsen en statussen controleren is niet meer nodig — de bot voert het grid-algoritme consistent uit op elke cron-run.

Het dashboard geeft realtime inzicht in winst per grid, open posities en transactiehistorie. De dry-run modus en klikdemo maken het systeem controleerbaar en onderhoudbaar. Het platform draait sinds april 2022 in productie en is door CodeDivers verder uitgebreid met nieuwe exchanges en functionaliteiten.

Waarom dit project telt

Dit project laat zien dat CodeDivers complexe, realtime API-koppelingen end-to-end realiseert — niet alleen een standaard integratie, maar een volledig maatwerk trading platform met eigen algoritme, multi-exchange abstractie en productie-grade betrouwbaarheid. Voor organisaties die data van meerdere externe platforms moeten combineren, automatiseren en visualiseren, is dit het type project waar onze architectuur- en bouwexpertise het verschil maakt.

Call-to-action

Heeft u een vergelijkbare uitdaging met API-koppelingen, geautomatiseerde processen of een maatwerk dashboard? Neem contact op via codedivers.nl — we denken graag mee over architectuur en realisatie.

Gebruikte technologieën

  • php
  • mysql
  • ccxt
  • api
  • bootstrap
  • jquery
  • flot
  • composer
  • cron
  • gmp
  • rest
  • crypto

Gerealiseerd in: