CEX Plus-API-update sgcWebSockets

· Functies
CEX.IO Plus WebSocket-API-integratie in Delphi

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

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.

Tip: Use 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.