Bitfinex è una delle piattaforme di trading di criptovalute più grandi e avanzate al mondo. Gli utenti possono scambiare Bitcoin, Ethereum, Ripple, EOS, Bitcoin Cash, Iota, NEO, Litecoin, Ethereum Classic...
La versione dell'API WebSocket di Bitfinex è 2.0
Ogni messaggio inviato e ricevuto tramite il canale WebSocket di Bitfinex è codificato in formato JSON
Un simbolo può essere una coppia di trading o una valuta di margine:
I simboli delle coppie di trading si formano aggiungendo una "t" prima della coppia (es. tBTCUSD, tETHUSD).
I simboli delle valute di margine sono formati aggiungendo una "f" prima della valuta (es. fUSD, fBTC, ...)
Dopo una connessione riuscita, viene generato l'evento OnBitfinexConnect e si ottiene il numero di versione dell'API Bitfinex come parametro.
È possibile chiamare il metodo Ping per verificare la connessione al server.
Se il server invia informazioni, queste possono essere gestite tramite l'evento OnBitfinexInfoMessage, dove Code e Message sono parametri contenenti informazioni sul messaggio inviato dal server. Codici di esempio:
20051 : Arresto/Riavvio del server WebSocket (si riconnetta)
20060 : Ingresso in modalità manutenzione. Si prega di sospendere qualsiasi attività e riprendere dopo aver ricevuto il messaggio informativo 20061 (dovrebbe richiedere al massimo 120 secondi).
20061 : Manutenzione terminata. È possibile riprendere la normale attività. Si consiglia di annullare l'iscrizione/iscriversi nuovamente a tutti i canali.
In caso di errore, verrà generato OnBitfinexError con le informazioni sull'errore. Esempi di codici di errore:
10000 : Evento sconosciuto
10001 : Coppia sconosciuta
Per modificare la configurazione, chiamare il metodo Configuration e passare come parametro uno dei seguenti flag:
CS_DEC_S = 8; // Enable all decimal as strings.
CS_TIME_S = 32; // Abilita tutti gli orari come stringhe data.
CS_SEQ_ALL = 65536; // Abilita il sequenziamento FUNZIONE BETA
CHECKSUM = 131072; // Abilita il checksum per ogni iterazione del book. Verifica le prime 25 voci per ciascun lato del book. Il checksum è un intero con segno.
Esistono canali pubblici per i quali non è necessaria l'autenticazione con il server. Tutti i messaggi vengono generati tramite l'evento OnBitfinexUpdate.
Il ticker fornisce una panoramica ad alto livello dello stato del mercato. Mostra il miglior bid e ask correnti, nonché il prezzo dell'ultimo scambio. Include anche informazioni come il volume giornaliero e la variazione del prezzo nell'ultimo giorno.
// 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
]
]
Questo canale invia un messaggio di trade ogni volta che avviene un'operazione su Bitfinex. Include tutti i dettagli pertinenti dell'operazione, come prezzo, quantità e orario.
// on trading pairs (ex. tBTCUSD)
[
CHANNEL_ID,
[
[
ID,
MTS,
AMOUNT,
PRICE
],
...
]
]
// on funding currencies (ex. fUSD)
[
CHANNEL_ID,
[
[
ID,
MTS,
AMOUNT,
RATE,
PERIOD
],
...
]
]
Il canale Order Books consente di tenere traccia dello stato del book degli ordini di Bitfinex. Viene fornito su base aggregata per prezzo, con precisione personalizzabile. Dopo aver ricevuto la risposta, si riceverà uno snapshot del book, seguito da aggiornamenti ad ogni modifica del book.
// on trading pairs (ex. tBTCUSD)
[
CHANNEL_ID,
[
[
PRICE,
COUNT,
AMOUNT
],
...
]
]
// on funding currencies (ex. fUSD)
[
CHANNEL_ID,
[
[
RATE,
PERIOD,
COUNT,
AMOUNT
],
...
]
]
Questi sono i libri più granulari.
// on trading pairs (ex. tBTCUSD)
[
CHANNEL_ID,
[
[
ORDER_ID,
PRICE,
AMOUNT
],
...
]
]
// on funding currencies (ex. fUSD)
[
CHANNEL_ID,
[
[
OFFER_ID,
PERIOD,
RATE,
AMOUNT
],
...
]
]
Fornisce un modo per accedere alle informazioni sui candlestick dei grafici. Intervalli di tempo:
1m: un minuto
5m : cinque minuti
15m : 15 minuti
30m : 30 minuti
1h : un'ora
3h : 3 ore
6h : 6 ore
12h : 12 ore
1D : un giorno
7D : una settimana
14D: due settimane
1M : un mese
[
CHANNEL_ID,
[
[
MTS,
OPEN,
CLOSE,
HIGH,
LOW,
VOLUME
],
...
]
]
Questo canale consente di mantenersi aggiornati sullo stato del proprio account. Si possono ricevere aggiornamenti sulle posizioni, i saldi, gli ordini e le transazioni.
Utilizzare il metodo Authenticate per eseguire l'autenticazione presso il server e impostare i parametri richiesti.
Una volta autenticati, si riceveranno aggiornamenti su: ordini, posizioni, transazioni, offerte di finanziamento, crediti di finanziamento, prestiti di finanziamento, portafogli, informazioni sul saldo, informazioni sui margini, informazioni sul finanziamento, transazioni di finanziamento...
È possibile richiamare il metodo UnAuthenticate se si desidera effettuare il logout dal server.