API HTX

HTX

HTX (dawniej Huobi) to międzynarodowa wielojęzyczna giełda kryptowalut. Komponent HTX API udostępnia HTTP REST API uzupełniające istniejące Huobi WebSocket API.

Obsługiwane API

Właściwości

Można skonfigurować następujące właściwości we właściwości Huobi (dla WebSocket) lub HTXOptions (dla REST API).

Połączenie

Składnik HTX rozszerza klienta Huobi WebSocket API. Gdy klient pomyślnie połączy się z serwerami HTX, wywoływane jest zdarzenie OnConnect. Jeśli ApiKey nie jest pusty, klient spróbuje połączyć się z prywatnym serwerem WebSocket i dostępne będą wyłącznie metody prywatne. Jeśli ApiKey jest pusty, klient połączy się z publicznym serwerem WebSocket i dostępne będą wyłącznie metody publiczne.


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;

Zdarzenia

Klient HTX implementuje następujące zdarzenia w celu kontroli przepływu połączeń i odbioru danych wysyłanych przez serwer WebSocket:

WebSocket API

WebSocket API zapewnia aktualizacje danych rynkowych w czasie rzeczywistym. Pełna lista metod subskrypcji WebSocket, w tym kanałów publicznych (SubscribeKLine, SubscribeMarketDepth, SubscribeTradeDetail itp.) i prywatnych (SubscribeOrderUpdates, SubscribeTradeClearing, SubscribeAccountChange), znajduje się w dokumentacji Huobi API.

REST API

REST API zapewnia publiczne i prywatne metody żądania danych z rynków i prywatnych kont. Dostęp do REST API odbywa się przez komponent TsgcHTTP_API_HTX.

Dane rynkowe (publiczne)

Metoda Opis
GetServerTime Pobierz czas serwera.
GetSymbols Pobierz listę dostępnych symboli handlowych.
GetCurrencys Pobierz listę obsługiwanych walut.
GetMarketTickers Pobierz tickery dla wszystkich symboli handlowych.
GetMarketDetail Pobierz 24-godzinne szczegóły rynkowe dla symbolu.
GetMarketDepth Pobierz głębokość arkusza zleceń dla symbolu. Obsługuje konfigurowalny typ głębokości i poziomy głębokości.
GetMarketTrade Pobierz najnowszą transakcję dla danego symbolu.
GetMarketHistoryTrade Pobierz najnowszą historię transakcji dla danego symbolu.
GetMarketHistoryKline Pobierz dane świec/klines. Obsługuje wiele okresów (1min, 5min, 15min, 30min, 60min, 4hour, 1day, 1mon, 1week, 1year).

Trading (prywatny)

Metoda Opis
PlaceOrder Składa nowe zlecenie. Obsługuje typy: kupno-rynkowe, sprzedaż-rynkowa, kupno-limitowe, sprzedaż-limitowa i inne.
CancelOrder Anuluj istniejące zlecenie według identyfikatora zlecenia.
GetOrder Pobierz szczegóły określonego zlecenia.
GetOpenOrders Pobierz listę otwartych zleceń dla konta.
GetOrderHistory Pobierz historię zleceń dla symbolu.

Konto (prywatne)

Metoda Opis
GetAccounts Pobiera listę kont.
GetAccountBalance Pobiera saldo określonego konta.
GetAccountAssetValuation Pobiera całkowitą wycenę aktywów dla danego typu konta (np. spot).

Poniżej znajduje się przykład użycia 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');