Skip to content
aeon/feed

Bitfinex price feed

Veteran exchange with deep BTC liquidity (UST pairs). Every Bitfinex quote appears in ticker:<SYMBOL> messages with "ex":"bitfinex".

Only Bitfinex quotes
const ws = new WebSocket("wss://aeonfeed.com/ws?subscribe=ticker:BTCUSDT,ticker:ETHUSDT");
ws.onmessage = (e) => {
  const msg = JSON.parse(e.data);
  if (msg.type !== "ticker" && msg.type !== "snapshot") return;
  const quotes = (msg.data ?? []).filter((q) => q.ex === "bitfinex");
  for (const q of quotes) console.log(msg.s, q.b, q.a);
};

Bitfinex native format → Aeon format

What Bitfinex actually sends for BTC/USDT, captured from its public WebSocket, and the normalised quote you receive from Aeon Feed. Depth arrays are trimmed for readability. Data frames are positional arrays, not objects. The channel id is mapped to a symbol from the subscribe ack.

Endpoint
wss://api-pub.bitfinex.com/ws/2
1 · Subscribe request sent to Bitfinex
{
  "event": "subscribe",
  "channel": "ticker",
  "symbol": "tBTCUST"
}
2 · Native message from Bitfinex
[
  288558,
  [
    73552,
    7.42354965,
    73561,
    2.91936093,
    -285,
    -0.00385938,
    73561,
    562.81059545,
    74800,
    73381,
    1552298737974
  ]
]
Bitfinex fieldAeon field
chanId → symbol from the subscribed event (tBTCUST)symbol (BTCUSDT)
[1][0] BID, [1][1] BID_SIZEb, bq
[1][2] ASK, [1][3] ASK_SIZEa, aq
(none)no event time: et is omitted, t = receive time
3 · What you receive from Aeon Feed (ticker:BTCUSDT)
{
  "type": "ticker",
  "ts": 1794472001001,
  "channel": "ticker:BTCUSDT",
  "s": "BTCUSDT",
  "data": [
    {
      "ex": "bitfinex",
      "b": 73552,
      "a": 73561,
      "bq": 7.42354965,
      "aq": 2.91936093,
      "t": 1794472001000
    }
  ]
}

Pairs on Bitfinex

Checking which pairs are listed…

Aeon Feed is free, with no ads and no paid tier. Donations keep it that way.

  • Keeping the project alive: servers and bandwidth for a free, public real-time feed.
  • Maintenance: keeping up with exchange API changes, fixing bugs, adding pairs and exchanges.
  • New features: cross-exchange arbitrage signals are next on the roadmap.
Tron (TRC-20)
Tether (USDT)
TXFraDKB…ZCAmpi

Send USDT only on the network you selected. TRC-20 has the lowest fees.