MetaTrader 5 vs TradeLocker API
The same fields from the MetaTrader 5 (Python package and MQL5) record and the TradeLocker API record, side by side. No winner is picked: which one suits you depends on what you are building.
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 the two records show
Differences you can see in the records themselves. These are counts of what this site holds, not a verdict on either API.
- MetaTrader 5 (Python package and MQL5) is a platform API, offered through the brokers that carry the platform. TradeLocker API is a platform API, offered through the brokers that carry the platform.
- This site documents no endpoints for MetaTrader 5 (Python package and MQL5) and 23 endpoints for TradeLocker API. That counts what has been documented here, not what each API offers.
- This site has decoded 311 error codes for MetaTrader 5 (Python package and MQL5) and 5 error codes for TradeLocker API.
- The limits register holds no limit records for MetaTrader 5 (Python package and MQL5) and no limit records for TradeLocker API. Each limit record carries its own scope.
- The MetaTrader 5 (Python package and MQL5) record holds a demo claim, verified at its source. The TradeLocker API record holds a demo claim, verified at its source. The wording of each is in the Demo row below.
- Claims marked unverified or as sources conflicting: 0 in the MetaTrader 5 (Python package and MQL5) record and 1 in the TradeLocker API record. Each is labelled where it appears.
- A quickstart is built here for MetaTrader 5 (Python package and MQL5) only.
MetaTrader 5 (Python package and MQL5) and TradeLocker API, field by field
| Field | MetaTrader 5 (Python package and MQL5) | TradeLocker API |
|---|---|---|
| Kind | Platform API, offered by many brokers | Platform API, offered by many brokers |
| API family | Python package (MetaTrader5), MQL5, WebRequest and sockets from MQL5 | REST, Streams API (Socket.IO WebSocket), Python package |
| How you get access | Install the MT5 terminal from your broker, then pip install MetaTrader5 on Windows x86-64 or write MQL5 in MetaEditor. The terminal must be at build 4755 or later.order_sendchecked | Use your TradeLocker login (email, password, server) against the public REST API; no separate app registration found.TradeLocker API connectivitychecked |
| Who can use it | Real accounts come from brokers offering MT5; the API runs through your own local terminal.Opening an account (MT5 help)checked | TradeLocker users only, via a broker or prop firm that offers TradeLocker.Getting Started with TradeLocker Public APIchecked |
| Demo | Yes: demo accounts can be opened from within the terminal.Opening an account (MT5 help)checked | Yes: separate demo environment at demo.tradelocker.com.Getting Started with TradeLocker Public APIchecked |
| Authentication | No API keys: initialize() connects to the local terminal, optionally with account login, password and server.initializechecked | POST email, password and server to /auth/jwt/token; send the JWT as Bearer token; refresh tokens issued. /trade/* routes also need the accNum header (not the accountId).Getting Started with TradeLocker Public APIchecked |
| Streaming | 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 | 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 |
| History depth | 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 | /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 |
| Limits | None recorded | None recorded |
| Endpoints documented here | None yet | 23 |
| Error codes decoded here | 311 | 5 |
| Official documentation | mql5.com | public-api.tradelocker.com |
Go deeper on each side
MetaTrader 5 (Python package and MQL5)
- MetaTrader 5 API page, the full record
- MetaTrader 5 API quickstart, credentials to a first call
- MetaTrader 5 API limits, in the table above: none recorded
- MetaTrader 5 API error codes, each with its fix
- Claude with MetaTrader 5: a safe, read-first setup
- MetaTrader 5 for Python: which platforms does it run on?
- MT5 trade history to a spreadsheet with Python
TradeLocker API
- TradeLocker API page, the full record
- No TradeLocker API quickstart is built here yet
- TradeLocker API limits, in the table above: none recorded
- TradeLocker API error codes, each with its fix
- TradeLocker API endpoints, each with its source
All comparisons. New to this? Getting started with API trading.