使用 BitgetChannel 属性选择通道类型:
您可以在 Bitget 属性中配置以下属性。
当客户端成功连接到 Bitget 服务器时,触发 OnConnect 事件。触发 OnConnect 事件后,您可以开始向 Bitget 服务器发送和接收消息。如果您正在连接私有 WebSocket 频道,则必须等到触发 OnBitgetAuthentication 事件且检查 success 参数为 True 后,才能订阅任何频道。
oClient := TsgcWebSocketClient.Create(nil);
oBitget := TsgcWS_API_Bitget.Create(nil);
oBitget.Client := oClient;
oBitget.Bitget.ApiKey := 'your_api_key';
oBitget.Bitget.ApiSecret := 'your_api_secret';
oBitget.Bitget.Passphrase := 'your_passphrase';
oBitget.BitgetChannel := bgcSpot;
oClient.Active := True;
procedure OnConnect(Connection: TsgcWSConnection);
begin
DoLog('#Bitget Connected');
end;
Bitget 客户端实现以下事件,用于控制连接流程并获取 WebSocket 服务器发送的数据:
WebSocket 数据流提供订单和交易的实时市场数据更新。
您可以订阅以下频道:
| 方法 | 公共或私有 | 描述 |
| SubscribeTicker | 公开 | 订阅某一合约的行情流。 |
| SubscribeTrade | 公开 | 订阅最新成交流。 |
| SubscribeCandle | 公开 | 订阅 K 线数据流,支持多种时间间隔(如 candle1m、candle5m、candle1H)。 |
| SubscribeOrderBook | 公开 | 订阅订单簿流。支持不同的深度级别。 |
| SubscribeOrders | 私有 | 订阅订单更新。需要身份验证。 |
| SubscribePositions | 私有 | 订阅持仓更新。需要身份验证。 |
| SubscribeAccount | 私有 | 订阅账户余额更新。需要身份验证。 |
以下是成功身份验证后订阅私有 WebSocket 频道的示例。
procedure OnBitgetAuthentication(Sender: TObject; aSuccess: Boolean; const aError, aRawMessage: string);
begin
if aSuccess then
begin
oBitget.SubscribeOrders('BTCUSDT');
oBitget.SubscribeAccount();
end;
end;
REST API 提供公开和私有方法,用于从市场和私人账户请求数据。通过组件的 REST_API 属性访问 REST API。
| 方法 | 公开 / 私有 | 描述 |
| GetServerTime | 公开 | 获取服务器时间。 |
| GetTickers | 公开 | 获取一个或所有交易对的行情信息。 |
| GetOrderBook | 公开 | 获取某个交易对的订单簿。 |
| GetCandles | 公开 | 获取某个交易对的蜡烛图/K 线数据。 |
| GetRecentTrades | 公开 | 获取某个交易对的最新成交记录。 |
| PlaceOrder | 私有 | 下新订单。 |
| CancelOrder | 私有 | 取消现有订单。 |
| GetOpenOrders | 私有 | 获取未结订单列表。 |
| GetOrderDetail | 私有 | 获取特定订单的详情。 |
| GetOrderHistory | 私有 | 获取历史订单。 |
| GetAccountAssets | 私有 | 获取账户资产信息。 |
| GetAccountInfo | 私有 | 获取账户信息。 |
以下是使用 REST API 的示例。
oBitget := TsgcWS_API_Bitget.Create(nil);
oBitget.Bitget.ApiKey := 'your_api_key';
oBitget.Bitget.ApiSecret := 'your_api_secret';
oBitget.Bitget.Passphrase := 'your_passphrase';
// Get tickers
oBitget.REST_API.GetTickers('SPOT');
// Place an order
oBitget.REST_API.PlaceOrder('BTCUSDT', 'buy', 'market', 'normal', '0.01');