Broker API HubMenu

Price history depth across broker APIs

20 of 29 records carry this field. 6 of those are labelled unverified, and 9 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

History depth is how far back an API will serve prices, and at what resolution. It sets what you can backtest without buying data elsewhere.

Depth is rarely one number. Fine resolutions such as one minute usually reach back less far than daily bars, a single request is capped at a number of bars, and the download may count against a separate allowance.

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

Capital.com

Candles: max 1,000 per request (default 10), MINUTE to WEEK. Activity history: max 1 day per from/to call. Transactions default to last 10 minutes.

Capital.com API referencechecked Capital.com official Postman collectionchecked

Deriv

Not recorded yet: the limits page was the page opened in this rotation.

Unverifiedno source opened

eToro

Candles: max 1,000 per request, one minute to one week. Trading history: lookback under 1 year per request; split longer ranges.

eToro API: Get instrument candle historychecked

Exness

Unverified. Not recorded: the Exness API help article was not read for price history depth in September, and it answered 403 Forbidden on 12 Oct 2026.

UnverifiedExness API help article (did not open on 12 Oct 2026)checked

FOREX.com / StoneX Trading (City Index)

Price bars: max 4,000 per request (default 1,000). Trade history: max 200 results per call, filter by from date.

GAIN Capital API docs: GetPriceBarsBeforeDatechecked

FXCM

Candles: up to 10,000 per request with optional from and to. Depth of history and a trade history endpoint not documented.

FXCM Socket REST API specschecked

IG

Up to 20 years of price history depending on resolution; 10,000 historical data points per week. Transactions and activity history are paged.

IG: How to use IG APIchecked IG Labs FAQchecked

Interactive Brokers

Bars of 30 seconds or less are not available beyond six months, and expired futures not beyond two years from expiry. IBKR's current TWS API documentation, read on 12 Oct 2026, counts three pacing violations for bars of 30 seconds or less: an identical historical data request within 15 seconds, six or more requests for the same contract, exchange and tick type within two seconds, and more than 60 requests in any ten minute period, with a BID_ASK request counted twice. The Web API endpoint /iserver/marketdata/history has its own published pacing of 10 requests a second or 50 a minute. Executions: since midnight by default, up to 7 days in TWS if its Trade Log setting is changed, and the current day only in IB Gateway.

IBKR TWS API documentation, unavailable historical datachecked IBKR TWS API documentation, pacing violations for small barschecked IBKR TWS API documentation, execution detailschecked IBKR Web API v1.0 documentation, pacing limitationschecked

OANDA

Historical pricing back to 2005, on the introduction page. Candles: at most 5,000 per request, 500 by default, on the pricing endpoints page. Transactions: at most 365 days per request, in pages of up to 1,000.

OANDA v20: Introductionchecked OANDA v20: Pricing endpointschecked OANDA v20: Transaction endpointschecked

Pepperstone

Unverified. The API trading page, re-read 12 Oct 2026, describes no history endpoint and no depth.

UnverifiedPepperstone API tradingchecked

Saxo OpenAPI

Chart samples max 1,200 per request; some FX data back to 2002. Trades report takes FromDate and ToDate with no stated limit.

Saxo OpenAPI Support: How many samples can be returned at a time?checked

XTB

Not applicable. No live API, so there is no history endpoint to have a depth. Last looked for 9 Oct 2026.

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

Platform APIs

cTrader Open API

Trend bars and ticks by from/to timestamp with optional count; deals by range with maxRows. Cash flow history max 1 week per request.

Spotware OpenApiMessages.protochecked

DXtrade APIs

Unverified. The DXtrade developer portal returned only a page title without scripts on 12 Oct 2026, so candle and trade history depth could not be read.

UnverifiedDXtrade developer portal (content did not render)checked

Match-Trader Platform API

Get candles and closed positions endpoints exist; no depth or per request limit found in public docs.

Match-Trade Platform API docs (Theneo)checked

MetaApi

Unverified. MetaApi's home page says historical market data comes from your broker, and its documentation lists endpoints for history orders, deals, ticks and candles, but the pages opened on 12 Oct 2026 were not read for how far back a request can go or how many rows it returns.

UnverifiedMetaApi documentation, overviewchecked

MetaCopier

Unverified. The documentation pages opened on 12 Oct 2026 were not read for how far back history goes. The endpoint reference is a Swagger page that was not opened.

UnverifiedMetaCopier documentation, REST APIchecked

MetaTrader 4 (MQL4)

Bars limited to the terminal's max bars in chart. Closed orders limited to what the Account History tab has loaded.

MQL4 docs: CopyRateschecked

MetaTrader 5 (Python package and MQL5)

Bars limited to the terminal's Max bars in chart setting. Deal history by date range with no stated limit.

MQL5 docs: copy_rates_fromchecked

TradeLocker API

/trade/history by resolution (1m to 1M) and from/to; max rows per request and orders history rows come from /trade/config.

TradeLocker Public API docschecked

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