API Binance Futures

Binance

 

Binance to międzynarodowa wielojęzyczna giełda kryptowalut. Oferuje szereg API umożliwiających dostęp do danych Binance. Ten komponent umożliwia pobieranie strumieni rynkowych WebSocket dla kontraktów Binance Futures.

 

https://binance-docs.github.io/apidocs/futures/en

https://binance-docs.github.io/apidocs/delivery/en

Kontrakty futures

Binance API posiada 2 typy metod: publiczne i prywatne. Metody publiczne są dostępne bez uwierzytelniania, np. pobieranie cen tickerów. Niektóre metody są prywatne i związane z danymi użytkownika; te metody wymagają użycia kluczy API Binance.

 

 

Klient może połączyć się z kontraktami terminowymi Binance USDT lub COIN. Aby wybrać typ kontraktu do handlu, należy ustawić właściwość FuturesContracts:

 

 

Klient może łączyć się z kontami Binance produkcyjnymi lub demonstracyjnymi. Jeśli właściwość TestNet jest włączona, połączenie nastąpi z kontem demonstracyjnym; w przeciwnym razie klient połączy się z serwerami produkcyjnymi Binance.

 

 

WebSocket Stream API

Klient może subskrybować zdarzenia i anulować subskrypcję po nawiązaniu połączenia.

Obsługiwane są następujące metody subskrypcji i anulowania subskrypcji.

 

Metoda Parametry Opis
AggregateTrades Symbol Agregowane strumienie transakcji przesyłają informacje o transakcjach agregowane dla jednego zlecenia taker co 100 milisekund.
MarkPrice Symbol, UpdateSpeed Cena mark i stopa finansowania dla pojedynczego symbolu, przesyłane co 3 sekundy lub co sekundę.
AllMarkPrice UpdateSpeed Cena markowa i stopa finansowania dla wszystkich symboli wysyłana co 3 sekundy lub co sekundę.
KLine Symbol, interwał Strumień Kline/Candlestick przesyła aktualizacje bieżących danych świecowych co 250 milisekund (jeśli istnieją).
MiniTicker Symbol 24-godzinne kroczące statystyki mini-tickera dla pojedynczego symbolu. Nie są to statystyki dnia UTC, lecz 24-godzinne okno kroczące od czasu żądania do 24 godzin wcześniej.
AllMiniTicker   24-godzinne kroczące statystyki mini-tickera dla wszystkich symboli. Nie są to statystyki dnia UTC, lecz 24-godzinne okno kroczące od czasu requestTime do 24 godzin wcześniej. Należy pamiętać, że w tablicy będą obecne wyłącznie tickery, które uległy zmianie.
Ticker Symbol Statystyki tickera z 24-godzinnego okna kroczącego dla pojedynczego symbolu. Nie są to statystyki dnia UTC, lecz 24-godzinne okno kroczące od requestTime do 24 godzin wstecz.
AllMarketTickers   24-godzinne kroczące statystyki tickerów dla wszystkich symboli. Nie są to statystyki dnia UTC, lecz 24-godzinne okno kroczące od requestTime do 24 godzin wstecz. Należy pamiętać, że w tablicy znajdą się wyłącznie tickery, których wartości uległy zmianie.
BookTicker Symbol Przekazuje w czasie rzeczywistym aktualizacje najlepszej ceny lub wolumenu po stronie bid lub ask dla wskazanego symbolu.
AllBookTickers   Przesyła w czasie rzeczywistym wszelkie aktualizacje ceny lub ilości najlepszej oferty kupna lub sprzedaży dla wszystkich symboli.
LiquidationOrders Symbol Strumienie zleceń likwidacyjnych przesyłają informacje o wymuszonych zleceniach likwidacyjnych dla określonego symbolu
AllLiquidationOrders   Strumienie All Liquidation Order przesyłają informacje o zleceniach przymusowej likwidacji dla wszystkich symboli na rynku.
PartialBookDepth Symbol, Głębokość Najlepsze oferty kupna i sprzedaży; prawidłowe wartości to 5, 10 lub 20.
DiffDepth Symbol Oferty kupna i sprzedaży, przesyłane co 250 milisekund, 500 milisekund, 100 milisekund lub w czasie rzeczywistym (jeśli są dostępne)

 

Po pomyślnej subskrypcji lub rezygnacji z subskrypcji klient otrzymuje o tym wiadomość, w której id jest wynikiem metody Subscribed lub Unsubscribed.

 


{
  "result": null,
  "id": 1
}

User Data Stream API

Wymaga prawidłowego ApiKey uzyskanego z konta Binance; ApiKey musi być ustawiony we właściwości Binance.ApiKey komponentu.

 

Następujące dane są wypychane do klienta za każdym razem, gdy nastąpi zmiana. Nie jest konieczna subskrypcja żadnej metody — odbywa się ona automatycznie po ustawieniu prawidłowego ApiKey.

 

Metoda Opis
Wezwanie do uzupełnienia depozytu zabezpieczającego Gdy wskaźnik ryzyka pozycji użytkownika jest zbyt wysoki, ten strumień zostanie wypchnięty. Ta wiadomość służy wyłącznie jako informacja o ryzyku i nie jest zalecana jako podstawa strategii inwestycyjnych. Na wysoce zmiennym rynku istnieje możliwość, że pozycja użytkownika zostanie zlikwidowana w tym samym czasie, gdy zostanie wypchnięty ten strumień.
Aktualizacja salda i pozycji

Aktualizacja salda następuje w następujących przypadkach:

 

  • Zdarzenie jest wysyłane po aktualizacji salda lub pozycji.
  • Gdy "FUNDING FEE" zmienia saldo użytkownika.
Aktualizacja zlecenia Gdy zostanie utworzone nowe zlecenie, zostanie wypchnięte zdarzenie zmiany statusu zlecenia.

 

 

REST API

Wszystkie punkty końcowe zwracają obiekt lub tablicę JSON. Dane są zwracane w kolejności rosnącej: najstarsze pierwsze, najnowsze ostatnie.

 

Publiczne punkty końcowe API

 

Te punkty końcowe są dostępne bez żadnej autoryzacji.

 

Ogólne EndPoints

 

Metoda Parametry Opis
Ping   Testuje łączność z Rest API.
GetServerTime   Sprawdź połączenie z Rest API i pobierz bieżący czas serwera.
GetExchangeInformation   Bieżące reguły handlowe giełdy i informacje o symbolach

 

 

Punkty końcowe danych rynkowych

 

Metoda Parametry Opis
GetOrderBook Symbol Pobierz arkusz zleceń.
GetTrades Symbol Pobierz ostatnie transakcje
GetHistoricalTrades Symbol Pobierz starsze transakcje.
GetAggregateTrades Symbol Pobierz skompresowane, zagregowane transakcje. Transakcje realizowane w tym samym czasie, z tego samego zlecenia i po tej samej cenie będą miały zagregowaną ilość.
GetKLines Symbol, interwał Świece Kline dla instrumentu. Świece są jednoznacznie identyfikowane przez czas otwarcia.
Get24hrTicker Symbol Statystyki zmian cen w 24-godzinnym oknie kroczącym. Należy zachować ostrożność podczas wywoływania bez podania symbolu.
GetPriceTicker Symbol Ostatnia cena dla symbolu lub symboli.
GetBookTicker Symbol Najlepsza cena/ilość w arkuszu zleceń dla jednego lub wielu symboli.
GetMarkPrice Symbol Cena Mark i Stopa Finansowania
GetFundingRateHistory Symbol  
GetOpenInterest Symbol Pobierz bieżące otwarte zainteresowanie dla określonego symbolu.
GetOpenInterestStatistics Symbol, Period  
GetTopTraderAccountRatio Symbol, Period  
GetTopTraderPositionRatio Symbol, Period  
GetGlobalAccountRatio Symbol, Period  
GetTakerVolume Symbol, Period
GetContinuousKLines Pair, ContractType, Interval Dane świecowe dla określonego typu kontraktu.
GetIndexPriceKLines Pair, Interval Świece Kline/candlestick dla ceny indeksu pary.
GetMarkPriceKLines Symbol, interwał Świece Kline dla ceny mark danego symbolu.
GetPremiumIndexKLines Symbol, interwał Słupki kline indeksu premii dla symbolu.
GetFundingInfo Pobierz informacje o stawce finansowania dla wszystkich symboli.
GetPriceTickerV2 Symbol Ostatnia cena dla jednego lub wielu symboli (V2).
GetIndexInfo Symbol Pobierz informacje o indeksie.
GetAssetIndex Symbol Pobierz indeks aktywów dla trybu wieloaktywowego.
GetConstituents Symbol Pobierz składowe indeksu.
GetDeliveryPrice Para Pobierz cenę dostawy.
GetBasis Pair, ContractType, Period Pobieranie danych bazowych.

 

 

Private API EndPoints

 

Wymaga podania APIKey i APISecret w celu autoryzacji przez serwer.

 

Punkty końcowe konta i transakcji

 

Metoda Parametry Opis
ChangePositionMode DualPosition Zmień tryb pozycji użytkownika (tryb Hedge lub tryb jednokierunkowy) dla KAŻDEGO symbolu
GetCurrentPositionMode   Pobierz tryb pozycji użytkownika (tryb zabezpieczony lub jednokierunkowy) dla KAŻDEGO symbolu
NewOrder Symbol, Side, PositionSide, Type Wyślij nowe zlecenie.
PlaceMarketOrder Side, Symbol, Quantity  
PlaceLimitOrder Side, Symbol, Quantity, LimitPrice  
PlaceStopOrder Side, Symbol, Quantity, StopPrice, LimitPrice  
PlaceTrailingStopOrder Side, Symbol, Quantity, aActivationPrice, aCallbackRate  
QueryOrder Symbol Sprawdź status zlecenia.
CancelOrder Symbol Anuluj aktywne zlecenie. Należy podać OrderId lub OrigClientOrderId.
CancelAllOpenOrders Symbol  
AutoCancelAllOpenOrders Symbol, CountDownTimer Anuluj wszystkie otwarte zlecenia określonego symbolu na koniec określonego odliczania.
QueryCurrentOpenOrder Symbol  
GetOpenOrders Symbol Pobierz wszystkie otwarte zlecenia dla symbolu. Zachować ostrożność przy dostępie bez podania symbolu.
GetAllOrders Symbol Pobierz wszystkie zlecenia konta: aktywne, anulowane lub zrealizowane.
GetAccountBalance    
GetAccountInformation   Pobierz informacje o bieżącym koncie.
ChangeInitialLeverage Symbol, Leverage Zmień początkową dźwignię użytkownika dla określonego rynku symbolu.
ChangeMarginType Symbol, MarginType  
ModifyIsolatedPositionMargin Symbol, Amount, Type  
GetPositionMarginChangeHistory Symbol  
GetPositionInformation Symbol  
GetAccountTradeList Symbol  
GetIncomeHistory Symbol  
GetNotionalLeverageBracket Symbol
TestNewOrder Symbol, Side, PositionSide, Type Testuje tworzenie nowego zlecenia oraz poprawność podpisu/recvWindow. Tworzy i weryfikuje nowe zlecenie, ale nie wysyła go do silnika dopasowań.
ModifyOrder Symbol Modyfikowanie istniejącego zlecenia.
NewBatchOrders BatchOrders Złóż wiele zleceń jednocześnie.
ModifyBatchOrders BatchOrders Modyfikuj wiele zleceń jednocześnie.
CancelBatchOrders Symbol Anuluje wiele zleceń.
GetOrderAmendment Symbol Pobiera historię modyfikacji zlecenia.
CountdownCancelAll Symbol, CountdownTime Anuluj wszystkie otwarte zlecenia określonego symbolu na koniec określonego odliczania.
GetForceOrders Symbol Pobierz zlecenia przymusowej likwidacji użytkownika.
GetADLQuantile Symbol Pobiera kwantylowe szacowanie ADL dla pozycji.
GetAccountBalanceV3 Pobierz saldo konta futures (V3).
GetAccountInformationV3 Pobierz bieżące informacje o koncie (V3).
GetPositionInformationV3 Symbol Pobierz bieżące informacje o pozycji (V3).
GetCommissionRate Symbol Pobierz stawkę prowizji użytkownika.
GetAccountConfig Pobierz bieżącą konfigurację konta.
GetSymbolConfig Symbol Pobierz konfigurację symbolu.
GetOrderRateLimit Pobierz limit szybkości zleceń użytkownika.
GetApiTradingStatus Symbol Pobierz wskaźniki reguł ilościowych dotyczących handlu przez API.
ChangeMultiAssetsMode MultiAssetsMargin Zmiana trybu wielu aktywów użytkownika. Tryb wielu aktywów: true; Tryb jednego aktywa: false.
GetMultiAssetsMode Pobiera bieżący tryb wielu aktywów użytkownika.
SetFeeBurn FeeBurn Zmień status spalania opłat BNB użytkownika.
GetFeeBurn Pobierz status spalania opłat BNB użytkownika.
CreateListenKey Uruchom nowy strumień danych użytkownika. Strumień zostanie zamknięty po 60 minutach, jeśli nie zostanie wysłany sygnał keepalive.
KeepAliveListenKey Utrzymuje aktywność strumienia danych użytkownika, zapobiegając przekroczeniu limitu czasu.
CloseListenKey Zamknij strumień danych użytkownika.

 

 

 

Zdarzenia

Wiadomości Binance Futures są odbierane w komponencie TsgcWebSocketClient; można używać następujących zdarzeń:

 

OnConnect

Po pomyślnym połączeniu z serwerem Binance.

OnDisconnect

Po rozłączeniu z serwerem Binance

OnMessage

Wiadomości wysyłane przez serwer do klienta są obsługiwane w tym zdarzeniu.

OnError

W przypadku wystąpienia błędu protokołu wywoływane jest to zdarzenie.

OnException

Jeżeli wystąpi nieobsługiwany wyjątek, zostanie wywołane to zdarzenie.

 

Dodatkowo w komponencie Binance API istnieje specyficzne zdarzenie o nazwie OnBinanceHTTPException, wywoływane za każdym razem, gdy wystąpi błąd podczas wywołania żądania HTTP (REST API lub strumień użytkownika WebSocket).

 

(*) W związku ze zmianami na serwerach Binance wersje Indy wcześniejsze niż Rad Studio 10.1 nie będą mogły łączyć się z serwerami testowymi. Problem ten nie dotyczy wersji Enterprise ani zaktualizowanych wersji Indy.