Following a trader
How a follower subscribes — per-market allocations and where the money comes from, the three copy modes, the risk caps and what each one actually limits, adding and removing funds, and stopping cleanly.
Following a leader is one form and one transfer. The follower picks which of the leader's markets they want copied, how much money to put behind each, how copies should be sized, and two risk caps. The money then moves out of their normal wallet into a dedicated copy-trading wallet, where it stays until they stop.
What is checked before a subscription is created
Ten things, in this order. The first failure is what the follower is told.
-
Verification — the
copy_tradersKYC feature, once Enforce KYC Feature Access is on. The form shows a verification notice instead of the allocation fields, and the server refuses the request as well. -
Platform availability —
copyTradingEnabledon,copyTradingMaintenanceModeoff. -
The leader is
ACTIVE— a pending, suspended, rejected or removed leader cannot be followed. -
Not yourself — a leader cannot follow their own profile.
-
Not already following — any existing subscription to that leader that is not
STOPPEDblocks a second one. -
No market conflict — you cannot hold an active allocation on the same
(symbol, instrument class)from two different leaders. The error names the markets and the other leader. -
The markets belong to this leader — every allocation must match a market the leader has declared and left active, in the same class.
-
Binary availability — a binary allocation additionally re-checks that binary copying is on.
-
Leader capacity — the effective ceiling is the lower of the leader's own
maxFollowersandcopyTradingMaxFollowersPerLeader. -
Follower capacity —
copyTradingMaxLeadersPerFollower, counted over subscriptions that areACTIVEorPAUSED.
Following is rate-limited to ten requests per hour per user.
Allocating capital
An allocation is per market and per class, and it is a real transfer.
| Class | Sides | Funded from | Returned to |
|---|---|---|---|
SPOT |
A base budget and a quote budget, independently | The ECO wallet | The ECO wallet |
BINARY |
A single quote stake budget; base is forced to zero | The SPOT wallet | The SPOT wallet |
On a spot market the two sides fund different directions. A BUY copy spends the quote budget; a SELL copy spends the base budget. A follower who allocates only quote will have every one of the leader's sells skipped, and vice versa — the subscription looks half-broken while behaving exactly as configured. At least one side must be greater than zero.
Every balance is checked up front across all markets before anything moves, so a subscription either funds completely or not at all. The error names the currency, the wallet type and both figures:
Insufficient USDT balance in ECO wallet. Required: 500.00000000, Available: 320.00000000
Each transfer is written twice into the copy-trading transaction log — once as a
negative ALLOCATION against the source wallet and once as a positive one against
COPY_TRADING — so the trail reconciles from either side.
copyTradingMinAllocationAmount and copyTradingMaxAllocationPercent are sent to
the follower's dashboard for display, but no server-side path refuses an allocation
for breaching either. The limits that actually bind are the leader's per-market
minBase and minQuote, and the follower's own wallet balance.
The three copy modes
The mode decides how a leader's trade size becomes the follower's trade size. It is chosen at subscribe time and can be changed later.
| Mode | Formula | Behaves like |
|---|---|---|
PROPORTIONAL |
The leader's trade as a fraction of their own balance, applied to the follower's available allocation | Mirroring the leader's conviction rather than their bank balance |
FIXED_AMOUNT |
A fixed quote amount per copy, converted at the leader's price | A flat stake, whatever the leader risked |
FIXED_RATIO |
The leader's quantity multiplied by a ratio (0.01–10) | A constant fraction of the leader's size |
PROPORTIONAL is the default and the only one that needs nothing configured.
FIXED_AMOUNT with no amount set and FIXED_RATIO with no ratio set both produce
copies of zero, which are skipped with a reason rather than failing loudly.
The exact arithmetic, including what happens when the leader's balance cannot be read, is in How trades are mirrored.
The risk caps
Four caps exist on a subscription. Two are on the follow form; two are only reachable through the subscription update endpoint.
Max position size
On the follow form it is a percentage slider, defaulting to 20.
- For a binary allocation it is genuinely a percentage — of that allocation's total stake budget. A budget of 1,000 USDT with the cap at 20 stakes at most 200 USDT on a single copy.
- For a spot allocation the engine applies the same number as a hard ceiling in base units. A cap of 20 on BTC/USDT means at most 20 BTC per copy — which on any realistic allocation never binds at all.
If you rely on this cap to contain spot exposure, it is not doing what the slider suggests. Size spot exposure with the allocation itself, which is a genuine hard ceiling: a copy can never spend more than the allocation has left.
Max daily loss
Also a slider on the form, also defaulting to 20 — and also not a percentage in the engine.
Once a minute, a cron job sums each active follower's closed losing copies since
UTC midnight, converts each to its USDT equivalent, and compares the total
against this number. Past it, the subscription is set to PAUSED, the follower is
notified with the figure, and an audit entry records the event.
So a value of 20 means "pause me after 20 USDT of realised loss today", not "after
a 20% drawdown". Set it against the size of the allocation the follower actually
put up.
The daily trade-count ceiling is read from copyTradingMaxDailyLossDefault —
the risk-tab setting whose label is Default Max Daily Loss. With its shipped
value of 20, every follower is refused further copies once they have 20 trades on
the day, with the reason "Daily trade limit reached".
If followers report copying stopping partway through an active session, this is almost always why. Raise that setting if you intend high-frequency leaders to be copyable.
Stop loss and take profit
Per-subscription percentages, applied to every open copy. They are accepted by the follow endpoint and by the subscription update endpoint, but the follow form does not currently expose them — set them afterwards.
- Stop-loss: 0–100%, measured from the copy's executed price.
- Take-profit: 0–1000%, same basis.
A dedicated job checks open copies every 30 seconds. When a level is hit, the
platform cancels whatever is unfilled of the entry order and places a real
opposite market order. The trade reads CLOSING until that order fills, then
CLOSED with the realised profit. Only copies with an actual filled quantity are
considered — an unfilled limit entry cannot trip a stop on a position the follower
never held.
Managing a subscription
All of these are rate-limited to thirty actions an hour; fund operations to twenty.
| Action | Effect |
|---|---|
| Pause | No new leader trades are copied. Open copies stay open, allocations stay funded and stay committed |
| Resume | Copying restarts. Nothing is settled or released on the way through |
| Update | Change copy mode, fixed amount, fixed ratio, and any of the four risk caps |
| Add a market | Create a new allocation on another market the leader offers, funded like the first |
| Add funds | Top up an existing allocation on one side |
| Remove funds | Withdraw from an allocation — capped at allocated minus committed |
| Stop | Terminal. See below |
Removing funds can never reach into money that is currently behind an open order. On a binary allocation only the quote side exists, so a base withdrawal is refused outright.
Stopping cleanly
Stop is the terminal action and it runs in a deliberate order:
-
Live copies are torn down first. Every open follower order is cancelled, its hold in the COPY_TRADING wallet is released back to balance, the trade is marked
CANCELLEDand the allocation's committed figure is reduced by the real unfilled amount — so a partially filled order releases exactly its remaining portion. -
Allocations are re-read. Only after teardown, so the committed figures reflect the releases that just happened.
-
Unspent money goes home. Each allocation transfers its remaining base and quote back to the wallet it came from — ECO for spot, SPOT for binary — writing a
DEALLOCATIONrecord for each leg. -
The subscription is marked
STOPPED.
Binary copies that could not be cancelled under the binary engine's own rules ride to expiry; their proceeds are swept to the SPOT wallet by the settlement handler.
A stopped subscription cannot be resumed or have allocations added to it. Following the same leader again creates a fresh subscription.
When someone else stops it for you
Three things pause or stop a subscription without the follower asking:
- The daily loss limit, which pauses it and lifts the pause on the next UTC day — but only if the most recent pause or resume event on that subscription is itself a daily-loss pause from a previous day. A follower who deliberately paused after a bad day is never restarted against their will.
- An administrator suspending the leader, which pauses every follower behind them. Those pauses are never lifted automatically; the leader has to be reactivated and the followers resumed.
- An administrator force-stopping the subscription, which is terminal and refunds like a normal stop.