API GateIO

Gate.io

支持的 API

属性

使用 GateIOChannel 属性选择频道类型:

您可以在 GateIO 属性中配置以下属性。

连接

当客户端成功连接到 Gate.io 服务器时,触发 OnConnect 事件。触发 OnConnect 事件后,您可以开始向 Gate.io 服务器发送接收消息。如果您正在连接私有 WebSocket 频道,则必须等到触发 OnGateIOAuthentication 事件且检查 success 参数为 True 后,才能订阅任何私有频道。


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;

事件

GateIO 客户端实现了以下事件,用于控制连接流程并获取 WebSocket 服务器发送的数据:

WebSocket API

WebSocket 数据流提供订单和交易的实时市场数据更新。

您可以订阅以下频道

方法 公共或私有 描述
SubscribeTicker 公开 订阅某交易对的行情流。
SubscribeTrades 公开 订阅最新成交流。
SubscribeCandlesticks 公开 订阅 K 线数据流。支持多个时间间隔(如 1m、5m、15m、30m、1h)。
SubscribeOrderBook 公开 订阅订单簿流。支持可配置的深度级别和更新间隔。
SubscribeOrders 私有 订阅订单更新。需要身份验证。
SubscribeBalances 私有 订阅余额更新。需要认证。

以下是订阅公共 WebSocket 频道的示例。


procedure OnConnect(Connection: TsgcWSConnection);
begin
  oGateIO.SubscribeTicker('BTC_USDT');
  oGateIO.SubscribeOrderBook('BTC_USDT', '20', '100ms');
end;

REST API

REST API 提供公开和私有方法,用于从市场和私人账户请求数据。通过组件的 REST_API 属性访问 REST API。

方法 公开 / 私有 描述
GetCurrencyPairs 公开 获取可用货币对的信息。
GetTickers 公开 获取一个或所有货币对的行情信息。
GetOrderBook 公开 获取货币对的订单簿。
GetCandlesticks 公开 获取货币对的蜡烛图/K 线数据。
GetTrades 公开 获取某货币对的最新成交记录。
PlaceOrder 私有 下新订单。支持限价单和市价单。
CancelOrder 私有 取消现有订单。
GetOrder 私有 获取特定订单的详情。
GetOpenOrders 私有 获取未结订单列表。
GetSpotAccounts 私有 获取现货账户信息。

以下是使用 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');