Everything we shipped, including the mistakes.
New features, improvements, and the bugs we found and fixed. When a fault cost our traders money, the entry says how much. Updated .
Numbers you can check
Your balance now reconciles against your broker instead of asking you to trust ours, disconnecting an account stops erasing what it did, and you can search the whole record from anywhere. We also found orders the broker had filled that we had written down as cancelled, and put them back.
Your balance, reconciled against your broker
Performance shows the arithmetic between what your broker says your balance is and what TTMT tracked, then names the difference: withheld tax, trades you placed yourself, deposits and withdrawals. We checked 22 accounts and 12 carried a real gap, the largest just under €10,000 on a €12,300 account. You get the reconciliation rather than a total that quietly implies we account for every cent.
Orders your broker filled were recorded as cancelled by you
When we compared our records against the broker's live order list, anything missing was written down as cancelled by you. A filled order leaves that list exactly the same way a cancelled one does, so real fills were being logged as your cancellations. One live account had €100.22 of realised loss with no record of it at all. We checked 58 affected legs and every one had genuinely filled. Across the fleet this touched 647 trades and 34 traders going back to February, and those records are now corrected.
Search everything you own
Press Cmd+K anywhere to search trades, signals and positions by symbol, reference, direction, channel, account or time. Each log gets its own search box too. It is the one place that also returns things you deleted, so a trade you binned last month is still findable.
Also new
6- Disconnected accounts keep a full page of their own: performance, charts, calendar, read-only logs in that account's currency, and exports. · Accounts
- The disconnect dialog counts your open exposure before you confirm, and reconnecting restores the channel routing the account had. · Accounts
- Thirty days to change your mind, no reason required. The old policy only refunded you if you had not used the product for its one purpose. · Billing
- Verified reviews on channel pages, with helpful votes, sub-ratings and four sort orders. · Channels
- A read-only view of broker activity TTMT never tracked: deposits, withdrawals, fees, and positions you opened yourself. · Trading engine
- Decide whether disconnected accounts count toward your lifetime totals. · Dashboard
Improvements
4- Every performance card says how fresh its data is. · Dashboard
- Self-hosted execution is available to every account rather than a per-user grant. · Accounts
- Settings links scroll to the section you asked for. · Trading engine
- MetaTrader account limits agree across billing and accounts. · Billing
Fixes
9- A broker glitch reported each self-hosted position's full notional as floating profit and loss, and nothing checked whether a floating number was even plausible. One account showed −€13,305 against a €500 limit and latched a daily-loss halt. It was actually up €117.76. Nothing closed only because the market was shut. · Risk
- A trade that closed at its stop could later be stamped "TP1 hit" if price simply rallied back through that level afterwards. On losing trades the false-flag rate had risen from 1% to 10.9%. Sixteen affected trades were corrected. · Trading engine
- A backgrounded phone tab was showing a red "connection lost" and disabling your Trading control on a healthy account. A drop under five seconds is now invisible, and the message describes our data link rather than your broker. · Dashboard
- New self-hosted accounts could not finish setup while the forex market was closed, because the readiness check only ever watched a forex price. No weekend setup had succeeded for ten days. · Accounts
- New broker connections failed for eleven and a half hours after our hosting provider retired an API verb without warning. Nobody could connect an account in that window. · Accounts
- Swapping a live account's execution path now asks you to confirm first. · Accounts
- The command palette was rendering every result at half opacity, which three people reported as "the results look washed out". They were right. · Dashboard
- During a broker outage every disconnection showed the same "this usually clears on its own" message, even twenty-eight minutes in. · Trading engine
- The "chat with us" link reaches the actual community rather than a dead Telegram handle. · Dashboard
Breakeven that actually protects you
Two faults in the same feature, both of which cost money. Moving a stop to breakeven could leave it on the losing side of your entry, and a breakeven the broker refused could force-close the trade and then report the loss as a win. Both are fixed and the affected records corrected.
Breakeven could leave your stop on the losing side
A breakeven move could land your stop below entry on a BUY, or above it on a SELL, and could push an already-protected stop backwards. Nothing checked that the new stop actually protected anything. Over ninety days, 297 positions closed at a losing-side breakeven stop for a net loss of about $11,300, and 87% of them were losers. The 45,144 correctly-placed breakeven closes over the same period were net positive by about $103,000, so this was a narrow fault with a real cost. The counter that reports "breakeven applied" now counts positions that actually moved rather than attempts.
A refused breakeven could close your trade and call it a win
When a signal asked for breakeven on positions that were underwater, the guard compared the proposed stop against your entry but never against the current market. The broker refused it, and the fallback force-closed 24 positions. Worse, that close path recorded no profit-and-loss figure, and a missing figure is read everywhere as "settled and flat". So a real €109 loss was reported to the trader as a profit. Thirty-four trades since 17 August had been mislabelled this way and have been corrected.
Also new
3- Choose whether a limit-order cancel applies only to trades that actually filled. The old unconditional behaviour cancelled 1,647 trades across 35 traders that had never filled anything, at a median of two and a half minutes in, against channel timeouts of thirty minutes or more. · Trading engine
- Cancel remaining limit orders when a signal triggers a partial close. Of 417 partial-closed trades in a month, 97 still had live limits able to re-enter deeper layers while the trader was winding down. · Trading engine
- Pick which topics inside a Telegram forum group TTMT listens to, so a follow-up in one topic cannot attach to a trade from another. · Channels
Improvements
2- Totals disclose when a disconnected account is included, rather than silently counting it. That covered 170 accounts and about $139,000 of profit and loss nobody could see. · Dashboard
- Twenty-six onboarding fixes: closing the modal stops deploying abandoned credentials, a failed trial no longer strands a provisioned account, and failure messages describe the actual problem instead of claiming we are busy. · Accounts
Fixes
4- Importing a shared config profile was silently dropping eight execution settings. Twenty-three of twenty-eight imported profiles still differed from the profile they came from. · Trading engine
- A trade could settle on incomplete position data. Guarded, with ninety days of affected rows corrected. · Trading engine
- A partially-filled residual was being read as evidence a trade never filled, so trades were labelled "Not Filled" over orders that provably executed. · Trading engine
- Runner positions with no fixed take profit, which is their correct state, were being written off as permanently failed by a repair job. · Trading engine
A safety net that had never worked, and a charge that billed twice
The watchdog that cancels a stale limit order once price crosses its take profit had been dead since the day it was written. We also billed some people twice for one add-on click. Both are fixed, and this release explains what each one cost.
The take-profit watchdog had never once run
A watchdog is meant to cancel your remaining limit orders when price crosses the first take profit, so a trade that already hit its target cannot re-enter deeper. It read a database result as a list when it was an object, so its watch list was permanently empty and both halves of the module were dead from the first commit. Across one measured week, 145 trades belonging to 14 traders crossed TP1 before any limit filled, kept their limits live, and later closed at a loss. On live accounts that came to about $1,860.
One add-on click was charging for two
Adding a single extra account slot could bill you for two. A billing line at quantity zero was being read as one, then incremented. Two related faults went with it: scheduled add-on removals fired a full cycle late, four times out of four, and a card declined mid-change could delete the whole line and wipe slots you had paid for. If your billing looks wrong, write to us and we will sort it.
Change your broker password without disconnecting
Update your credentials in place, from account details or from the amber strip we show when we detect a password problem. Your channel routing, settings and history stay exactly as they were, which they did not when the only option was disconnect and re-add.
Improvements
7- Unfilled limit orders now expire after thirty minutes by default instead of four hours. Two hundred and fifty of 299 active channel pairings had inherited the four-hour value without choosing it, while everyone who did choose clustered around thirty minutes. · Trading engine
- Failure reasons come from the trade record in plain language. For traders with a single account, the real reason was being overwritten by an internal reference 104 milliseconds later, so every single-account failure was opaque. Notifications were showing raw tokens too: 84% of broker-error alerts in a month were unreadable. · Trading engine
- A stale broker password now shows as "credentials invalid" rather than a generic disconnection whose only suggested fix could never work. · Accounts
- Per-asset overrides say which setting wins: sizing and take-profit pips go to the override, stop-loss pips lose to the channel default. · Trading engine
- Better AI trade explanations, grounded on verified facts about the trade. · Dashboard
- The dashboard says when your trading service is asleep instead of rendering as though everything were live, and paying again wakes it, redeploys your accounts and revives paused channels without a support ticket. · Accounts
- Limit orders can wait up to ten days when you want them to, which swing channels needed. · Trading engine
Fixes
7- A "close 50%" instruction could close the whole trade. Rounding to the broker's minimum lot step over-closed on 76 trades across 16 traders. · Trading engine
- A failed read of your open positions was being treated as "you have no positions" rather than "we do not know", which could finalise a trade as closed while the broker still held it live. · Trading engine
- A cleanup sweep marked 24 limit orders cancelled and the trade "Not Filled", but the broker had refused those cancels. All 24 stayed live, filled five hours later and ran to the stop while the dashboard showed nothing. · Trading engine
- Account conversions to self-hosted execution had never once completed. Every attempt died about a minute in, and a reconciler could kill the readiness check mid-flight on any multi-account trader. · Accounts
- With Best-Price Entry on, take-profit targets were still measured from the pre-Best-Price edge, so a 100-pip target could sit 170 pips away. · Trading engine
- Once you pressed Reconnect, a false red "connection down" banner could never clear again. · Accounts
- With two alerts on the same symbol and direction awaiting details, a follow-up could attach to the wrong one. · Channels
Credit that counts, stops measured from where you filled
Prop-firm credit now sizes your positions, stop distances are measured from your actual fill rather than the signal's stated entry, and the lot-size cap finally matches what the settings screen has always let you type.
Broker credit counts as tradable capital
Prop-firm and bonus credit appears on your account card and feeds into percentage sizing, so a credit-funded account sizes against what it can actually trade. Credit counts up to the size of your balance and no further, which is a fixed bound rather than a setting. This is on by default, so if you use percentage sizing on a credited account your positions got larger. The notice on your account card names the amount and links to the opt-out.
Your stop was measured from a price you never got
When you set a stop in pips and Layer 1 filled at market on a price that had already moved, the stop was still measured from the signal's stated entry. One trade ended up with a real stop distance of 126 pips, and a race after the fill made it worse about 95% of the time, sweeping the trade for a loss just before a 570-pip run in its favour. It had never worked at all on self-hosted accounts. You can now choose whether the stop is anchored to the signal's entry or to where you actually filled.
A lost connection could disarm every automatic close
An inbound "account disconnected" event deleted the account's monitoring entry while it was still active, which silently switched off all four paths that close a position: the heartbeat sync, the ingestion path, the position watchdog and the rebuild. No error appeared anywhere. In the observed case the broker closed two positions 117 seconds later into an account that was completely blind, and nothing would have rebuilt the entry for up to six hours.
Also new
6- Daily loss and profit budgets per config profile, with your own choice of what happens on breach. · Risk
- Rate and review a channel you have actually traded, and read what other verified traders said. · Channels
- Suggest a correction to a channel listing, and hear back about whether it was accepted. · Channels
- Channel access tiers, pricing and join instructions, with links between a channel's free and VIP versions. · Explore
- Rebuilt performance charts: intraday buckets, per-trade comparison bars, month and year pickers, and a day drill-in. · Dashboard
- Choose whether the stop distance is measured from your Layer 1 fill or from the signal's entry. · Trading engine
Improvements
5- The lot-size cap is now a flat 20 across all risk levels. It had been 5, 7.5 and 10 while the settings screen, the API and the database all accepted 100, so a trader configuring 20 lots silently got 5 with no warning. · Risk
- Fixed lot sizes above five require typing the exact number, because a checkbox was too easy to click through. · Trading engine
- Trade snapshots show all eighty-nine captured settings. They had been showing thirty-nine. · Trading engine
- A signal built from an edited Telegram message is marked as one, with the original and edited text side by side. · Channels
- One hundred config profiles instead of fifty. · Trading engine
Fixes
15- Percentage sizing computed risk from the live market price even for limit orders, which fill closer to the stop. Real positions came out smaller than the risk you asked for. · Trading engine
- Two alerts twenty-four minutes apart from the same channel, with every price shifted by one, were both absorbed into the first trade. The second setup produced no trades at all while the signal still read as executed. · Trading engine
- A Pro subscriber with a healthy subscription was being told they needed one. Seventeen customers with a payment issue were pointed at the plan picker, which is exactly how you end up with two subscriptions, and about twenty-five Essential customers could not reach the add-on at all. · Billing
- A customer with an old cancelled trial alongside a live paid subscription was shown "payment overdue" and then suspended, locking a paying customer out of their own open positions. · Billing
- Performance days were bucketed in UTC and presented as yours, with broken daylight-saving arithmetic. A trade could land on the wrong day in the calendar and both charts. · Dashboard
- Position log CSV export had failed on every attempt since 30 July, silently. The signal log had no export at all. · Dashboard
- Per-profile daily limits shipped and did nothing for ten days: a strict validation rule rejected all three fields. It had also broken config profile import since 6 August. · Risk
- Channels titled in styled lettering are searchable again. Of 9,354 known channels, 820 use those characters and 801 were sitting invisibly in people's lists. · Channels
- Pressing Reconnect on a self-hosted account left it blind to take profits, stops, breakeven and trailing for up to six hours. Twenty-seven accounts were exposed. · Accounts
- Floating profit and loss was calculated as equity minus balance, which folds credit into what looks like profit. It now sums your open positions. · Accounts
- Settings with a value of zero, meaning disabled, would not save. · Trading engine
- Average R was printed "over 100 trades" off an eighteen-trade sample on four channel groups. · Dashboard
- Settings copy matches the engine. The limit-order timeout said 240 minutes while the engine cancelled at 30. · Trading engine
- The account switcher was printing each login twice and overflowing its column. · Dashboard
- A margin check that passed at exactly the point of going negative, and an unverifiable margin probe treated as safe, both now fail closed. · Trading engine
Percentage sizing, and a dashboard rebuilt for the phone in your hand
Set risk as a percentage of balance instead of guessing at lot numbers, organise your channels and profiles into groups, and use all of it on a phone without fighting the layout.
Size positions as a percentage of balance
Set risk as 1% of balance instead of a lot number. Volume is solved per entry layer from that signal's own stop distance, in your account currency, so a dollar account sizes a euro-yen trade correctly. There is a live calculator showing what the percentage means in money before you commit, per-asset overrides work in percentages too, and the mode travels with a shared profile.
The dashboard is rebuilt for phones
Scrolling tab rails instead of wrapped rows, sticky sheet footers so Save is always reachable, real touch targets, and about a dozen screens recomposed: the trade view, the activity timeline, live positions, the chart, billing, the signal tester and the channel picker, which is now a bottom sheet that does not launch the keyboard at you.
Group and organise your channels and profiles
Drag channels into groups, with a left rail of smart views, a search and filter toolbar, and rollup stats per group. Config profiles get the same treatment. Once you are past a handful of each, a flat list stops working.
Also new
6- Set take profits as a multiple of your stop instead of fixed pips, so each target scales with that signal's own risk. · Trading engine
- Cut your lot size automatically after consecutive losses, with a backtest panel that leads on drawdown rather than a flattering return. · Risk
- Trading hours per config profile, which override the account and channel schedules. · Trading engine
- See exactly why the signal tester skipped a signal, stage by stage, running the same gates production runs. · Channels
- Restart a paused trading service yourself, from a banner that says why it paused, and reconnect a self-hosted account without help. · Accounts
- One Connectors page covering Claude, the read-only API and webhooks. · Integrations
Improvements
4- Shared profiles carry per-trade profit and loss limits, Layer 1 market tolerance and the execution schedule. · Trading engine
- The daily breakdown splits "did not fill" from "needs attention", so a quiet day stops looking like a pile of failures. · Dashboard
- Reworked Telegram phone entry with a real international input, specific code errors and a resend path. · Accounts
- Self-hosted execution opened up to live and prop-firm accounts. It had been demo-only. · Accounts
Fixes
18- A channel reposting or correcting a signal it had already sent silently opened a second trade on top of your existing position. One trader lost about $1,580 to it. · Trading engine
- Duplicate detection was switched off entirely for multi-account broadcasts, so one alert posted three times to two accounts opened six trades instead of two. · Trading engine
- A stop-gap close wrote zero profit and loss whenever a trade had no currently-open positions, which erased money already banked by earlier partial closes and take profits. · Trading engine
- On MT4, a position's opening and closing records can carry the same identifier, so the closing one was discarded as a duplicate and the trade showed zero on a real profit or loss. · Trading engine
- Live profit and loss flickered and jumped backwards because price updates raced each other. Frames older than what is on screen are dropped, and staleness is measured against your broker's clock. · Dashboard
- The monthly calendar was built from your first 1,000 closed trades only. One trader with 3,113 closed trades saw exactly 1,000 of them. · Dashboard
- The connection light was a single red or green read off a stale database column, so a connecting account looked broken and a paused one looked live. · Accounts
- Stored trade profit and loss could drift from the sum of its positions. The cause is fixed and affected rows corrected. · Trading engine
- A self-hosted account set to risk 1% executed at a hardcoded 0.02 lots instead of about 0.4 whenever the bridge briefly reported not ready, with no notification. · Accounts
- If price had already blown through the signal's stop, the engine still tried all 36 orders and let the broker refuse each one. It now rejects up front and says why. · Trading engine
- Signal broadcasting was completely non-functional across the fleet for over a day, and after the transport fix anyone with more than one account still failed with an opaque error. · Trading engine
- Broadcast signals had never been checked against the daily-loss halt or the maximum-open-positions cap. · Trading engine
- Trade history and Explain kept working after older events moved to cold storage. They had been going blank. · Dashboard
- Self-hosted setup no longer fails when your broker password contains a dollar sign, and a wrong login fails fast instead of spinning for ten minutes. · Accounts
- Long dropdown lists scroll again. A framework upgrade had removed the height cap, so channel lists ran off the bottom of the screen. · Dashboard
- Reconnect slots respect your plan. Pro was capped at one instead of five. · Accounts
- Unset take-profit slots stopped triggering a false ordering error on save. · Trading engine
- Faster dashboard load and fewer intermittent errors. First paint was firing about seven authentication calls plus one per feature flag. · Dashboard
A rebuilt trade view, and a run of self-hosted accounting fixes
The trade, signal and position logs were rebuilt from scratch, every trade got a live candle chart, and we spent most of the month correcting what self-hosted accounts were recording about their own money.
Rebuilt trade, signal and position logs
Day grouping with realised rollups, one consolidated toolbar, saved column presets, frozen headers, and a "N new" pill that holds incoming rows so the table stops moving under your cursor. Selection happens on hover rather than through a separate cleanup mode. On a phone you get purpose-built cards with long-press select instead of a squeezed table.
A trade view that shows the plan against what happened
A take-profit rail comparing plan to actual with exit and live markers, orders grouped by entry layer with per-row profit and loss, and an activity tab that opens on the moments that mattered. The signal view got the same treatment: your original message annotated with the numbers the parser matched, and a per-account outcome for every trade the signal produced. Every trade also gets a live candle chart with its entry zone drawn as a band.
Move a cloud account onto your own terminal
Self-hosted execution replaces a shared third-party cloud with a private bridge we run for your account alone. The upgrade is a six-step wizard that pauses trading, confirms you are flat, verifies your broker credentials before tearing anything down, and only then commits. Close the tab halfway and the account stays visible with a resume link.
Also new
5- Teach the parser when it reads a signal wrong. Your correction becomes a training example for that channel, alongside per-channel examples and prompts. · Channels
- Blacklist words so a channel's chatter never reaches the parser. Two hundred and ten channels now use it. · Channels
- New trade log columns: duration, pips, stop level, close time, and whether breakeven, trailing or redistribution fired. · Dashboard
- Profit and loss figures say whether they are live, settling, stale or provisional, instead of presenting a partial number as final. · Dashboard
- Honest outcome labels on closed trades. "Stopped out" became a real outcome instead of being masked, and a platform close reads as automated rather than as a raw broker code. · Trading engine
Improvements
2- Broker rejections explained in English, with a link to the setting that fixes them. A real "too many open positions" refusal had been surfacing as an internal error reference. · Trading engine
- An eight-state connection badge that can only ever narrow when it is showing you something alarming. · Accounts
Fixes
16- Self-hosted trades were recording roughly half their real profit and loss, because reconciliation always called the cloud provider even for accounts that do not use it. One trade the broker settled at −378.30 was recorded as −191.99, and a winner showed 0.00. · Trading engine
- A self-hosted layered trade closed with 24 real broker positions while TTMT recorded 12. Twelve positions and −174.80 had no record at all. · Trading engine
- The self-hosted bridge injects an internal record carrying the entry spread as profit, which was sign-flipping real results. A trade genuinely up about $6.18 displayed as +$3.06. · Trading engine
- The bridge's local position book could resurrect a position the broker had already closed, so a self-hosted trader saw a position sit open indefinitely. · Trading engine
- A self-hosted terminal only streams prices for symbols it already holds, so a signal on any other symbol timed out and that account was skipped from the trade entirely. · Trading engine
- After adding or switching an account, the background recovery loops were stopped for cleanup and never restarted. Every closed position needing recovery then showed $0.00 for the rest of that service's life. · Trading engine
- A pip-value calculation could overflow its database column inside the same transaction that recorded a trade's orders and positions, rolling the whole thing back while the broker held a real live position. That position was then invisible to breakeven, trailing and the watchdog. · Trading engine
- A late closing record during a provider incident was dropped from the total, so a real $33.52 loss displayed as $0.00 and marked won. · Trading engine
- A broker margin-call liquidation was being labelled an ordinary loss rather than a stop-out. · Trading engine
- A channel created or enabled after your service started reached the active list but never the monitored one. One trader's self-created channel processed zero messages for its entire life. · Channels
- A price feed with no live ticker read as infinitely stale, forcing a limit at entry even when price had barely moved. One trade never filled while sibling accounts executed at market. · Trading engine
- TTMT's own breakeven move was being read as a manual change by you, which told you we would respect it and then dropped the position from all further stop management. · Trading engine
- A healthy self-hosted account was evicted as a zombie and shown disconnected over a weekend, because quotes legitimately stop when the market is closed. · Accounts
- A symbol mapping differing only in letter case passed validation and then failed every trade. · Trading engine
- Partial-execution alerts were pasting raw internal error text into your Telegram messages. · Trading engine
- A weekend no longer reads as a broker problem, and closed trades stopped showing phantom pending take profits. · Dashboard
Add your own channels, and stop paying for the same thing twice
You no longer have to ask us to approve a channel. We also fixed a billing fault that had been creating a second subscription on the same account whenever someone changed plan, and found that Close Trade had only ever closed one position out of a layered trade.
Add any Telegram channel yourself
Run the same analysis our team runs, review the execution mode and stop and target settings it suggests, and switch the channel on. No request, no waiting. Approved channels publish to the library unless you mark them private. We still refuse, on the server, to execute on alert with no stop loss.
Close Trade was closing one position out of many
A layered trade is several broker positions. Close Trade closed the first one and left the rest open with their orders uncancelled, and Set Breakeven had the same limit. If you pressed Close and walked away, you were still in the market. Both now act on every open position and every pending order in the trade.
Changing plan was creating a second subscription
An existing subscriber who changed plan was sent through a fresh checkout, which produced a second parallel subscription on the same customer. People were genuinely double-billed with no proration. Plan changes now happen in place with a preview of what you will actually pay, and the checkout path refuses to run for anyone who already subscribes. The upgrade dialog had also been showing the entire next invoice labelled as a proration, so a routine upgrade looked like a $153 penalty. It now leads with what is due today, which is usually nothing.
Also new
8- Auto-close a trade at your own profit or loss amount, with suggested figures drawn from your own last thirty days rather than invented. · Trading engine
- Connect your own MetaTrader terminal as an alternative to the shared cloud. · Accounts
- Live prices and one-click Close or Set-Breakeven in Live View, with honest freshness states rather than a fake zero. · Dashboard
- Close a whole channel's trades at once, behind a confirmation and with a per-trade result. · Dashboard
- Best-Price Entry places Layer 1 at the deep edge of the entry zone, with the stop and targets recomputed. · Trading engine
- Force Layer 1 to execute at market when price is already close to the intended entry, with a tolerance you set. · Trading engine
- Approve a channel yourself using the same quality and legitimacy analysis our reviewers use, rate-limited to five an hour. · Channels
- A markets-closed countdown in the navbar that gets more precise as the open approaches. · Dashboard
Improvements
4- Live View redesigned from stacked full-width cards into a grid sorted worst-first, with a drill-down for positions and pending orders. · Dashboard
- Symbol mapping health is visible everywhere: a banner, an account badge, a header indicator, and a warning before you delete a mapping with recent trades. · Trading engine
- The broker-disconnect warning moved below the navbar and turned solid red. The old faint version read as a disabled control. Permanent dismiss became a twenty-minute snooze. · Accounts
- We added a captcha to sign-in on 1 June and removed it again on the 18th. It caused more trouble than it prevented. · Accounts
Fixes
18- A follow-up message replying to an older post could move the stop loss on the wrong trade. A sixty-day sweep found 672 misroutes and 95 cases where a trader's stop was silently moved on a trade they did not mean. An unresolved reply is now dropped and reported rather than guessed. · Trading engine
- When the primary parser failed over to its backup model, every retry was rejected because that model refuses a non-default setting. The signal was dropped with no trade and no visible cause. · Trading engine
- Every night during the forex rollover, a market-hours check that knew about weekends but not the daily rollover read the expected silence as a dead feed and forced a reconnect of every account on the platform. · Trading engine
- After a reconnect, a symbol's price feed could go silently stale with nothing resubscribing, so trades could execute against a frozen price while the health indicator stayed green. · Trading engine
- A transient provider hiccup could start a self-perpetuating reconnect loop that never let the rate limit clear, risking accounts going dark with no ticks, no fills and no breakeven or trailing management. · Trading engine
- An unhealthy connection could wedge a single account indefinitely. One live account sat stuck for about ten and a half hours while the rest of the fleet traded. · Trading engine
- A connection MetaAPI itself reported as disconnected could still pass our health gate and reach the trade executor. · Trading engine
- Startup for self-hosted accounts opened connections before registering routing, so it defaulted to the cloud provider instead of the account's own bridge, and cached that wrong choice for the service's whole life. · Trading engine
- A self-hosted broker reply meaning "nothing to change" was read as a real failure, pushing take-profit redistribution over its failure threshold. · Trading engine
- The same open trade was showing different floating profit and loss in the navbar, the trade view and Live View, with gaps that grew as price moved and sometimes flipped sign. · Dashboard
- You could map a symbol your broker does not offer, and every trade would then fail silently. Mappings are validated against your account's real symbol list, and a rejected save no longer wipes the mapping you had. · Trading engine
- Confirmation emails work on any device. Opening the link on a different phone, or inside an email app's browser, confirmed your address but created no session and stranded you on "check your email". · Accounts
- New MetaTrader accounts connect again after a provider host change broke setup across the fleet for a day. · Accounts
- A channel you added yourself could vanish from your channels page and the navbar, because both lists were built by filtering the curated library. · Channels
- The trade journey stopped opening with "after your stop loss was hit" on trades where no stop was hit, and stopped mixing in events from other trades on the same signal. · Dashboard
- A tab left open long enough for its session to rotate redirects to login instead of crashing to an error page. · Accounts
- A fresh signal shortly after a same-direction close was being misread as a follow-up to the closed trade and dropped. · Trading engine
- The trade preview chart replaced a randomly generated price walk, which had been making people misread where their entry sat against their stop. · Dashboard
244 trades were labelled wins when they were losses
The most serious thing we have found and fixed this year. A missing profit-and-loss value was being read as zero, which turned real losses into recorded wins. We corrected every affected record. This release also closes a duplicate-order fault that doubled real market exposure.
244 trades were reported as wins on real losses
When a broker's closing figure arrived after we had already finalised a trade, a missing value was treated as zero rather than as unknown, so the trade settled flat and was labelled a win. The self-correction window was thirty seconds, and real recovery takes minutes to hours, so the wrong label stuck for good. Two hundred and forty-four trades going back to December 2025 were affected, totalling about €62,400 of losses shown as wins. Every one has been corrected, and all closure paths now treat a missing figure as unresolved.
A connection hiccup could place your order twice
If the broker connection threw an ambiguous error while placing an order, but the order had actually reached the broker, the retry placed a second one. That doubled real market exposure without the trader knowing, and we confirmed it happened to a real customer. Before any retry we now check the broker's own history for that order. If we cannot determine the state, we fail loudly and refuse to retry.
Resuming after a halt erased the loss that caused it
Pressing Resume reset the profit-and-loss baseline to your current equity, which silently zeroed the day's loss that had triggered the halt. Resume after resume quietly moved the goalposts. Resume now only lifts the halt. Recalibrating the baseline after a deposit or withdrawal is a separate action you choose deliberately.
Also new
3- Every risk halt now writes an audit record, and the halt notification says which direction tripped it. · Trading engine
- Every trade close writes a specific reason, so the outcome chip in your log explains itself. · Trading engine
- One-click alias generation for unmapped signal symbols, plus a background self-healing pass. · Trading engine
Improvements
4- The daily halt checks floating profit and loss about once a second instead of every thirty, so it halts much closer to your configured limit. · Risk
- Every channel shows the share of its followers who are in profit over ninety days, split by live and demo accounts, with a new sort by trader win rate. · Explore
- The channel filter bar splits across two rows, so sort and mode labels stop truncating. · Explore
- Testimonials link to the original Telegram messages, unedited. · Explore
Fixes
13- Take-profit redistribution retries had been broken since February, referencing a database column that no longer existed. Every retry failed and was absorbed as "try again later" forever, and a later escalation limit converted 3,153 of them into permanent failures. · Trading engine
- A stop-loss correction anchored to the best-case fill rather than the worst, so a corrected stop could still sit inside the entry zone and fire the instant a deeper layer filled. Signals whose zone conflicts with their stop are now rejected before any order is placed. · Trading engine
- On a single-layer trade with a stop override, several parts of the engine computed the entry zone differently, producing a phantom wide zone that doubled the stop distance. A €30 risk silently became €60. · Trading engine
- A channel profile forcing one entry layer still ran multi-layer computation, which flipped the only market order into a limit and then skipped every order. Nothing was placed at all. · Trading engine
- A follow-up updating the stop still rewrote it on positions already moved to breakeven, undoing locked-in protection. · Trading engine
- For entry-zone signals with price far from the zone, take profits were sorted by distance from live price rather than from the entry, which reshuffled which target got which level. · Trading engine
- An ordinary transient database read returning no row was treated as proof a trade did not exist, burning the whole retry budget in 77 seconds instead of backing off over minutes. · Trading engine
- Cancelling an order that had just filled now closes the resulting position instead of leaving it untracked, and a database hiccup during breakeven can no longer be recorded as success without the stop actually moving. · Trading engine
- A single failed execution was recorded with no error and no timestamp, making it invisible to the symbol-health banner, the account indicator, the notification bell and the signal detail card. · Trading engine
- During a regional provider storm, connections routinely exceeded a thirty-second timeout and trades could not execute on those accounts. The wait is now sixty seconds. · Trading engine
- Stop and target overrides could run off a stale cached price instead of the live quote, producing a wrong stop, missing targets, or a rejected modification. · Trading engine
- Maximum drawdown is capped at 100% on channel cards. · Explore
- Affiliate credit survives the hop from the marketing site into the app. · Billing
Take profits that survive a stop-loss change
A month of correctness work on the engine. Changing a stop was wiping the take profit off the broker entirely, a converted limit order was creating no position record at all, and redistribution retries had been dead since February.
Changing a stop was erasing your take profit
Modifying a position at the broker replaces every level at once, so any change that set a stop without also resending the take profit erased the take profit outright. At least six places did this: the breakeven handler, signal-driven stop updates, the dashboard's Update SL button, entry reconciliation, redistribution's breakeven re-apply, and follow-up modifications. We confirmed it on a live gold position. Every one of those paths now preserves the take profit.
A filled limit order could exist nowhere in your dashboard
When a limit order converted to a market fill, no position record was created. A real live broker position appeared nowhere in the dashboard, was never tracked for profit and loss, and received no take-profit, stop-loss or breakeven management at all. Over 29,000 orphaned orders across 3,500 trades and 36 traders were affected.
Settings catch invalid combinations before you save
A breakeven trigger pointing at a take profit you do not have, or targets in the wrong order, now shows an inline error and blocks the save. Previously the interface accepted it and the engine dealt with the consequences.
Also new
7- Choose the columns in your trade log, with presets for capital and risk, execution, or everything, plus planned and realised R and layers filled. · Dashboard
- Warnings wherever a signal's symbol is not mapped to your broker, each linking to the fix. · Trading engine
- Entry Zone Expansion widens the far edge of the zone so deep-retracement orders have room to fill. · Trading engine
- Remove an unused add-on account slot yourself, with the exact effective date on the dialog. · Billing
- A dedicated notification when a signal's symbol is not tradable, instead of an opaque failed trade. · Trading engine
- A risk-free badge when every open position's stop is at or past breakeven, and broker comment and ticket ID on every order. · Dashboard
- Guided help before you disconnect a broken account, because the problem is usually temporary and a disconnect cycle wastes a slot. · Accounts
Improvements
4- Channel stats show profit factor, win rate and maximum drawdown instead of a raw dollar figure that means nothing without position size. · Explore
- Channel drawdown is measured per trader and shown as a median, hidden entirely below three qualifying traders. · Explore
- The signal tester is one compact card, results swap in place, and the decision breakdown is in plain language. · Channels
- A live money estimate next to your risk-limit settings, from real equity in your currency. · Risk
Fixes
24- The daily-loss kill switch was closing nothing. It was called with the wrong account identifier, so it matched no positions and closed none, which made the core safety action of the just-launched risk limits do nothing at all. · Risk
- A reconnect path was destroying the live trade feed along with its listeners. One account missed every take-profit event for 43 minutes while running positions at thirty times the intended risk. · Trading engine
- Some orders were placed at the broker with no take profit at all. In "keep signal settings" mode a signal with fewer than six targets still had six slots, and the surplus orders went out with no exit level. That was about 30% of trade volume. · Trading engine
- A hardcoded fallback price precision was wrong by a factor of 1,000 for five-digit pairs. A limit at 1.60829 became 0.91486 and its stop at 1.60669 became 0.91286. · Trading engine
- Breakeven protection could be permanently disabled. While a breakeven awaited confirmation, a listener overwrote the stop back to its old value, and a cross-check then saw them match and marked it confirmed. The trader believed breakeven had worked while still carrying the original stop. · Trading engine
- Take-profit redistribution retries had never been started at server boot, so every failed modification since February was dropped with no recovery. · Trading engine
- A stale price within 0.01% of a target falsely flagged trades as "TP2 hit", and a position could be marked TP1-hit while still carrying its original unprotected stop. · Trading engine
- On ECN accounts the opening commission was never subtracted, so displayed profit was higher than what landed in your account. · Trading engine
- All six Layer 1 orders were rejected on a broker with a small minimum stop distance, because the engine forced a limit inside that distance. It now falls back to market. · Trading engine
- Deposits and withdrawals were read as trading losses, halting the account and re-halting immediately after every resume. · Risk
- When a signal omitted a target, the channel's default pip distance was applied before your own setting. Your settings now win. · Trading engine
- Ten consecutive connection failures, including expected weekend ones, auto-disabled an account and silently halted trading with no way back. · Trading engine
- A demo account deleted at the broker a month earlier caused endless reconnect retries whose lock contention slowed trade execution for 27 unrelated traders. · Trading engine
- A watchdog false closure meant a stop was never moved to breakeven after the first target, so the position ran to its original stop for a loss instead of closing flat. · Trading engine
- A stale streaming connection could make a close attempt fail with no retry, leaving the position open. · Trading engine
- Redistribution decided whether to re-run from a count of filled layers rather than which ones, so a different set of the same size read as unchanged. · Trading engine
- One global rate limiter serialised every account's orders, so the same account systematically got the worst fill on every signal. · Trading engine
- Open risk was displayed up to 200 times too high on cross-currency pairs, and planned risk was computed from live price rather than each order's real entry. · Dashboard
- Euro accounts were seeing dollar-denominated profit and loss labelled with a euro sign, inflating what you read by roughly 17%. · Dashboard
- Each account shows its own connection status. Broker health had been tracked only for whichever account was active. · Accounts
- Channels stuck on "0 Active", stopped channels displaying as running, and channels showing the wrong execution mode. · Channels
- Maximum drawdown was showing figures like 37,000%. It was dividing a money drawdown by a tiny peak. · Explore
- Wrong totals on accounts with more than one subscription, a reload loop after reactivating, and a plan mislabelled as Essential. · Billing
- Live View could show ghost positions for hours on an unhealthy connection, and could blank to zero and flicker during reconnects. · Dashboard
Multi-account trading, the channel directory, and risk guardrails
The first four months of 2026, as originally published. One signal became many accounts, the Explore directory opened, and daily risk limits arrived.
Trade several MetaTrader accounts at once
Connect more than one account and broadcast the same signal to all of them, each with its own position sizing. Extra account slots are available from your billing page.
Find providers worth following
The Explore directory ranks channels by what they have actually done: seven-day sparklines, aggregate win rates, and a full chronological history you can read before you connect anything.
Daily risk limits and a kill switch
Set a daily loss limit and TTMT halts trading on that account when it is hit, with an audit trail of every halt. Resuming keeps your session counters; recalibrating the baseline after a deposit or withdrawal is a separate, deliberate action.
Also new
11- Unlimited Telegram channels on every plan. · Billing
- Time-of-day execution schedules, set in your own timezone on a grid. · Trading engine
- Order comments and deal reasons no longer carry TTMT-identifiable metadata, so trades look native to your prop firm. · Trading engine
- When a deeper entry layer fills, your Layer 1 orders lock to the first take profit so the trade can reach breakeven sooner. · Trading engine
- Preview a trade before you commit to the settings behind it. · Trading engine
- Proportional take-profit redistribution. · Trading engine
- Per-channel default settings, and a curated library of verified providers. · Channels
- Real-time trade notifications through the Telegram bot. · Notifications
- An economic calendar for scheduled high-impact releases. · Dashboard
- Discount codes at checkout. · Billing
- Warnings when your entry strategy conflicts with the channel's. · Trading engine
Improvements
7- An "always use my zone size" override for signals whose entry zone you do not trust. · Trading engine
- Symbol matching repairs itself when your broker renames an instrument. · Trading engine
- SMS fallback when Telegram will not deliver your login code, and real-time connection diagnostics. · Accounts
- Plain-English explanations of what happened on a trade, and instant trade simulation. · Dashboard
- A faster signal engine. · Trading engine
- Cleaner channel cards, and a sticky action bar that stays reachable. · Channels
- Faster dashboard loading, and refreshed trade cards you can share. · Dashboard
Fixes
1- Gold pricing handled at the right precision, more reliable take-profit handling, and duplicate orders prevented. · Trading engine
Want to see what is next?
The roadmap covers what we are building now, what is committed, and what we are still thinking about.