CEX.IO Plus is het geavanceerde tradingplatform van CEX.IO, ontworpen voor professionele en institutionele traders. De component TsgcWSAPI_CexPlus biedt uitgebreide Delphi-toegang tot zijn WebSocket-API, voor market data-subscriptions, orderbeheer, accountbewerkingen en fund-transfers — allemaal via één persistente verbinding.
Inhoudsopgave
- Overzicht
- Aan de slag
- Publieke WebSocket-methoden
- Market data-methoden
- Account- en trading-methoden
- Codevoorbeeld
- Configuratie en opmerkingen
Overzicht
De CEX.IO Plus-API breidt het standaard CEX.IO-aanbod aanzienlijk uit. Het biedt drie niveaus functionaliteit: publieke subscriptions voor realtime order book- en trade-feeds, market data-queries voor on-demand snapshots van tickers, candles en beursinformatie, en account-methoden voor volledige trading-bewerkingen inclusief orderbeheer, fee-queries, transactiegeschiedenis en fund-transfers. De component TsgcWSAPI_CexPlus bundelt al deze mogelijkheden.
Aan de slag
Maak een TsgcWebSocketClient- en een TsgcWSAPI_CexPlus-component aan, koppel ze, en configureer je API-credentials. De component verbindt automatisch met het CEX.IO Plus-WebSocket-endpoint.
oClient := TsgcWebSocketClient.Create(nil);
oCexPlus := TsgcWSAPI_CexPlus.Create(nil);
oCexPlus.Client := oClient;
oCexPlus.CexPlus.ApiKey := 'your_api_key';
oCexPlus.CexPlus.ApiSecret := 'your_api_secret';
oClient.Active := True;
Opmerking: CEX.IO Plus gebruikt een ander API-endpoint en authenticatieschema dan de standaard CEX.IO-API. Zorg dat je API-credentials zijn gegenereerd vanuit het CEX.IO Plus-dashboard, niet vanuit het standaard CEX.IO-platform.
Publieke WebSocket-methoden
Publieke subscription-methoden leveren streaming realtime data zonder authenticatie. Deze zijn ideaal voor marktmonitoring en het bouwen van live datafeeds.
| Methode | Beschrijving |
|---|---|
SubscribeOrderBook |
Abonneert op realtime order-book-updates voor een handelspaar. |
UnSubscribeOrderBook |
Meldt zich af voor order-book-updates van een handelspaar. |
SubscribeTrade |
Abonneert op de live-trade-feed voor een handelspaar. |
UnSubscribeTrade |
Meldt zich af voor de trade-feed. |
// Subscribe to BTC-USD order book and trades
oCexPlus.SubscribeOrderBook('BTC-USD');
oCexPlus.SubscribeTrade('BTC-USD');
// Unsubscribe when no longer needed
oCexPlus.UnSubscribeOrderBook('BTC-USD');
oCexPlus.UnSubscribeTrade('BTC-USD');
Market data-methoden
Market data-methoden geven on-demand snapshots van beursgegevens terug. In tegenstelling tot subscriptions zijn dit request-response-aanroepen die één resultaat teruggeven.
| Methode | Beschrijving |
|---|---|
GetTicker |
Haalt de huidige ticker (bid, ask, laatste prijs) op voor een paar. |
GetOrderBook |
Haalt de huidige order-book-snapshot voor een paar op. |
GetCandles |
Haalt OHLCV-candle-data voor grafieken op. |
GetTradeHistory |
Haalt de recente publieke trade-historie voor een paar op. |
GetServerTime |
Haalt de huidige server-tijdstempel op voor synchronisatie. |
GetPairsInfo |
Haalt informatie op over alle beschikbare handelsparen. |
GetCurrenciesInfo |
Haalt informatie op over alle ondersteunde valuta's. |
GetProcessingInfo |
Haalt de verwerkingsdetails voor deposits en withdrawals op. |
Market data opvragen
// Get current ticker for BTC-USD
oCexPlus.GetTicker('BTC-USD');
// Get order book snapshot
oCexPlus.GetOrderBook('BTC-USD');
// Get candle data for charting
oCexPlus.GetCandles('BTC-USD');
// Get available trading pairs
oCexPlus.GetPairsInfo;
Account- en trading-methoden
Account-methoden vereisen authenticatie en bieden volledige trading-mogelijkheden, waaronder order-plaatsing, accountstatuscontroles, fee-beheer en fund-transfers.
Accountbeheer
| Methode | Beschrijving |
|---|---|
Ping |
Verstuurt een keepalive-ping om de verbinding actief te houden. |
CreateAccount |
Maakt een nieuw sub-account aan op het platform. |
GetAccountStatus |
Haalt de huidige accountstatus en -details op. |
GetCurrentFee |
Haalt het huidige trading-fee-tarief voor het account op. |
GetFeeStrategy |
Haalt de fee-strategie en tier-informatie op. |
GetVolume |
Haalt het trading-volume op voor berekening van de fee-tier. |
Orderbeheer
| Methode | Beschrijving |
|---|---|
GetOrders |
Haalt alle openstaande orders op het account op. |
NewOrder |
Plaatst een nieuwe order met volledige parametercontrole. |
NewMarketOrder |
Plaatst een market-order die wordt uitgevoerd tegen de huidige beste prijs. |
NewLimitOrder |
Plaatst een limit-order tegen een opgegeven prijs. |
CancelOrder |
Annuleert een specifieke openstaande order via het ID. |
CancelAllOrders |
Annuleert alle openstaande orders ineens. |
Geschiedenis en fondsen
| Methode | Beschrijving |
|---|---|
GetTransactionHistory |
Haalt de transactiegeschiedenis van het account op. |
GetFundingHistory |
Haalt de deposit- en withdrawal-historie op. |
InternalTransfer |
Verplaatst fondsen intern tussen sub-accounts. |
GetDepositAddress |
Genereert of haalt een deposit-adres op voor een valuta. |
FundsDepositFromWallet |
Stort fondsen vanuit een externe wallet in het trading-account. |
FundsWithdrawalToWallet |
Onttrekt fondsen vanuit het trading-account naar een externe wallet. |
Codevoorbeeld
Het volgende voorbeeld toont verbinden met CEX.IO Plus, accountstatus controleren, abonneren op het order book en een market-order plaatsen.
oClient := TsgcWebSocketClient.Create(nil);
oCexPlus := TsgcWSAPI_CexPlus.Create(nil);
oCexPlus.Client := oClient;
oCexPlus.CexPlus.ApiKey := 'your_api_key';
oCexPlus.CexPlus.ApiSecret := 'your_api_secret';
oClient.Active := True;
// Get account status
oCexPlus.GetAccountStatus;
// Subscribe to order book
oCexPlus.SubscribeOrderBook('BTC-USD');
// Place a market order
oCexPlus.NewMarketOrder('BTC', 'USD', cxpsBuy);
Verschillende ordertypen plaatsen
CEX.IO Plus ondersteunt meerdere ordertypen. Gebruik NewMarketOrder voor directe uitvoering tegen de best beschikbare prijs, NewLimitOrder voor prijsspecifieke orders of NewOrder voor volledige parametercontrole.
// Market order: buy BTC with USD at market price
oCexPlus.NewMarketOrder('BTC', 'USD', cxpsBuy);
// Limit order: buy BTC at a specific price
oCexPlus.NewLimitOrder('BTC', 'USD', cxpsBuy, 0.01, 30000);
// Cancel a specific order
oCexPlus.CancelOrder('order-id-here');
// Cancel all open orders
oCexPlus.CancelAllOrders;
Fund-transfers
De component ondersteunt interne fund-transfers tussen sub-accounts evenals deposit- en withdrawal-bewerkingen.
// Get deposit address for BTC
oCexPlus.GetDepositAddress('BTC');
// Retrieve funding history
oCexPlus.GetFundingHistory;
// Transfer funds between sub-accounts
oCexPlus.InternalTransfer('from-account', 'to-account', 'BTC', 0.5);
Configuratie en opmerkingen
API-credentials
Genereer je API-sleutel en -secret via het CEX.IO Plus-platform. Deze zijn anders dan de standaard CEX.IO-credentials. Zorg dat de API-sleutel de juiste rechten heeft voor de bewerkingen die je wilt uitvoeren (bijv. trading, withdrawal).
Naamgeving van paren
CEX.IO Plus gebruikt een paar-formaat met streepje zoals BTC-USD, in tegenstelling tot de standaard CEX.IO-API, die aparte base- en quote-currency-parameters gebruikt. Gebruik altijd het streepje-formaat bij subscription-methoden en market-data-queries.
Order-side-enumeratie
Order-methoden gebruiken de enum-waarden cxpsBuy en cxpsSell om de richting van de order op te geven. Deze zijn specifiek voor de CEX.IO Plus-component en verschillen van de enumeratie van de standaard CEX.IO.
Verbindings-keepalive
Roep de methode Ping regelmatig aan om de geauthenticeerde sessie actief te houden. Dat voorkomt dat de server de verbinding wegens inactiviteit sluit.
GetPairsInfo and GetCurrenciesInfo at startup to dynamically discover available trading pairs and supported currencies, rather than hardcoding them in your application.
Foutafhandeling
Alle responses van CEX.IO Plus bevatten een status-veld. Handel foutresponses af in het message-event van de component door de response-status en de foutdetails te controleren. Veelvoorkomende fouten zijn onvoldoende saldo, ongeldige paar-namen en authenticatiefouten.
