Trader
Tools

Overview

What the Algo Trader Tools API does, the concepts behind it and the conventions every endpoint follows.

View as Markdown

The Algo Trader Tools API is a REST API for managing copy trading between MetaTrader 4 and MetaTrader 5 accounts. With it you connect accounts, create copiers that watch a master account, attach follower accounts with their own rules, and read what was copied. It's the same setup you do under Accounts and Copiers in the app, done from your own code.

The copying itself runs in our cloud, so you don't need a VPS or a MetaTrader terminal of your own. The API sets things up and reports what the copier engine did.

How it works

  1. Connect your accounts. POST /v1/accounts with the broker server, login and password. A MetaTrader terminal starts in our cloud and logs in, which takes two to three minutes.
  2. Create a copier. POST /v1/copiers with the master, the account whose trades should be copied.
  3. Attach followers. POST /v1/copiers/{copier_id}/followers with each account that should copy the master, and the rules it copies with: lot sizing, symbols, trading sessions, stops.
  4. Watch it copy. Each follower reports a live status, and every copied, skipped or failed trade is an entry in the copier's events.
curl https://api.algotradertools.com/v1/copiers \
  -H "Authorization: Bearer $ATT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "name": "Gold strategy", "master_id": "4f6c2a1e-8b3d-4e7a-9c5f-1d2e3a4b5c6d" }'

Core concepts

Accounts and terminals

An account is one MetaTrader 4 or MetaTrader 5 broker account you have connected. Each one runs in its own terminal: a MetaTrader instance in our cloud that logs in with the password you give when you connect the account. The password is stored encrypted with that terminal, used only to log it in, and never shown again.

You connect an account with either of its passwords. The investor (read-only) password is enough for a master. A master's trades only need to be read, and nothing is ever traded on it. An account that receives copied trades needs its master (trading) password. That is MetaTrader's name for the trading password and has nothing to do with being a copier's master. Your plan decides how many accounts can be connected at once. See Accounts.

Copiers

A copier watches one master account and copies its trades to the copier's followers. You can pause and resume a copier as a whole. You can also have several copiers with the same master, for example one per group of followers. See Copiers.

Followers and rules

A follower is an account that copies one copier's master. Each follower has rules of its own: how lots are sized, the largest lot it trades, whether it trades in the opposite direction, which symbols it copies and at what times, and how its broker's symbol names map to the master's. An account is either a master or a follower, never both. See Followers.

The copier engine and follower status

The copier engine is the part of our cloud that does the copying. It watches every master's terminal and places the trades on the followers' terminals. For each follower it reports a status: whether the follower is copying, paused or needs attention, whether both terminals are connected, and how many copied trades are open. If a status is older than 60 seconds, the engine isn't reporting, and engine_online turns false.

Copy events

Every action the engine takes on a follower, or decides not to take, is a copy event: an open, a close, a partial close, a stop loss or take profit change, a skipped trade, or a copy recovered after a restart. Each event includes the terminal's reply and how long each step took. Events are kept for 90 days. See Copy events.

API conventions

TopicConvention
Base URLhttps://api.algotradertools.com/v1
AuthenticationAuthorization: Bearer att_…
Request bodiesJSON with Content-Type: application/json. A field the resource doesn't have is refused (unknown_field). Read-only fields such as id are ignored
Partial updatesPATCH changes only the fields you send
Errorsapplication/problem+json (RFC 9457) with a stable code
IDsUUIDs for accounts, copiers and followers; integers for copy events
TimestampsRFC 3339 in UTC, for example 2026-10-25T14:03:51.204Z
Booleans and enumsJSON booleans and lowercase strings
NumbersLot sizes, multipliers and slippage are JSON numbers
PaginationCursor-based, with limit (1–100, default 50) and cursor query parameters
Request IDsX-Request-Id response header, also in error bodies
Rate limitsRateLimit-Policy and RateLimit response headers; Retry-After on 429
VersioningThe major version is part of the path. Additive changes, such as new fields, endpoints or enum values, don't change it
Trailing slashesNone: /v1/copiers, not /v1/copiers/

Paging through lists and rate limits are covered in Limits and pagination, and request IDs in Authentication.

Next steps

On this page