Market data · deployment planning

CFD WebSocket Feed

Deliver CFD updates over a persistent connection with explicit subscriptions, instrument status and recovery behavior.

Consumer lifecycle

A browser screen and a server risk process may have very different capacity limits. Agree how subscriptions are acknowledged, how slow consumers are handled and whether updates are conflated or queued when processing falls behind.

Recovery without ambiguity

After reconnecting, rebuild the subscription set and establish a current snapshot before continuing incremental processing. Document whether missed updates can be replayed or whether the consumer must accept a fresh state only.

Requirements to confirm

  • Subscription acknowledgement
  • Slow-consumer policy
  • Instrument trading status
  • Reconnect snapshot procedure

Bring the proposed instrument list, source documentation and consumer workflow to a technical discussion. The agreed integration specification defines coverage, fields, usage permissions and acceptance tests.

Integration brief

CFD WebSocket Feed: what to agree before connecting

Subscription scopeSpecify symbol identifiers, supported fields and acknowledgement or rejection behaviour.
Quote semanticsAgree snapshot versus incremental updates, source timestamps and status fields.
Consumer pressureDefine application buffer limits and what happens when a consumer cannot process updates fast enough.
Reconnect rulesAgree authentication, resubscription, fresh snapshot and duplicate-message handling.

Recover application state explicitly

For your instrument universe, define what a new subscriber receives before incremental updates begin. A connected socket does not prove a symbol is fresh. Separate heartbeat health from per-symbol timestamps and document the resubscription procedure after a disconnect.

What to test

  • Disconnect during active updates and rebuild a current symbol state.
  • Slow the consumer and observe the agreed buffering behaviour.
  • Distinguish an inactive instrument from a stalled subscription.
{
  "type": "quote",
  "symbol": "EURUSD",
  "bid": "1.10000",
  "ask": "1.10010",
  "source_time": "2026-10-18T12:00:00.000Z",
  "received_at": "2026-10-18T12:00:00.012Z",
  "source_id": "example-source",
  "status": "illustrative"
}

Illustrative engineering example, not live prices or a published API contract. Confirm field names and delivery rules during integration.

Related CFD workflows

Connect contract definitions to quote handling and trading-platform delivery.

Find your market-data solution