Copy Trading 6.1.6
28 July 2026
This release has upgrade notes. Read them before updating — they describe behaviour changes that need your attention.
Copy Trading v6.1.6
Release Date: July 28, 2026 Tags: BINARY OPTIONS, SPOT COPY TRADING, TRADING TYPES, MONEY SAFETY, PAYOUTS, PROFIT SHARE, PLATFORM FEES, LEADERS, ALLOCATIONS, STOP LOSS, LIQUIDITY, KYC, SCHEDULED TASKS, ANALYTICS, DESIGN SYSTEM, PERFORMANCE, FEATURE, BUG FIXES
Overview
Version 6.1.6 extends copy trading beyond spot: leaders can now let followers copy their binary options trades as well as, or instead of, ecosystem spot trades. Each leader declares a trading type — SPOT, BINARY, or BOTH — and admins can offer spot only, binary only, or both platform-wide. That half is additive, and its new settings default to on.
It also carries a full review of the spot copy path, and that half is not: seven of the spot path's money movements were wrong. A stop-loss handed the follower currency outright and left the position open, a leader's profit share was credited with nothing debited from anyone, and the platform fee was reported and never taken.
Copy trading's two verification gates move onto the KYC level builder in this release. Read Upgrade Notes before you update.
Update Instructions
pnpm updator- Schema self-heal: a new market-type column and composite unique indexes are added to the leader-market and allocation tables, and the trade table is widened with binary fields. Fresh installs get this automatically. On existing installs the extension self-heals on boot, but only once the new column and index exist. If you deploy with
DB_SYNC=none, boot once with database sync enabled after upgrading so the migration can run — otherwise a leader may be unable to declare the same symbol for both classes. A clear warning is logged if the step is skipped.
No other configuration is required.
Upgrade Notes
Compatibility
Requires Core v6.5.8 or higher, the Ecosystem extension for spot copying, and the platform Binary Trading feature (core) for binary copying. Spot-only and binary-only deployments are both fully supported.
Breaking changes
None. Existing spot leaders, followers, and allocations continue to work unchanged; they are treated as SPOT.
A copy that would previously have been placed at the invented 85% payout is now skipped instead, and the reason is recorded. This only affects leader orders that carry no payout rate, which Core v6.5.8 no longer produces.
The spot money fixes do change behaviour operators and customers will notice, though nothing needs reconfiguring: leader profit share now arrives in the leader's SPOT wallet rather than ECO; the platform fee that was previously recorded but never taken is now actually charged, so follower payouts fall by it; and a triggered stop-loss or take-profit closes through a real order, so a trade reads CLOSING for a moment instead of settling instantly. On installs with Enforce KYC Feature Access switched on, following a leader now requires the Copy Traders feature and applying to lead requires Become a Trader.
Added
Spot, binary, or both
- Leader trading type: applications now include a trading type (SPOT / BINARY / BOTH). Each market a leader lists is tagged with its instrument class and checked against the matching catalog — spot symbols against the ecosystem markets, binary symbols against the binary markets.
- Admin gating: two new master switches under Settings → Trading → Trading Types — Enable Spot Copy Trading and Enable Binary Copy Trading — plus an optional Max Binary Copy Stake hard cap (quote units,
0= no cap). Binary additionally requires platform-wide binary trading to be enabled; otherwise copied orders would be rejected anyway, so the copy layer blocks them up front with a clear message. - Per-class allocations: a follower can hold a SPOT and a BINARY allocation for the same symbol independently. Spot allocations are funded from the ECO wallet; binary allocations are a single quote-currency stake budget funded from the SPOT wallet.
- Admin visibility: the admin trades table and leader detail pages show the market type, binary result (WIN / LOSS / DRAW) and expiry, with a Market Type filter.
Money model
Binary trading holds the stake at placement and releases or consumes it at expiry, so copy trading never moves principal for open orders. Copying follows a strict reserve → place → book flow: the follower's stake is sized from their reserved budget before the order is placed, the order is placed from their copy-trading wallet, then the placed order's actual amount is reconciled back. This prevents two leader orders arriving at the same moment from spending the same free budget. Settlement records the profit or loss, releases the reservation, and charges profit share only out of a winning trade.
Copied binary orders are bounded to a fairness window: a contract that arrives too close to expiry to be fair is skipped rather than copied.
Teardown and refunds
Stopping a subscription, disabling a market, or deleting a leader tears down binary positions safely — cancelling where the rules allow (with its own penalty or refund applied) or riding to expiry otherwise — and returns funds to the correct wallet for the class (spot to ECO, binary stake to SPOT). Repeating any of these steps cannot double-refund.
Changed
Copy trading's two verification gates — one for following a leader, one for applying to lead — are now decided by the KYC level builder rather than by hand.
Following a leader requires the Copy Traders verification feature
Following a leader is now gated on the Copy Traders switch in Admin → CRM → KYC → Levels, the same way the platform's other money doors are.
- On the page: a user whose approved levels do not carry the feature sees a verification notice in place of the allocation form, and is told whether they need to verify or to reach a higher level.
- On the server: the request is refused as well, so this is a real gate rather than a hidden button.
- Only once enforcement is on: it follows the platform-wide Enforce KYC Feature Access setting, which is off by default. While that is off, nothing changes. On an install that has switched it on, users who could previously follow a leader with no verification at all can no longer do so.
Leader eligibility follows the level builder instead of a hardcoded level 2
Whether a user qualified to apply as a leader was decided by a fixed KYC level 2, worked out by hand. The Become a Trader switch in the level builder was never consulted, so an operator who meant level 1 to allow leading could not express that, and turning the feature off on a higher level changed nothing.
- Changed eligibility to read the same effective verification status every other gate uses, plus the Become a Trader feature once Enforce KYC Feature Access is on. The application page shows a verification notice instead of the form to applicants who do not qualify.
Copy trading rebuilt on the platform design system
Every copy-trading screen has been rebuilt on the shared components the rest of the platform uses, so the addon no longer looks like a separate product bolted on.
- Landing page: rebuilt on the shared landing sections, with new artwork.
- User screens: the dashboard, analytics, subscriptions, trade history, leader browsing and leader detail, guides and onboarding all move to the shared stat cards, badges, money figures and charts.
- Admin screens: the copy-trading overview, health, audit and detail pages move to the same components.
- Follows your palette: fixed hues are gone, so every screen follows the operator's palette and the visitor's light or dark theme. Status colours are now identical between an admin table and the user-facing view of the same record, which they were not before.
Performance
Replication now runs to a time budget.
- Bounded run: a large batch of pending leader trades no longer occupies the replication job for an unbounded run while every following tick is skipped. It stops after 60 seconds and leaves the remainder for the next tick — explicitly without counting it as a failed attempt, so a slow batch cannot park trades permanently.
- One book read per leader trade: the order book is now read once per leader trade instead of once per follower, and outside the window in which the follower's records are locked. On a leader with many followers this is the difference between one read and one per follower held against a lock.
Fixed
Copies could be sold at a payout the platform never quoted
When copying a leader's binary order, the copy engine fell back to 85% if the leader's order carried no payout percentage. That number is not configurable and is higher than the platform default, so every affected copy paid a winning follower more than the product was sold for — a direct loss to the house on each one.
A follower must be sold the same contract as the leader. The copy is now skipped with a clear reason when the leader's order has no payout rate to copy, rather than inventing one.
The underlying cause is fixed in Core v6.5.8, which no longer allows a binary order to be created without a valid payout rate.
A stop-loss or take-profit created money instead of closing the position
When a follower's stop-loss or take-profit fired on a spot copy, the platform did not sell anything. It handed the follower currency directly — no order, no counterparty, no debit anywhere — so the sum of every participant's balance went up. Two details made it worse. The credit landed in the follower's ECO wallet, which is withdrawable, while the genuine position stayed in the copy-trading wallet, untouched and no longer tracked by anything. And the settlement price came from the visible order book, which on an AI-managed market is mostly display levels that can never be filled against — so the exit was priced where no trade could occur. On a database server not running in strict mode, this committed.
- Fixed the close path so it places a real opposite market order from the copy-trading wallet, cancels whatever remains unfilled of the entry order first so it cannot fill afterwards, and settles on the actual fill price.
Deleting a leader paid each follower their unused allocation twice
Removing a leader from the admin panel credited every follower's un-used spot allocation into their ECO wallet without taking it out of the copy-trading wallet where it actually sat. The follower ended up holding the same money in both places. Both the base and the quote side of every allocation were affected.
- Fixed both refunds so they move the funds rather than duplicating them, and repeating the deletion cannot refund a second time.
Leader profit share was created rather than transferred, and paid into the wrong wallet
The leader's cut of a winning spot copy was credited to the leader with nothing debited from the follower — new funds, not a transfer. It also arrived in the leader's ECO wallet, while the binary copy path pays leaders into SPOT, so one leader could be paid into two different wallets depending on which of their trades a follower had copied.
- Fixed the share so it is a real transfer out of the follower's copy-trading wallet into the leader's SPOT wallet, matching binary.
The platform fee on spot copy profit was reported but never collected
Every spot profit distribution wrote a platform-fee line into admin reporting and then took nothing. The follower kept the fee and no admin wallet was credited, so the revenue this product reported for itself was fictional.
- Fixed the fee so it is debited from the follower's copy-trading wallet and booked to the admin wallet before the record is written.
A follower could be charged twice for one leader trade
The live copy queue and the scheduled backstop that re-tries missed trades could both replicate the same leader trade for the same follower. The follower ended up with two funded orders and two charges against their allocation for a single leader action.
- Fixed both paths so they key on the leader's own order, so whichever runs second finds the existing copy and stops silently.
- Fixed a leader trade that arrives with no order reference being copied; it is now refused. A copy created from one could never be matched back to its leader, cancelled or reconciled.
Copied market orders reserved too little to fill
A copied market order was priced and funded from the best price on the book alone — but a market order sweeps through as many price levels as it needs, and the visible book on an AI-managed market is largely display levels that can never be filled. The reserve was therefore too small, the fill was refused, the copy was rolled back, and the follower was left with an order that could not complete while their allocation stayed spoken for.
- Fixed copy pricing so copies are priced against real, order-backed liquidity only, and the reserve is worked out by walking the levels the order would genuinely consume — erring high, and falling back to the deepest real level when the book cannot cover the size.
Stop-loss could fire on a position the follower never opened
A copy trade is created when its entry order is placed, not when it fills, and its stop level is measured from the order price. A follower waiting on an unfilled limit entry on a market that had moved away could have stop-loss act on a position they did not hold — and the old settlement then paid out the full ordered quantity as though it had filled.
- Fixed stop-loss and take-profit monitoring so it only considers trades with an actual filled quantity.
Closing a position could wipe a follower's used-allocation figure
The settlement step released the follower's used allocation in a form the database read as plain text rather than as the figure it named. On a server not running in strict mode the used-allocation counter was set to zero — freeing budget the follower had genuinely spent and letting them place well beyond their allocation. On a strict server the whole settlement failed instead.
- Fixed the release so it subtracts the right amount and never falls below zero.
Tearing down a position could under-report a follower's used allocation
On teardown the used-allocation figure was recalculated in application code — read, adjusted and written back without a lock — while other paths were adding to the same figure. A charge that landed in between was overwritten and lost, so the counter drifted below what the follower had actually spent and they could place beyond their allocation.
- Fixed the release so the database performs it in a single step, and a concurrent charge can no longer be overwritten.
Copy trading did nothing, successfully, on installs without the Ecosystem addon
On a deployment that does not include the Ecosystem addon, copy trading's scheduled jobs could not start at all. Every copy-trading job stopped — including the binary ones, which need nothing from Ecosystem — while reporting success. A binary-only install therefore had no replication backstop, no daily-limit reset, no stop monitoring and no statistics, with nothing to indicate it.
- Fixed the spot-only parts so they are loaded on demand. Binary-only deployments run every job properly, and spot work is refused with a clear reason instead of appearing to succeed.
The replication backstop was dormant until someone saved the settings screen
The scheduled job that re-tries leader trades the live copy queue missed read the Enable Copy Trading switch as off whenever it had never been saved — and nothing writes it during installation. On a brand-new deployment that job, and the binary fan-out backstop that runs behind the same gate, did nothing at all until an administrator opened copy-trading settings and pressed save once. Live copying was unaffected, so there was no visible symptom; any trade the queue dropped was simply never picked up.
- Fixed the gate so an unset switch reads as on, matching the settings screen's own default and every other gate in the addon.
One momentary error discarded a leader trade for every follower
If anything went wrong while the backstop was replicating a leader trade — a dropped connection, a brief database hiccup — the trade was immediately parked as permanently failed. Nothing revisits that state, so every follower missed that trade for good, on a single transient error.
- Fixed the handling so the trade is retried up to five times, with the attempt count recorded on it, and only parked for manual review after the fifth.
Daily limits did not apply when the backstop did the copying
A follower who had reached their daily trade count or daily loss limit was correctly refused by the live copy path — and then the backstop replicated the same trade for them moments later. The limit stopped nothing it existed to stop.
- Fixed both paths so they check the limit before anything is reserved, and a skipped copy is logged with its reason.
Turning the Ecosystem extension off did not stop spot copy trading
Disabling the Ecosystem extension left spot copy trading running. It kept writing orders to the matching engine and holding follower funds for a product the operator had switched off.
- Fixed copy trading so it checks whether the extension is enabled and skips spot work cleanly when it is not.
A late entry fill could undo a completed close
Cancelling the unfilled remainder of an entry order is best-effort, so the entry could still fill after the position had already been closed. The fill was then written back over the close, returning the trade to open and leaving a position that teardown and allocation accounting no longer tracked.
- Fixed the close so it stands. The fill is still recorded against the trade — quantity, fee and price all still accumulate — and an explicit warning is logged so the discrepancy can be reconciled rather than silently corrected.
The overnight reset resumed followers who had been paused on purpose
The nightly reset lifted a follower's pause whenever it found a daily-loss event from a previous day, without checking what had happened since. A follower whose leader had later been suspended by an administrator, or who had deliberately paused their own copying after that loss-limit day, could be switched back to active and start copying again.
- Fixed the reset so followers of a leader that is not active are skipped, and the pause is only lifted when the follower's most recent pause or resume event is itself a daily-loss pause from a previous day.
- Applies to only followers carrying a daily-loss event inside the last seven days were ever affected.
Return percentage on closed SELL copies was wrong by the entry price
The profit percentage stored on a closed SELL copy was divided by the quantity of the base asset instead of by the money committed. On a high-priced asset a 1% move was recorded as a percentage thousands of times too large. Anywhere that figure is shown or aggregated — the trade list, the analytics page, leader statistics — was corrupted for SELL copies.
- Fixed the percentage so it is measured against the value committed, on both sides.
Copy-trading scheduled jobs looked as though they never ran
Five copy-trading jobs published their progress under a name Admin → System → System Monitoring → Scheduled Tasks does not recognise, so the panel showed no status, no logs and no results for them — indistinguishable from a job that never runs. Order reconciliation reported nothing at all.
- Fixed every one of them so they report running, completed or failed to the panel, together with the counts they processed.
The analytics profit chart drew losses as gains
The cumulative profit chart drew every bar upward from the same baseline using the absolute value, so a period deep in the red had exactly the same shape as a good one — distinguished only by colour, with no axis to read it against. The hover text dropped the sign too, so a loss of 500 read as "500".
- Fixed the chart so it is properly signed. The line moves down when the result is negative, and the tooltip states the sign explicitly.
A failed load on the copy-trade history page looked like an empty account
When the trade history failed to load, the page rendered as though the account had no history at all — an empty table, zero trades, zero profit, a 0% win rate. Nothing distinguished a failure from a customer who has genuinely never copied a trade.
- Fixed the page so the failure is detected and recorded, and whatever is already on screen is left in place rather than being replaced with zeroes.
Smaller corrections
- Fixed stop-loss monitoring so it reads real liquidity, and says when there is none. Stop levels are measured against real, order-backed liquidity rather than the whole visible book, which on an AI-managed market is largely display levels nothing can trade against. When a market's book turns out to be entirely synthetic, a warning now names the market and points at Admin → AI Market Maker → Markets → (market) → Real Liquidity % — the remedy is a market configuration change, and without the warning stop-loss simply looks broken. The book is also read once per market per run instead of once per open position.
- Fixed a trading style with no leaders advertising a green "+0.0%". A trading-style card with no leaders yet showed its average return as a green "+0.0%", which reads as a small gain rather than as no data at all. Exactly zero now renders neutral and unsigned; only a real gain is green and carries a plus.
- Fixed trading-style cards not lining up. The cards keep equal height when one description wraps onto an extra line, and the hover arrow sits in the card's layout instead of floating over its contents.