HTX(旧Huobi)は、国際的な多言語暗号通貨取引所です。HTX APIコンポーネントは、既存のHuobi WebSocket APIを補完するHTTP REST APIを提供します。
Huobi プロパティ(WebSocket の場合)または HTXOptions プロパティ(REST API の場合)で次のプロパティを設定できます。
HTX コンポーネントは Huobi WebSocket API クライアントを拡張します。クライアントが HTX サーバーへの接続に成功すると、OnConnect イベントが発生します。ApiKey が空でない場合、クライアントはプライベート WebSocket サーバーへの接続を試み、プライベートメソッドのみが利用可能になります。ApiKey が空の場合、クライアントはパブリック WebSocket サーバーに接続し、パブリックメソッドのみが利用可能になります。
oClient := TsgcWebSocketClient.Create(nil);
oHTX := TsgcWS_API_Huobi.Create(nil);
oHTX.Client := oClient;
oHTX.Huobi.ApiKey := 'your_api_key';
oHTX.Huobi.ApiSecret := 'your_api_secret';
oClient.Active := True;
procedure OnConnect(Connection: TsgcWSConnection);
begin
DoLog('#HTX Connected');
end;
HTX クライアントは、接続フローを制御し、WebSocket サーバーから送信されたデータを取得するために次のイベントを実装しています:
WebSocket APIはリアルタイムのマーケットデータ更新を提供します。パブリックチャンネル(SubscribeKLine、SubscribeMarketDepth、SubscribeTradeDetailなど)とプライベートチャンネル(SubscribeOrderUpdates、SubscribeTradeClearing、SubscribeAccountChange)を含むWebSocketサブスクリプションメソッドの完全なリストについては、Huobi APIのドキュメントを参照してください。
REST API は市場とプライベートアカウントのデータをリクエストするためのパブリックメソッドとプライベートメソッドを提供します。REST API は TsgcHTTP_API_HTX コンポーネントを通じてアクセスされます。
マーケットデータ(パブリック)
| メソッド | 説明 |
| GetServerTime | サーバー時刻を取得します。 |
| GetSymbols | 利用可能な取引シンボルの一覧を取得します。 |
| GetCurrencys | サポートされている通貨のリストを取得します。 |
| GetMarketTickers | すべての取引シンボルのティッカーを取得します。 |
| GetMarketDetail | シンボルの 24 時間のマーケット詳細を取得します。 |
| GetMarketDepth | シンボルのオーダーブック深度を取得します。設定可能な深度タイプと深度レベルをサポートします。 |
| GetMarketTrade | 銘柄の最新の取引を取得します。 |
| GetMarketHistoryTrade | シンボルの最新取引履歴を取得します。 |
| GetMarketHistoryKline | ローソク足/Klineデータを取得します。複数の期間(1min、5min、15min、30min、60min、4hour、1day、1mon、1week、1year)に対応しています。 |
取引 (プライベート)
| メソッド | 説明 |
| PlaceOrder | 新しい注文を発注します。買い成行、売り成行、買い指値、売り指値、その他の注文タイプをサポートします。 |
| CancelOrder | 注文 ID で既存の注文をキャンセルします。 |
| GetOrder | 特定の注文の詳細を取得します。 |
| GetOpenOrders | アカウントのオープンオーダーリストを取得します。 |
| GetOrderHistory | シンボルの注文履歴を取得します。 |
Account (Private)
| メソッド | 説明 |
| GetAccounts | アカウントのリストを取得します。 |
| GetAccountBalance | 特定のアカウントの残高を取得します。 |
| GetAccountAssetValuation | アカウントタイプ(例: スポット)の総資産評価を取得します。 |
以下に REST API の使用例を示します。
oHTX := TsgcHTTP_API_HTX.Create(nil);
oHTX.HTXOptions.ApiKey := 'your_api_key';
oHTX.HTXOptions.ApiSecret := 'your_api_secret';
// Get market tickers
oHTX.GetMarketTickers;
// Get kline data
oHTX.GetMarketHistoryKline('btcusdt', '1min', 150);
// Place an order
oHTX.PlaceOrder('12345678', 'btcusdt', 'buy-limit', '0.001', '50000');
// Get account balance
oHTX.GetAccountBalance('12345678');