Binance ofrece una variedad de canales donde puede suscribirse para obtener actualizaciones en tiempo real de datos de mercado, órdenes... A continuación encontrará un ejemplo de cómo suscribirse 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 cierra una conexión que envía más de 5 mensajes por segundo, por lo que suscribirse a una lista de seguimiento de varios símbolos llamando a los métodos Subscribe individuales dentro de un bucle puede bastar para perder la conexión. Llame a SubscribeStreams con un array de nombres de flujo y el cliente envía un único marco en lugar de un marco por flujo. UnsubscribeStreams funciona de la misma manera. Ambos métodos devuelven el identificador del mensaje enviado al servidor.
oBinance.SubscribeStreams(['btcusdt@aggTrade', 'btcusdt@depth', 'ethusdt@aggTrade']);
// and to unsubscribe
oBinance.UnsubscribeStreams(['btcusdt@aggTrade', 'btcusdt@depth']);
Si la aplicación todavía necesita enviar muchos mensajes en poco tiempo, habilite la opción Throttle del cliente de API, que limita cuántos mensajes envía el cliente dentro de una ventana de tiempo. Lea APIs WebSocket para conocer los detalles.