Binance bietet eine Vielzahl von Kanälen, die Sie abonnieren können, um Echtzeit-Updates zu Marktdaten, Orders... zu erhalten Nachfolgend finden Sie ein Beispiel für das Abonnieren eines Tickers:
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 schließt eine Verbindung, die mehr als 5 Nachrichten pro Sekunde sendet, sodass es schon ausreichen kann, eine Watchlist mit mehreren Symbolen durch Aufrufe der einzelnen Subscribe-Methoden in einer Schleife zu abonnieren, um die Verbindung zu verlieren. Rufen Sie SubscribeStreams mit einem Array von Stream-Namen auf, und der Client sendet einen einzigen Frame statt eines Frames pro Stream. UnsubscribeStreams funktioniert auf die gleiche Weise. Beide Methoden geben den Bezeichner der an den Server gesendeten Nachricht zurück.
oBinance.SubscribeStreams(['btcusdt@aggTrade', 'btcusdt@depth', 'ethusdt@aggTrade']);
// and to unsubscribe
oBinance.UnsubscribeStreams(['btcusdt@aggTrade', 'btcusdt@depth']);
Wenn die Anwendung dennoch viele Nachrichten in kurzer Zeit senden muss, aktivieren Sie die Option Throttle des API-Clients, die begrenzt, wie viele Nachrichten der Client innerhalb eines Zeitfensters sendet. Lesen Sie WebSocket-APIs für die Details.