使用 Channel 属性选择频道类型:
您可以在 CryptoCom 属性中配置以下属性。
当客户端成功连接到 Crypto.com 服务器时,将触发事件 OnConnect。触发 OnConnect 事件后,您可以开始向/从 Crypto.com 服务器发送和接收消息。如果您要连接到用户频道,必须等到触发 OnCryptoComAuthentication 事件并检查 success 参数是否为 true,然后才能订阅任何私有频道。
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;
Crypto.com 客户端实现了以下事件,用于控制连接流程并获取 WebSocket 服务器发送的数据:
WebSocket 数据流提供订单和交易的实时市场数据更新。
您可以订阅以下市场频道(公开):
| 方法 | 描述 |
| SubscribeTicker | 订阅某个合约的行情流。提供实时价格和交易量数据。 |
| SubscribeTrade | 订阅某一品种的最新成交流。 |
| SubscribeCandlestick | 订阅 K 线数据流,支持多个时间间隔(如 5m、15m、30m、1h、4h、1D)。 |
| SubscribeBook | 订阅订单簿数据流,支持可配置的深度级别(如 10、50)。 |
您可以订阅以下用户频道(私有,需要身份验证):
| 方法 | 描述 |
| SubscribeOrders | 订阅订单更新,可选择按合约名称过滤。 |
| SubscribeUserTrades | 订阅用户交易更新。可选按合约名称过滤。 |
| SubscribeBalance | 订阅您账户的余额更新。 |
以下是订阅市场频道的示例。
procedure OnConnect(Connection: TsgcWSConnection);
begin
oCryptoCom.SubscribeTicker('BTC_USDT');
oCryptoCom.SubscribeBook('BTC_USDT', '10');
end;
REST API 提供公开和私有方法,用于从市场和私人账户请求数据。通过组件的 REST_API 属性访问 REST API。
| 方法 | 公开 / 私有 | 描述 |
| GetInstruments | 公开 | 获取可用合约列表。 |
| GetTicker | 公开 | 获取一个或所有合约的行情信息。 |
| GetOrderBook | 公开 | 获取某个金融工具的订单簿。 |
| GetTrades | 公开 | 获取某个合约的最新成交记录。 |
| GetCandlestick | 公开 | 获取某个合约的K线/蜡烛图数据。 |
| CreateOrder | 私有 | 创建新订单。支持限价单和市价单。 |
| CancelOrder | 私有 | 取消现有订单。 |
| CancelAllOrders | 私有 | 撤销某个合约的所有未平仓订单。 |
| GetOpenOrders | 私有 | 获取未结订单列表。 |
| GetOrderDetail | 私有 | 获取特定订单的详情。 |
| GetOrderHistory | 私有 | 获取历史订单。 |
| GetAccountSummary | 私有 | 获取账户摘要信息。 |
以下是使用 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;