Binance offre una varietà di canali a cui è possibile sottoscriversi per ricevere aggiornamenti in tempo reale di dati di mercato, ordini... Di seguito è riportato un esempio di come sottoscriversi a un Ticker:
oClient := TsgcWebSocketClient.Create(nil);
oBinance := TsgcWSAPI_Binance.Create(nil);
oBinance.Client := oClient;
oBinance.SubscribeTicker('bnbbtc');
procedure OnMessage(Connection: TsgcWSConnection; const aText: string);
begin
// here you will receive the ticker updates
end;
Binance chiude una connessione che invia più di 5 messaggi al secondo, quindi sottoscrivere una watchlist di diversi simboli chiamando i singoli metodi Subscribe in un ciclo può bastare per perdere la connessione. Chiamare SubscribeStreams con un array di nomi di stream e il client invia un singolo frame invece di un frame per ogni stream. UnsubscribeStreams funziona allo stesso modo. Entrambi i metodi restituiscono l'identificatore del messaggio inviato al server.
oBinance.SubscribeStreams(['btcusdt@aggTrade', 'btcusdt@depth', 'ethusdt@aggTrade']);
// and to unsubscribe
oBinance.UnsubscribeStreams(['btcusdt@aggTrade', 'btcusdt@depth']);
Se l'applicazione deve comunque inviare molti messaggi in poco tempo, abilitare l'opzione Throttle del client API, che limita quanti messaggi il client invia all'interno di una finestra temporale. Leggere API WebSocket per i dettagli.