A signal posted in your channel and nothing opened in MetaTrader. In TTMT that outcome always has a recorded reason, and you can read it in under a minute: open the Signal Log, find the message, and click it. The status on the row tells you which stage stopped it, and the detail view names the specific cause.
Every message goes through reading, safety checks, duplicate detection, and routing before it can become a trade. A message that stops at one of those stages ends in one of four states:
| Status | What it means |
|---|---|
| Failed | TTMT could not build a trade from the message, or the broker refused the order |
| Rejected | The message was read correctly and a safety check stopped it |
| Skipped | A valid signal that TTMT declined to run on purpose |
| Ignored | The message never had an active route to an account |
If you run more than one account, read the per-account outcomes before anything else. One signal can execute on your demo account, be skipped on your prop account, and be rejected on a third. A signal that "did not trade" may have traded somewhere.
Here are the six causes behind almost every case, in the order I would check them.
The account is halted by a risk limit
This is the most common reason a signal does not execute. If an account's combined realized and floating profit and loss for the session crosses the daily loss (or profit) threshold you set, TTMT halts that account and blocks every new signal-driven trade on it.
What it looks like. A HALTED chip in the dashboard header and a red Risk Limits panel. The halt is per account, so the usual pattern is one account going quiet while your others keep trading the same channel.
What to change. Nothing, if the limit did its job. A halt only blocks new entries. TTMT keeps managing the stop loss (SL), take profit (TP), and breakeven on positions that are still open. When you want to trade again, the resume dialog offers two choices. Resume clears the halt and keeps today's running totals. Recalibrate re-anchors the limit to your new equity, and it is meant for a real deposit or withdrawal, never for escaping a loss limit you set yourself.
The channel has no active assignment to that account
A channel in TTMT is never switched off as a whole. What controls the flow is the assignment between a channel and each account. A paused assignment ignores signals, and so does an assignment that was never created.
What it looks like. The signal shows as Ignored. The classic version: you joined the channel in Telegram, never added it in TTMT, and every message lands as Ignored.
What to change. Open the channel under Channels and confirm the assignment to the target account exists and shows active. While you are there, look at the Filters tab, because two filters produce the same "nothing happened" feeling:
- The symbol allowlist is per account. If you restricted a prop account to XAUUSD and EURUSD, a BTCUSD signal from the same channel is skipped on that account and still trades on the others.
- The text blacklist is channel-wide. A message containing a blacklisted term is dropped before it is read, and the log records
blacklist_match:<term>so you can see which term caught it. Matching is on whole terms:scalpblocks "SCALP: GOLD BUY NOW" and leaves "scalpel" alone.
The message was not a complete signal
Plenty of providers post "GOLD BUY NOW" first and the numbers a few minutes later. Whether that first message trades depends on the channel's execution mode, which is your choice per channel.
Wait for Full Signal only trades a message that carries an entry, a stop loss, and at least one take profit. A bare alert is parked and waits for a follow-up that completes it. If the details never arrive inside the window, the parked signal expires and shows as skipped or timed out.
Trade on First Alert opens the trade the moment the alert lands, using your channel's default SL and TP, then applies the provider's details to that same trade when they arrive. No second trade is created. By default the open trade stays receptive to follow-up details for 30 minutes.
What it looks like. An alert waiting for its details shows as pending_followup. On a channel that only ever posts alerts, Wait for Full Signal parks and expires every one of them.
What to change. Match the mode to how the channel posts. For an alert-first channel, switch to Trade on First Alert on the channel's Execution tab, and set default SL and TP values on the SL/TP tab first. Without defaults, an alert trade can be rejected at the safety checks or run with no protection. A mode change applies to future signals only.
One more case worth knowing: some providers do not send a second message at all. They edit the alert into the full signal. TTMT watches for that. An edit that completes an alert can open the trade on a Wait for Full Signal channel, and an edit that adds or changes levels updates the open trade on a Trade on First Alert channel. A signal built from an edited message is marked as one, with the original and edited text side by side. The condition is that the first version was recognized as a trade alert. An opening line too vague to read as one gives the edit nothing to attach to.
The Signal
FreeDaily market briefs on Gold, NAS100 & forex. Understand why markets move—no predictions, just context.
The market was closed, or you blocked that hour
If your broker's market for the instrument is closed when the signal arrives, TTMT skips it immediately. No order is placed and nothing is held for the reopen. The same applies to a signal that lands inside a blocked trading window you configured on the account, the channel, or a profile.
What it looks like. A skipped signal with the reason named, so you can tell a market-closed skip from a blocked-hours skip.
What to change. For market closed, nothing. A signal queued over the weekend and fired at Monday's open would be a trade at a price the provider never saw. For blocked hours, check the channel's Hours tab and your account schedule if a channel goes quiet at the same time every day. Account and channel blocks combine, so a window blocked by either one blocks the signal.
The prices failed a safety check
Here the message was read correctly and TTMT refused it anyway. The signal shows as Rejected, and clicking it shows which check fired:
- Stop loss on the wrong side. Above entry on a buy, or below entry on a sell.
- Stop loss too far. More than 5 times the distance to the farthest take profit, which almost always means a mistyped price.
- Entry zone crowding the stop. When a provider quotes an entry range, orders are spread across it. If the edge of the zone nearest the stop ends up within 5 pips of the stop (on gold, one pip is 0.10), no orders are placed. Your own entry zone widening counts toward this, so a gap that looks safe in the message can disappear in your settings.
- Entry zone invalid. The zone is inverted or implausibly wide relative to the stop. One real example read
4368/4478where4378was meant. - Extreme values. A price far outside any trustworthy reference, such as
1.0850arriving as10.850. TTMT either replaces the value from a trusted anchor or rejects the signal. I wrote up that check separately in how TTMT catches a decimal error.
There is also a timing version: if price has already traded through the stop by the time the message arrives, TTMT will not open a position that starts out losing.
What to change. Usually nothing, because the signal was wrong. If one channel trips the same check repeatedly, paste one of its messages into the Signal Tester. It shows what was read, which checks pass or fail, and what the trade would look like, with no money at risk. Your invalid-SL and extreme-value handling are both configurable if you trust the channel and want different behavior.
The signal was inside an image, or it was a reply
TTMT reads text. When a provider posts a chart with a caption, the caption is read and the picture is not. A signal that exists only inside the image has no text to build a trade from.
What it looks like. Failed, with a reading error. Click it to see the raw text TTMT actually received.
Replies are read, and they are treated as follow-ups to the message they quote. That is why a provider's "move SL to entry" lands on the right trade, and why replies bypass the text blacklist. It also explains a common surprise for new subscribers: a close or modify instruction that refers to a trade you never took is skipped. You joined mid-stream, and there is nothing on your account to manage.
What to change. For image-only channels, nothing on your side will fix it. If a text channel keeps failing to read, send support a few examples, since a channel-specific reading prompt can be set by the TTMT team.
When none of these fit
Check the two status lights in the header. If the broker or Telegram indicator is red, fix the connection before reading anything into the Signal Log. Then check for a duplicate: an identical signal that already ran is skipped by design.
The full status-by-status reference is in the docs under signal issues, and the timeline of a signal that does execute is in what happens in the two seconds after a signal posts.
Start a free 7-day trial at telegramtometatrader.com, or browse signal channels in the Explore directory. New to the idea entirely? Start with what a signal copier is.

