Utilize a propriedade GateIOChannel para selecionar o tipo de canal:
Você pode configurar as seguintes propriedades na propriedade GateIO.
Quando o cliente se conecta com sucesso aos servidores da Gate.io, o evento OnConnect é disparado. Após o evento OnConnect ser disparado, você pode começar a enviar e receber mensagens de/para os servidores da Gate.io. Se você estiver se conectando ao canal websocket privado, deve aguardar até que o evento OnGateIOAuthentication seja disparado e verificar se o parâmetro success é true, antes de assinar qualquer canal privado.
oClient := TsgcWebSocketClient.Create(nil);
oGateIO := TsgcWS_API_GateIO.Create(nil);
oGateIO.Client := oClient;
oGateIO.GateIO.ApiKey := 'your_api_key';
oGateIO.GateIO.ApiSecret := 'your_api_secret';
oGateIO.GateIOChannel := giocSpot;
oClient.Active := True;
procedure OnConnect(Connection: TsgcWSConnection);
begin
DoLog('#GateIO Connected');
end;
O cliente GateIO implementa os seguintes eventos para controlar o fluxo da conexão e obter os dados enviados pelo servidor WebSocket:
O feed websocket fornece atualizações de market data em tempo real para ordens e negociações.
Você pode se inscrever nos seguintes canais:
| Method | Público ou privado | Descrição |
| SubscribeTicker | Public | Inscreve-se no stream de ticker de um símbolo. |
| SubscribeTrades | Public | Assine o stream de trades recentes. |
| SubscribeCandlesticks | Public | Assine o stream de candlestick. Suporta múltiplos intervalos (por exemplo 1m, 5m, 15m, 30m, 1h). |
| SubscribeOrderBook | Public | Assina o stream do livro de ordens. Suporta níveis de profundidade configuráveis e intervalos de atualização. |
| SubscribeOrders | Private | Assina atualizações de ordens. Requer autenticação. |
| SubscribeBalances | Private | Assinar atualizações de saldo. Requer autenticação. |
Veja abaixo um exemplo de assinatura de canais websocket públicos.
procedure OnConnect(Connection: TsgcWSConnection);
begin
oGateIO.SubscribeTicker('BTC_USDT');
oGateIO.SubscribeOrderBook('BTC_USDT', '20', '100ms');
end;
A REST API fornece métodos Públicos e Privados para solicitar dados de mercados e de contas privadas. Acesse a REST API através da propriedade REST_API do componente.
| Method | Público / Privado | Descrição |
| GetCurrencyPairs | Public | Obter informações sobre os pares de moedas disponíveis. |
| GetTickers | Public | Obtém informações de ticker de um ou de todos os pares de moedas. |
| GetOrderBook | Public | Obter o order book de um par de moedas. |
| GetCandlesticks | Public | Obtém dados de candlestick/kline para um par de moedas. |
| GetTrades | Public | Obtém os trades mais recentes de um par de moedas. |
| PlaceOrder | Private | Coloca uma nova ordem. Suporta ordens limit e market. |
| CancelOrder | Private | Cancela uma ordem existente. |
| GetOrder | Private | Obter detalhes de uma ordem específica. |
| GetOpenOrders | Private | Obter a lista de ordens abertas. |
| GetSpotAccounts | Private | Obter informações da conta spot. |
Encontre abaixo um exemplo de uso da REST API.
oGateIO := TsgcWS_API_GateIO.Create(nil);
oGateIO.GateIO.ApiKey := 'your_api_key';
oGateIO.GateIO.ApiSecret := 'your_api_secret';
// Get tickers
oGateIO.REST_API.GetTickers('BTC_USDT');
// Place an order
oGateIO.REST_API.PlaceOrder('BTC_USDT', 'buy', '0.001', '50000', 'limit');