Broker API HubMenu

Streaming across broker APIs

24 of 29 records carry this field. 3 of those are labelled unverified, and 5 have nothing recorded.

Independent and unofficialNewest check

Risk warning: CFDs and spread bets are complex instruments and come with a high risk of losing money rapidly due to leverage. You can lose money on these products, and each provider publishes its own loss figure under FCA rules. You should consider whether you understand how they work and whether you can afford to take the high risk of losing your money. Automated and API trading can amplify losses through bugs, connectivity failures and runaway orders.

What this is

Streaming pushes each update to you over a connection that stays open. It is how a program follows live prices or learns of a fill without asking again and again.

Providers stream in different ways: over a WebSocket, over a long lived HTTP connection, or through a separate streaming service with its own client library. The protocol decides which libraries you can use and how you reconnect after a drop.

Each entry below is the record's own wording. The entries are in order of name. The order is not a ranking and nothing here recommends a broker.

Brokers

Bitget

WebSocket, with a public channel and a private channel that needs a login message. Stated on the quick start page: at most 100 connections per IP, 300 connection requests per IP in 5 minutes, at most 1,000 channel subscriptions per connection (Bitget advises fewer than 50), 240 subscription requests an hour per connection, and up to 10 messages a second per connection. Send the string ping every 30 seconds; the server disconnects after 2 minutes without one.

Bitget API quick start, WebSocketchecked

Capital.com

WebSocket wss://api-streaming-capital.backend-capital.com/connect, maximum of 40 epics per subscription; the session lasts 10 minutes and is kept alive with ping.

Capital.com Public APIchecked

Deriv

WebSocket carries trading and market data, on a public endpoint and on demo and real endpoints opened with a one time password fetched over REST. Each connection can send 10 pings a second, outside the call budgets.

Deriv API: API overviewchecked Deriv API: limitschecked

Dukascopy

JForex API: live data arrives through the client once you subscribe to instruments explicitly, and the subscription is asynchronous. FIX API: two FIX connections per client, one for the data feed and one for trading. A dropped FIX session that is not restored within 2 hours is disconnected.

Dukascopy wiki, JForex SDK clientchecked Dukascopy FIX API Programming Guide, revision 8.8.1checked

eToro

WebSocket at wss://ws.etoro.com/ws, described by an AsyncAPI 3.0 document that eToro publishes. Instrument topics need no authentication; the private topic needs an Authenticate message first, which carries the user key and API key inside its data object over the open socket, never as a header. A Subscribe message lists topics such as instrument:<instrumentId> or private, with an optional snapshot flag. The AsyncAPI document, the Topics page and the example code agree on that shape. The server sends a single binary frame from time to time as a heartbeat. No connection or subscription limit is given and no reconnection or replay behaviour is described.

eToro WebSocket API, AsyncAPI documentchecked eToro API portal: WebSocket authenticationchecked eToro API portal: WebSocket topicschecked

Exness

Websocket, throttled to roughly 100 to 500 ms.

Exness help centre: Exness APIchecked

FOREX.com / StoneX Trading (City Index)

Lightstreamer, a third party streaming protocol, over long lived HTTP connections and not WebSocket as documented. Streams cover prices, news headlines, client account margin, orders and quotes, grouped into adapters. Each adapter needs one HTTP connection plus one control connection. The documentation says the servers still run Lightstreamer 7.4.1 and that clients should use that version of the Lightstreamer SDK.

StoneX API documentation, architecturechecked

FXCM

ForexConnect pushes live prices; the retired legacy REST API streamed over Socket.IO.

FXCM Socket REST API specchecked

IG

Streaming runs on Lightstreamer: IG's Streaming API Guide starts by sending you to the Lightstreamer client library, and the server address to connect to comes back from the /session call. By default a connection holds up to 40 simultaneous subscriptions. The guide asks you to contact IG to raise that quota and the FAQ says to manage it by unsubscribing and subscribing as needed; both warn that opening extra connections to get past it may cost you the API key or your API permissions. The streaming API does not take OAuth tokens, only the CST and X-SECURITY-TOKEN pair.

IG Labs Streaming API Guidechecked IG Labs FAQchecked

Interactive Brokers

TWS API is event driven over the socket. The Web API websocket is at /v1/api/ws (wss://localhost:5000/v1/api/ws through the gateway): the number of market data subscriptions depends on the account's market data lines, 100 by default, a market data stream ends after 15 minutes unless it is requested again, and at most 5 historical data requests run at once.

IBKR Web API v1.0 documentation, websockets introductionchecked IBKR Web API v1.0 documentation, websocket market data requestchecked IBKR Web API v1.0 documentation, websocket historical market data requestchecked IBKR Campus: Web API documentationchecked

OANDA

HTTP chunked transfer encoding carrying JSON objects, not WebSocket. The development guide states at most 20 active streams, with requests above that rejected, and no more than 2 new connections a second. The best practices page advises no more than 100 requests a second on an established connection. Sources: https://developer.oanda.com/rest-live-v20/development-guide/ and https://developer.oanda.com/rest-live-v20/best-practices/, both read 23 September 2026, development guide re-read 24 September 2026.

OANDA Development Guidechecked

Pepperstone

Unverified. The API trading page, re-read 12 Oct 2026, says software can receive live pricing data and depth of market, but describes no streaming transport, host or limit for either route.

UnverifiedPepperstone API tradingchecked

Saxo OpenAPI

WebSocket streaming (SIM and live hosts). The connection allowance and the instrument cap are unverified as of 20 Sep 2026: the streaming pages no longer publish either figure and say only that the number of WebSocket connections depends on the throttling profile assigned to the application.

Saxo Environmentschecked

Swissquote

The institutional Forex API page lists the liquidity channel of its FIX connections as streaming, with request for stream and request for quote also listed for the Integral connection. For securities, the FAQ says no market data is available over the FIX API, and for digital assets a dedicated FIX session gives market data. No streaming limits are stated on the pages opened.

Swissquote institutional Forex APIschecked Swissquote institutional, securities and cryptos via an APIchecked

Trading 212

None documented. REST plus polling only.

Unverifiedno source opened

XTB

Not applicable. XTB's help centre states that API access was discontinued on 14 March 2025, and streaming was part of that API. The page read on 9 Oct 2026 does not name the former streaming host. Last looked for 9 Oct 2026.

XTB help centre: Does XTB offer investment automation tools?checked

Platform APIs

cTrader Open API

Yes: spot quotes, depth of market and execution events on the same connection, at 50 requests a second per connection (5 for historical data) with a heartbeat every 10 seconds. Host live1.p.ctrader.com port 5035, SSL mandatory for TCP and WebSocket. Spotware recommends at most two connections, one demo and one live, each carrying an unlimited number of accounts of that type.

Messageschecked

DXtrade APIs

Push API over WebSockets for account and market data updates.

Devexperts blog: DXtrade API suitechecked

Match-Trader Platform API

Yes: WebSocket with STOMP for real-time market data and account updates.

Platform APIchecked

MetaApi

Yes: a WebSocket API on the socket.io protocol that pushes terminal state changes, quotes, candles, ticks and order book data in real time. MetaApi recommends it over REST for automated trading. Streaming does not use the CPU credits that REST and RPC calls use, but each account has its own market data streaming credits, and going over them downgrades the subscription.

MetaApi documentation, overviewchecked MetaApi documentation, rate limitingchecked

MetaCopier

Yes: a Socket API that speaks STOMP over a standard WebSocket connection, for real time updates of account information, history and open positions. One connection carries every account the key can reach, and accounts added later appear without reconnecting. The page notes that a connection may close after about 20 seconds without heartbeats. No SDK is offered for the Socket API.

MetaCopier documentation, Socket APIchecked MetaCopier documentation, SDKchecked

MetaTrader 4 (MQL4)

In-terminal events only (new tick, timer, depth changes); no external streaming API.

MQL4 Referencechecked

MetaTrader 5 (Python package and MQL5)

No push API in Python: poll ticks and bars; market_book_add subscribes the terminal to depth events. MQL5 EAs get tick events.

MetaTrader for Pythonchecked

TradeLocker API

Unverified. TradeLocker's public API documentation, re-read 12 Oct 2026, describes a request and response REST API only, and its index of pages lists no streaming page. The record's API family names a Streams API from an earlier reading that could not be confirmed on a page that opens today.

UnverifiedTradeLocker public API, getting startedchecked

Not recorded

These records hold nothing for this field yet. That is a gap in this dataset. It says nothing either way about the broker or platform.

Where to go next