API Bitfinex

Bitfinex

 

Bitfinex jest jedną z największych i najbardziej zaawansowanych platform do handlu kryptowalutami na świecie. Użytkownicy mogą wymieniać Bitcoin, Ethereum, Ripple, EOS, Bitcoin Cash, Iota, NEO, Litecoin, Ethereum Classic...

 

Wersja Bitfinex WebSocket API to 2.0

 

Każda wiadomość wysyłana i odbierana przez kanał WebSocket Bitfinex jest kodowana w formacie JSON

 

Symbol może być parą handlową lub walutą depozytu zabezpieczającego:

 

 

 

Po pomyślnym nawiązaniu połączenia wywoływane jest zdarzenie OnBitfinexConnect i jako parametr przekazywany jest numer wersji Bitfinex API.

 

Można wywołać metodę Ping, aby przetestować połączenie z serwerem.

 

Jeśli serwer wyśle jakiekolwiek informacje, można je obsłużyć za pomocą zdarzenia OnBitfinexInfoMessage, w którym Code i Message są parametrami zawierającymi informacje o wiadomości wysłanej przez serwer. Przykładowe kody:

 

20051 : Zatrzymaj/Uruchom ponownie serwer WebSocket (proszę ponownie nawiązać połączenie)

20060: Przechodzenie w tryb konserwacji. Należy wstrzymać wszelką aktywność i wznowić ją po otrzymaniu komunikatu informacyjnego 20061 (oczekiwany czas to maksymalnie 120 sekund).

20061 : Konserwacja zakończona. Można wznowić normalną aktywność. Zaleca się ponowne subskrybowanie wszystkich kanałów.

 

W przypadku błędu zostanie wywołane zdarzenie OnBitfinexError z informacjami o błędzie. Przykładowe kody błędów:

 

10000 : Nieznane zdarzenie

10001 : Nieznana para

 

Aby zmienić konfigurację, należy wywołać metodę Configuration i przekazać jako parametr jedną z następujących flag:

 

CS_DEC_S = 8; // Włącz wszystkie liczby dziesiętne jako ciągi znaków.

CS_TIME_S = 32; // Włącz wszystkie czasy jako ciągi dat.

CS_SEQ_ALL = 65536; // Włącz sekwencjonowanie FUNKCJA BETA

CHECKSUM = 131072; // Włącza sumę kontrolną dla każdej iteracji księgi. Sprawdza 25 najwyższych wpisów dla każdej strony księgi. Suma kontrolna jest liczbą całkowitą ze znakiem.

 

Subskrybuj kanały publiczne

Istnieją kanały publiczne, dla których uwierzytelnianie wobec serwera nie jest wymagane. Wszystkie wiadomości są przekazywane przez zdarzenie OnBitfinexUpdate.

 

SubscribeTicker

Ticker jest ogólnym przeglądem stanu rynku. Pokazuje bieżącą najlepszą ofertę kupna i sprzedaży, a także cenę ostatniej transakcji. Zawiera również informacje, takie jak dzienny wolumen obrotu i o ile zmieniła się cena w ciągu ostatniego dnia.

 


// Trading pairs
[
  CHANNEL_ID,
  [
    BID,
    BID_SIZE,
    ASK,
    ASK_SIZE,
    DAILY_CHANGE,
    DAILY_CHANGE_PERC,
    LAST_PRICE,
    VOLUME,
    HIGH,
    LOW
  ]
]
// Funding pairs
[
  CHANNEL_ID,
  [
    FRR,
    BID,
    BID_PERIOD,
    BID_SIZE,
    ASK,
    ASK_PERIOD,
    ASK_SIZE,
    DAILY_CHANGE,
    DAILY_CHANGE_PERC,
    LAST_PRICE,
    VOLUME,
    HIGH,
    LOW
  ]
]

 

 

SubscribeTrades

Ten kanał wysyła wiadomość o transakcji za każdym razem, gdy na Bitfinex dochodzi do zawarcia transakcji. Zawiera wszystkie istotne szczegóły transakcji, takie jak cena, rozmiar i czas.

 


// on trading pairs (ex. tBTCUSD)
[
  CHANNEL_ID,
  [
    [
      ID,
      MTS,
      AMOUNT,
      PRICE
    ],
    ...
  ]
]
// on funding currencies (ex. fUSD)
[
  CHANNEL_ID,
  [
    [
      ID,
      MTS,
      AMOUNT,
      RATE,
      PERIOD
    ],
    ...
  ]
]

 

SubscribeOrderBook

Kanał Order Books umożliwia śledzenie stanu arkusza zleceń Bitfinex. Dane są udostępniane w formie zagregowanej według ceny, z konfigurowalną precyzją. Po otrzymaniu odpowiedzi przesyłany jest obraz aktualnego stanu arkusza, a następnie aktualizacje przy każdej zmianie.

 


// on trading pairs (ex. tBTCUSD)
[
  CHANNEL_ID,
  [
    [
      PRICE,
      COUNT,
      AMOUNT
    ],
    ...
  ]
]
  
// on funding currencies (ex. fUSD)
[
  CHANNEL_ID,
  [
    [
      RATE,
      PERIOD,
      COUNT,
      AMOUNT
    ],
    ...
  ]
]

 

SubscribeRawOrderBook

Są to najbardziej szczegółowe arkusze zamówień.

 


// on trading pairs (ex. tBTCUSD)
[
  CHANNEL_ID,
  [
    [
      ORDER_ID,
      PRICE,
      AMOUNT
    ],
    ...
  ]
]
  
// on funding currencies (ex. fUSD)
[
  CHANNEL_ID,
  [
    [
      OFFER_ID,
      PERIOD,
      RATE,
      AMOUNT
    ],
    ...
  ]
]

 

SubscribeCandles

Zapewnia dostęp do informacji o świecach wykresu. Przedziały czasowe:

 

1m: jedna minuta

5m : pięć minut

15m : 15 minut

30m: 30 minut

1h: jedna godzina

3h : 3 godziny

6h : 6 godzin

12h : 12 godzin

1D: jeden dzień

7D : jeden tydzień

14D : dwa tygodnie

1M : jeden miesiąc

 


[
  CHANNEL_ID,
  [
    [
      MTS,
      OPEN,
      CLOSE,
      HIGH,
      LOW,
      VOLUME
    ],
    ...
  ]
]

 

 

 

Subskrybuj uwierzytelnione kanały

Ten kanał umożliwia śledzenie stanu konta. Można otrzymywać aktualizacje dotyczące pozycji, sald, zleceń i transakcji.

 

Należy użyć metody Authenticate, aby uwierzytelnić się względem serwera i ustawić wymagane parametry.

 

Po uwierzytelnieniu będą przesyłane aktualizacje dotyczące: zleceń, pozycji, transakcji, ofert finansowania, kredytów finansowania, pożyczek finansowania, portfeli, informacji o saldzie, informacji o depozycie, informacji o finansowaniu, transakcji finansowania...

 

Można wywołać metodę UnAuthenticate, aby wylogować się z serwera.