Appearance
Are you an LLM? You can read better optimized documentation at /reference/signal-format.md for this page in Markdown format
Signal Format Guide
This page is written for channel owners. Everywhere else in these docs, "you" is the trader running TTMT. Here, "you" is the person posting the signals.
If you run a Telegram signal channel, some of your subscribers are already executing your posts automatically. You do not have to do anything about that, and this page is not asking you to change your strategy, your schedule, or your style. It exists because a handful of small formatting choices decide whether your call reaches a broker as you intended, and almost nobody has ever told you which ones.
If you are a TTMT user rather than a provider, this page is still useful to you as something to send your provider.
Start here: your formatting is probably fine
Across 90 days to September 2026, TTMT processed just under 72,000 new-trade signals. 0.14% of them failed for a reason the channel owner controls. Roughly ten percent failed for reasons sitting entirely on the subscriber's side, such as their own daily-loss limit, a broker connection that was still waking up, an account with no free margin, or a symbol they had filtered out themselves.
That ratio is the most useful thing on this page. The reading engine is a language model, not a regular expression, so it copes with the way people actually write in a trading channel. Before you rewrite anything, read what it already handles.
The short version
Post the direction, the symbol and a stop. Reply to your own signal when you manage the trade. Keep the gap between your entry zone and your stop wide enough to breathe. That is the whole guide.
What happens to your message
Every subscriber runs this independently on their own account, with their own lot sizing and their own limits. Two people can get different outcomes from the same post of yours, and neither is a bug.
The minimum viable signal
A message needs a direction and a symbol to be recognised as a trade at all. Everything else can come from the channel's established defaults.
Example — the shortest thing that works
Sell gold nowThat executes. TTMT knows the direction and the symbol, and falls back to the stop and target distances it has learned from your previous posts. One channel in our directory posts almost nothing else and clears 97% execution.
This is worth knowing, but it is not what we recommend. A message with no stop executes against a guess at your intent, inferred from your history. The guess is usually close. It is still a guess, and it is the one thing you can remove for free.
Example — the shortest thing we would actually recommend
SELL XAUUSD 4626-4629
SL 4632
TP1 4623
TP2 4620Direction, symbol, an entry zone, your stop, your targets. Nothing here is ambiguous and nothing is inferred.
Five layouts that work
All five of these are real shapes taken from channels running between 94% and 100% execution. They look nothing like each other, which is the point.
Zone with labelled blocks
SELL XAUUSD @ 4626-4629
SL 4632
TP1 4623
TP2 4620Emoji-labelled fields
BUY XAUUSD
Entry: 4345.16
SL: 4330.16
TP1: 4350.16
TP2: 4355.16
TP3: 4385.16Bare inline, repeated target keyword
XAUUSD BUY 4329
TP 4334
TP 4339
TP 4344
TP 4350 OPEN
SL 4320Repeating a bare TP works. The targets are taken in the order you list them, so the first one you write becomes TP1.
Named zone on its own line
GOLD BUY SETUP
Gold Buy Zone 4438 - 4433
SL: 4428
TP1: 4443
TP2: 4448
TP3: 4453
TP4: HoldDirection first, price block below
XAUUSD (Gold)
BUY NOW
4346-4344
TP 1: 4350
TP 2: 4354
TP 3: 4360
Stop Loss: 4342What the reader already handles
Every item below appears in signals that executed. You do not need to strip any of it.
| You write | What happens |
|---|---|
| Emoji anywhere, including inside the numbers block | Ignored for parsing, kept for your readers |
XAU USD, GOLD, #XAUUSD, XAUUSDSELL with no space | All resolve to gold |
Stop Lose, Stoploss, S/L, SL : | All read as the stop |
A numbered or titled prefix such as 3. GOLD BUY SETUP | Skipped over |
TP4: Hold, TP OPEN, Hold for more | Read as a runner. No numeric target is invented |
Entry written as 4438 - 4433, 4438/4433, or @ 4438-4433 | All read as an entry zone |
| Mixed languages in the same message | The trade values are still extracted |
| Risk-management boilerplate at the end of every post | Ignored |
| More than six targets | The first six are used |
| A zone written high-to-low or low-to-high | Order does not matter |
Six targets is the ceiling
TTMT supports TP1 through TP6. If you post seven or more, the extra ones are dropped rather than the message being rejected. If you habitually post more than six, put the ones that matter first.
The two things that actually break
1. Your entry zone crowds your stop
This is the single most common channel-side failure, and it is worth understanding properly because it is not obvious.
When you quote an entry range, TTMT spreads orders across that range. The deepest of those orders sits at the far edge, the end nearest your stop. If that edge ends up within 5 pips of the stop, no orders are placed at all and the signal is rejected rather than executed at a worse price.
The distance is measured from the edge of the zone closest to the stop:
- BUY: the bottom of your zone, minus your stop
- SELL: your stop, minus the top of your zone
A real rejection
BUY LIMITS GOLD @ 3998/3992 AREA
TP 4001
TP 4005
TP 4010
SL 3991The zone runs down to 3992 and the stop is at 3991. On gold, one pip is 0.10, so that gap is 10 pips. It looks safe, and on its own it is.
It was rejected anyway, because many subscribers widen the entry zone in their own settings before orders are placed. Their widening ate the gap. The headroom you leave has to survive somebody else's configuration.
The practical rule
Keep the far edge of your entry zone at least as far from your stop as the zone itself is wide. If you quote a 6-point zone on gold, leave at least 6 points between the far edge and the stop. A single price with no range is never affected by this.
A related shape to avoid is a typo that inverts the zone. One rejected message read XAUUSDSELL 4368/4478 where 4378 was meant. That turned a 10-point zone into a 110-point one that swallowed the stop entirely.
2. You post after the price has already gone
If the market has already traded through your stop by the time the message arrives, TTMT will not open the position. Opening it would mean entering a trade that is already losing, against targets anchored to a price that no longer exists.
This one has nothing to do with formatting. It is the cost of posting a scalp five minutes after you took it, or of writing up a setup that moved while you were typing.
Where this bites hardest
Tight scalps on gold. A 9-point stop gives the market very little room to disqualify your signal, and gold can cover 9 points while you finish the message. If you trade tight stops, post the level first and the commentary after.
Managing a trade from the channel
You do not need a command syntax. TTMT reads management instructions the way you already write them. All of these executed:
Move sl to Be
Set Breakeven at lower Part
Close worst ones and keep best ones running after making them risk free
Lock in profits from worst entries
TP2 hit, close your profits and adjust your SL to entry
Grab profits. Put some money in the bankReply to your original signal
This is the highest-value habit on the whole page, and it is measurable.
Over the same 90 days, close instructions posted as a reply to the original signal executed at 25.5%, against 15.1% for the same instructions posted as a standalone message. Modifications ran 59.5% against 52.7%.
When you reply, TTMT knows exactly which trade you mean. When you do not, it has to work it out from the symbol, the timing and the wording, and sometimes it cannot.
One habit, better outcomes
Use Telegram's reply function on your own signal message whenever you post a breakeven call, a partial close, or a "close it now". It costs you one extra tap.
If you post in a forum-style group
Topic threads are handled, but a reply still beats a bare post in the same topic. Several channels post management updates in a separate "results" topic, which breaks the link to the original signal entirely.
Alert first, details later
Posting a quick alert and filling in the numbers afterwards is normal here. More than half of the channels in our public directory work this way, and it is a first-class pattern rather than a workaround.
GOLD BUY NOWthen, a few minutes later, as a reply:
Entry 4438-4433
SL 4428
TP1 4443
TP2 4448Subscribers set to act on the first alert open the position immediately and TTMT applies your numbers as modifications when they land. It is covered in full on Execution Modes.
Pick one and stay there
The pattern that causes trouble is switching without warning. Alert-first on Monday, a single complete message on Tuesday, a chart screenshot on Wednesday. Your channel carries one execution mode at a time, and inconsistency leaves it on the wrong one.
What is not your fault
If a subscriber tells you their TTMT did not take your trade, these are the likeliest reasons, and none of them are yours to fix:
| What they will see | What actually happened |
|---|---|
| Nothing traded, no error | Their daily-loss limit had already halted the account |
| Nothing traded | They had trading switched off, or had not finished their settings |
| Signal marked failed | Their broker connection was still syncing when the message arrived |
| Signal skipped | They had filtered your symbol out on their own channel settings |
| Signal failed | Not enough free margin on their account |
| Signal skipped | Market closed, or outside the schedule they set |
| Symbol not found | Their broker names gold XAUUSD.s or XAUUSDm rather than XAUUSD |
Together these outnumber channel-side failures by roughly seventy to one. Point your subscriber at Typos and Bad Signals and their own settings before you rewrite anything.
Checklist
Pin this somewhere. It is the entire page in nine lines.
- Direction and symbol in every signal
- A stop in every signal, so nothing is inferred
- Stop on the correct side: below entry for a BUY, above for a SELL
- Targets listed nearest first, six at most
- One trade per message
- Entry zone no wider than the gap you leave between its far edge and the stop
- Reply to your own signal for every breakeven, partial or close
- Same layout every time
- Post the level before the commentary
See how your channel reads
You can run TTMT's analysis against your own channel and see exactly what it works out: whether you read as complete-signal or alert-first, where your stops typically sit, where your targets land. It takes seconds and needs nothing from us. The walkthrough is on Analyze Your Own Channel.
If you would rather have us look at it with you, or you want your channel set up properly in the public directory, the partnership page at telegramtometatrader.com/for-signal-providers has the ways we work with channel owners.
Related pages
- Execution Modes — how alert-first and complete-signal channels differ
- Analyze Your Own Channel — run the reader against your own posts
- Typos and Bad Signals — the safety checks in detail
- Channel Settings — what your subscribers can override
- Message Filters — how subscribers narrow what they take from a channel

