HTX(이전 Huobi)는 국제적인 다국어 cryptocurrency exchange입니다. HTX API 구성 요소는 기존 Huobi WebSocket API를 보완하는 HTTP REST API를 제공합니다.
Huobi 속성(WebSocket용) 또는 HTXOptions 속성(REST API용)에서 다음 속성을 구성할 수 있습니다.
HTX 구성 요소는 Huobi WebSocket API 클라이언트를 확장합니다. 클라이언트가 HTX 서버에 성공적으로 연결되면 OnConnect 이벤트가 발생합니다. ApiKey가 비어 있지 않으면 클라이언트는 private websocket 서버에 연결을 시도하므로 private 메서드만 사용할 수 있습니다. ApiKey가 비어 있으면 클라이언트는 public websocket 서버에 연결하고 public 메서드만 사용할 수 있습니다.
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는 시장 및 비공개 계정에서 데이터를 요청하기 위한 Public 및 Private 메서드를 제공합니다. REST API는 TsgcHTTP_API_HTX 구성 요소를 통해 액세스됩니다.
Market Data (Public)
| 메서드 | 설명 |
| GetServerTime | 서버 시간을 가져옵니다. |
| GetSymbols | 사용 가능한 거래 심볼 목록을 가져옵니다. |
| GetCurrencys | 지원되는 통화 목록을 가져옵니다. |
| GetMarketTickers | 모든 거래 심볼의 티커를 가져옵니다. |
| GetMarketDetail | 심볼에 대한 24시간 시장 세부 정보를 가져옵니다. |
| GetMarketDepth | 심볼에 대한 주문서 깊이를 가져옵니다. 구성 가능한 깊이 유형 및 깊이 수준을 지원합니다. |
| GetMarketTrade | 심볼에 대한 가장 최근 거래를 가져옵니다. |
| GetMarketHistoryTrade | 심볼에 대한 가장 최근 거래 기록을 가져옵니다. |
| GetMarketHistoryKline | 캔들스틱/kline 데이터를 가져옵니다. 여러 기간(1min, 5min, 15min, 30min, 60min, 4hour, 1day, 1mon, 1week, 1year)을 지원합니다. |
Trading (Private)
| 메서드 | 설명 |
| PlaceOrder | 새 주문을 넣습니다. buy-market, sell-market, buy-limit, sell-limit 및 기타 주문 유형을 지원합니다. |
| CancelOrder | order ID로 기존 주문을 취소합니다. |
| GetOrder | 특정 주문의 세부 정보를 가져옵니다. |
| GetOpenOrders | 계정의 미체결 주문 목록을 가져옵니다. |
| GetOrderHistory | 심볼에 대한 주문 내역을 가져옵니다. |
Account (Private)
| 메서드 | 설명 |
| GetAccounts | 계정 목록을 가져옵니다. |
| GetAccountBalance | 특정 계정의 잔액을 가져옵니다. |
| GetAccountAssetValuation | 계정 유형(예: spot)에 대한 총 자산 평가액을 가져옵니다. |
아래에서 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');