API Bitfinex

Bitfinex

 

A Bitfinex é uma das maiores e mais avançadas plataformas de negociação de criptomoedas do mundo. Os usuários podem trocar Bitcoin, Ethereum, Ripple, EOS, Bitcoin Cash, Iota, NEO, Litecoin, Ethereum Classic...

 

A versão da API WebSocket da Bitfinex é 2.0

 

Cada mensagem enviada e recebida pelo canal WebSocket da Bitfinex é codificada no formato JSON

 

Um símbolo pode ser um par de negociação ou uma moeda de margem:

 

 

 

Após uma conexão bem-sucedida, o evento OnBitfinexConnect é gerado e você obtém o número da versão da API Bitfinex como parâmetro.

 

Você pode chamar o método Ping para testar a conexão com o servidor.

 

Se o servidor enviar alguma informação, isso pode ser tratado utilizando o evento OnBitfinexInfoMessage, onde um Code e uma Message são parâmetros com informações sobre a mensagem enviada pelo servidor. Exemplos de códigos:

 

20051 : Parar/Reiniciar o WebSocket Server (por favor, reconecte)

20060 : Entrando em modo de Manutenção. Por favor, pause qualquer atividade e retome após receber a mensagem de informação 20061 (deve levar no máximo 120 segundos).

20061 : Manutenção encerrada. Você pode retomar a atividade normal. Aconselha-se cancelar a inscrição/inscrever-se novamente em todos os canais.

 

Em caso de erro, OnBitfinexError será gerado, e informações sobre o erro fornecidas. Exemplos de códigos de erro:

 

10000 : Evento desconhecido

10001 : Par desconhecido

 

Para alterar a configuração, chame o método Configuration e passe como parâmetro um dos seguintes flags:

 

CS_DEC_S = 8; // Enable all decimal as strings.

CS_TIME_S = 32; // Habilita todos os horários como strings de data.

CS_SEQ_ALL = 65536; // Habilita sequenciamento RECURSO BETA

CHECKSUM = 131072; // Habilita o checksum para cada iteração do book. Verifica as 25 entradas do topo de cada lado do book. O checksum é um int com sinal.

 

Inscrever-se em Canais Públicos

Há canais que são públicos e não há necessidade de autenticar contra o servidor. Todas as mensagens são geradas no evento OnBitfinexUpdate.

 

SubscribeTicker

O ticker é uma visão geral de alto nível do estado do mercado. Ele mostra o melhor bid e ask atuais, bem como o último preço de trade. Ele também inclui informações como o volume diário e o quanto o preço se moveu no último dia.

 


// 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

Este canal envia uma mensagem de trade sempre que uma negociação ocorre na Bitfinex. Ela inclui todos os detalhes pertinentes da negociação, como preço, tamanho e horário.

 


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

 

SubscribeOrderBook

O canal Order Books permite que você acompanhe o estado do order book da Bitfinex. Ele é fornecido em base agregada por preço, com precisão personalizável. Após receber a resposta, você receberá um snapshot do book, seguido de atualizações a cada mudança no book.

 


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

 

SubscribeRawOrderBook

Estes são os livros mais granulares.

 


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

 

SubscribeCandles

Fornece uma forma de acessar informações de candle de gráficos. Time Frames:

 

1m: um minuto

5m : cinco minutos

15m : 15 minutos

30m : 30 minutos

1h : uma hora

3h : 3 horas

6h : 6 horas

12h : 12 horas

1D : um dia

7D : uma semana

14D : duas semanas

1M : um mês

 


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

 

 

 

Subscribe Authenticated Channels

Este canal permite que você se mantenha atualizado com o status da sua conta. Você pode receber atualizações sobre suas posições, seus saldos, suas ordens e seus trades.

 

Use o método Authenticate para autenticar contra o servidor e definir os parâmetros necessários.

 

Uma vez autenticado, você receberá atualizações de: Ordens, posições, trades, ofertas de funding, créditos de funding, empréstimos de funding, carteiras, informações de saldo, informações de margem, informações de funding, trades de funding...

 

Você pode requisitar o método UnAuthenticate se quiser fazer logoff do servidor.