Binance | Subscribe WebSocket Channel

A Binance oferece uma variedade de canais nos quais você pode assinar para obter atualizações em tempo real de dados de mercado, ordens... Veja abaixo um exemplo de como assinar um 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;

Assinar Vários Streams com um Único Frame

A Binance fecha a conexão que envia mais de 5 mensagens por segundo, portanto assinar uma lista de vários símbolos chamando os métodos Subscribe individuais dentro de um laço já pode ser suficiente para perder a conexão. Chame SubscribeStreams com um array de nomes de streams e o cliente envia um único frame em vez de um frame por stream. UnsubscribeStreams funciona da mesma maneira. Ambos os métodos retornam o identificador da mensagem enviada ao servidor.


oBinance.SubscribeStreams(['btcusdt@aggTrade', 'btcusdt@depth', 'ethusdt@aggTrade']);

// and to unsubscribe
oBinance.UnsubscribeStreams(['btcusdt@aggTrade', 'btcusdt@depth']);

Se a aplicação ainda precisar enviar muitas mensagens em pouco tempo, habilite a opção Throttle do cliente de API, que limita quantas mensagens o cliente envia dentro de uma janela de tempo. Leia WebSocket APIs para os detalhes.