Utilize a propriedade Channel para selecionar o tipo de canal:
Você pode configurar as seguintes propriedades na propriedade CryptoCom.
Quando o cliente conecta com sucesso aos servidores Crypto.com, o evento OnConnect é disparado. Após o evento OnConnect ser disparado, você pode começar a enviar e receber mensagens de/para os servidores Crypto.com. Se você está conectando ao canal User, deve aguardar até que o evento OnCryptoComAuthentication seja disparado e verificar se o parâmetro success é true, antes de assinar qualquer canal privado.
oClient := TsgcWebSocketClient.Create(nil);
oCryptoCom := TsgcWS_API_CryptoCom.Create(nil);
oCryptoCom.Client := oClient;
oCryptoCom.CryptoCom.ApiKey := 'your_api_key';
oCryptoCom.CryptoCom.ApiSecret := 'your_api_secret';
oCryptoCom.Channel := cccMarket;
oClient.Active := True;
procedure OnConnect(Connection: TsgcWSConnection);
begin
DoLog('#CryptoCom Connected');
end;
O cliente Crypto.com implementa os seguintes eventos para controlar o fluxo de 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 assinar os seguintes canais de Mercado (públicos):
| Method | Descrição |
| SubscribeTicker | Assina o stream de ticker de um instrumento. Fornece dados de preço e volume em tempo real. |
| SubscribeTrade | Inscreve-se no stream de negociações recentes de um instrumento. |
| SubscribeCandlestick | Assina o stream de candlesticks. Suporta múltiplos intervalos (por exemplo, 5m, 15m, 30m, 1h, 4h, 1D). |
| SubscribeBook | Assina o stream do livro de ofertas. Suporta níveis de profundidade configuráveis (por exemplo, 10, 50). |
Você pode assinar os seguintes canais de Usuário (privados, requerem autenticação):
| Method | Descrição |
| SubscribeOrders | Assina atualizações de ordens. Opcionalmente filtra por nome do instrumento. |
| SubscribeUserTrades | Assine as atualizações de negociações do usuário. Opcionalmente filtre por nome do instrumento. |
| SubscribeBalance | Inscreve-se nas atualizações de saldo da sua conta. |
Veja abaixo um exemplo de assinatura de canais de mercado.
procedure OnConnect(Connection: TsgcWSConnection);
begin
oCryptoCom.SubscribeTicker('BTC_USDT');
oCryptoCom.SubscribeBook('BTC_USDT', '10');
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 |
| GetInstruments | Public | Obtém a lista de instrumentos disponíveis. |
| GetTicker | Public | Obtém informações de ticker para um ou todos os instrumentos. |
| GetOrderBook | Public | Obter o order book de um instrumento. |
| GetTrades | Public | Obtém as negociações mais recentes de um instrumento. |
| GetCandlestick | Public | Obtém dados de candlestick/kline para um instrumento. |
| CreateOrder | Private | Cria uma nova ordem. Suporta ordens limitadas e a mercado. |
| CancelOrder | Private | Cancela uma ordem existente. |
| CancelAllOrders | Private | Cancela todas as ordens abertas de um instrumento. |
| GetOpenOrders | Private | Obter a lista de ordens abertas. |
| GetOrderDetail | Private | Obter detalhes de uma ordem específica. |
| GetOrderHistory | Private | Obtém o histórico de ordens. |
| GetAccountSummary | Private | Obter informações de resumo da conta. |
Encontre abaixo um exemplo de uso da REST API.
oCryptoCom := TsgcWS_API_CryptoCom.Create(nil);
oCryptoCom.CryptoCom.ApiKey := 'your_api_key';
oCryptoCom.CryptoCom.ApiSecret := 'your_api_secret';
// Get instruments
oCryptoCom.REST_API.GetInstruments;
// Create an order
oCryptoCom.REST_API.CreateOrder('BTC_USDT', 'BUY', 'MARKET', '', '0.001');
// Get account summary
oCryptoCom.REST_API.GetAccountSummary;