{
"type": "cfbenchmarks_value_5hz",
"sid": 1,
"seq": 42,
"msg": {
"index_id": "BRTI",
"value_usd": "68000.12000000",
"source_ts_ms": 1710000000323,
"received_at": 1710000000341,
"data": "{\"type\":\"value\",\"id\":\"BRTI\",\"time\":1710000000323,\"value\":\"68000.12\"}"
}
}{
"type": "cfbenchmarks_value_5hz_indexlist",
"id": 2,
"sid": 1,
"seq": 1,
"msg": {
"index_ids": [
"BRTI",
"ETHUSD_RTI"
]
}
}CF Benchmarks 5Hz Value Feed
Real-time CF Benchmarks index value updates at up to 5 updates per second, each carrying the raw upstream frame plus parsed value fields. Requires authentication.
This is the high-frequency sibling of the once-per-second cfbenchmarks_value channel. It carries the indices CF Benchmarks publishes at 200ms granularity (currently BRTI, ETHUSD_RTI, SOLUSD_RTI, XRPUSD_RTI, and DOGEUSD_RTI); all other indices remain available on cfbenchmarks_value only. Messages are lean raw ticks — they do not include the 60-second or quarter-hour averages, which stay on the per-second channel.
Requirements:
- Authentication required
- Index specification via
index_ids(array of CF Benchmarks index IDs, for example["BRTI", "ETHUSD_RTI"]) market_ticker/market_tickers/market_id/market_idsare not supported for this channel- You can seed
index_idsin the initial subscribe, or subscribe first and add indices later - Use
index_ids: ["all"]to receive every index available on this channel - Supports
update_subscriptionwithsubscribe_indices/unsubscribe_indices/indexlistactions indexlistreturns the index IDs recently observed on this channel’s stream (as acfbenchmarks_value_5hz_indexlistmessage) without modifying the subscription- Up to 5 ticks per second per index; duplicate or out-of-order upstream source timestamps are ignored
Use case: Consuming CF Benchmarks reference index values at the vendor’s full publication rate
Subscription workflow:
- Subscribe to
cfbenchmarks_value_5hz(optionally seedingindex_ids). A successful subscribe returns asubscribedresponse with the assignedsid. - Discover the streaming index IDs with the
indexlistaction; the server replies with acfbenchmarks_value_5hz_indexlistmessage. - Add or remove tracked index IDs with
subscribe_indices/unsubscribe_indices, or useindex_ids: ["all"]to track everything on this channel.
Integration notes:
- If you subscribe without any
index_ids, no value events flow until you add indices or switch to["all"] sididentifies the subscription stream; use it forupdate_subscriptionandunsubscribe- Missing
index_idsforsubscribe_indices/unsubscribe_indicesreturns anerrorwithcode: 24(“Index IDs required”); unsupported actions return a standard websocketerror - Historical index values — including intra-second granularity — are available over REST via the CF Benchmarks REST Passthrough
{
"type": "cfbenchmarks_value_5hz",
"sid": 1,
"seq": 42,
"msg": {
"index_id": "BRTI",
"value_usd": "68000.12000000",
"source_ts_ms": 1710000000323,
"received_at": 1710000000341,
"data": "{\"type\":\"value\",\"id\":\"BRTI\",\"time\":1710000000323,\"value\":\"68000.12\"}"
}
}{
"type": "cfbenchmarks_value_5hz_indexlist",
"id": 2,
"sid": 1,
"seq": 1,
"msg": {
"index_ids": [
"BRTI",
"ETHUSD_RTI"
]
}
}API key authentication required for WebSocket connections. The API key should be provided during the WebSocket handshake.
Real-time CF Benchmarks index value at up to 5 updates per second
The index IDs recently observed on the 5Hz stream, sent in response to an indexlist action