Singuard Home Blog Contact eTrader eTrader for Businesses eTrader for Traders Broker Broker CRM Live Demo Prop Firm Prop Firm CRM Live Demo
Scalegram

How Signal Formats Are Parsed.

Three providers post the same gold trade in three completely different shapes. A parser has to reduce all three to the same four fields, or refuse.

Alex Onta, Executive Director, SINGUARD By August 28, 2026 7 min read

Here are three posts describing one trade. "XAUUSD BUY 3312 to 3316, SL 3298, TP1 3325 TP2 3340." "Gold long now, stop under 3298, targets 3325 and 3340." And a third with emoji, a line break between every field, a flag for the pair and the word "sell limit" where the second one wrote "long". A human reads all three in under a second. A trading server accepts none of them.

The parser sits in that gap. Its job is to recover four things and nothing else: the instrument, the direction, the stop, and the targets, with the entry expressed as a level, a zone, or simply market. Everything else in the post is decoration, and treating it as decoration is what makes reading many dialects possible.

Direction is easier than it looks, until it is not

Buy, long and bullish mean the same thing, and so do a dozen phrasings across the languages signal channels are written in. The trap is not the vocabulary, it is the order type hidden inside it. "Buy" is a market entry. "Buy limit at 3312" is a pending order below price. "Buy stop at 3320" is a pending order above it. A parser that flattens all three into a market buy will fill a trade the provider intended to trigger only at a level, and the subscriber gets an entry the channel never took.

So direction and entry type are recovered together. Where the provider names a level and the words imply a resting order, that is what should be placed. Where the provider says now, it is a market entry.

Zones matter more than anything else in the post

"3312 to 3316" for a buy means the trade is valid anywhere inside that band. A parser that reduces the band to its lower edge and places a pending order at 3312 will sit out a trade that ran from 3316 and never came back, and the subscriber will report that the copier missed the signal. It did not miss it. It misread the provider's intent as a point when it was a range.

The band also does something useful for execution. Between a provider tapping send and an order resting at a broker there are seconds that belong to Telegram delivery and to your broker's acceptance, as broken down in what copier latency actually looks like. A zone survives those seconds. A single price does not.

The stop is the field everything else depends on

A signal without a stop cannot be sized by any rule that measures risk against the stop distance, and that is the rule careful subscribers use. If your sizing is a percentage of balance worked backwards from the stop and the post contains no stop, there is no number to work backwards from. What happens then is a configured fallback, and that fallback deserves more thought than most people give it, because an unstopped position is by definition the largest risk on the account.

Stops arrive in several shapes. A price. A pip distance. A phrase like "stop under the low", which is a chart instruction rather than a number and cannot be turned into one. The first two parse. The third does not, and pretending otherwise would mean inventing a level.

Targets, and what "TP3 open" means

Most posts carry several take profit levels, sometimes numbered, sometimes listed, sometimes with the last one left open. An open final target is a real instruction: the provider intends to manage the runner by hand and will say when to close it, which arrives later as a reply. A parser that invents a numeric target for it is guessing at the part of the trade the provider explicitly declined to specify.

What you do with the targets afterwards is a setting rather than a parsing question. Split across all of them, take the first only, take the last only, or ignore them and manage the exit yourself. That decision belongs in risk settings for copied trades, and it is one of the settings most tied to what the provider assumes their readers are doing.

The instrument is a two-step problem

Reading "GOLD" or "XAUUSD" or a flag emoji out of a post is the easy half. The hard half is that your broker calls it something else: XAUUSD.r at one, XAUUSDm on a cent account, XAU/USD at a third. Matching therefore reads the symbol list your own terminal exposes, which is the only authoritative statement of what that account can trade, with prefix, suffix and explicit rename rules for the cases no rule catches. If the instrument does not exist, the trade is refused with that reason recorded rather than mapped to something similar, because a near miss is how somebody ends up long silver on a gold signal. The broker side of this is in MT4 and MT5 support.

Getting a signal wrong is worse than skipping it. A post that does not parse cleanly produces no output at all and is recorded, rather than approximated with money behind it.

Refusal is a feature, and it is measurable

The temptation in a parser is to be clever: fill in a missing field from context, assume a direction from a chart pattern named in the text, take a plausible reading where two are possible. Every one of those decisions is correct most of the time, which is exactly why they are dangerous. A parser that is right 95% of the time places a wrong trade on your account once every twenty signals, and that trade will be sized as though it were fine.

The design position is the opposite. A signal must be reconstructable from fields the system actually read. If it cannot be, there is no output, the post is recorded, and you see it as a skip rather than as a surprise position. That constraint is what the fixed output format enforces mechanically, explained in one fixed output format.

Amendments are parsed differently from signals

A reply that says "move SL to BE" or "close half here" is not a new trade and must never be read as one. Because Telegram identifies which message a reply belongs to, an amendment attaches to the correct open position rather than being matched by text similarity. That distinction is doing more work than any part of the parser, and it is why a delete and repost behaves so differently from an edit. The full path is in inside a copier.

Parsing is information handling, not judgement. The parser has no opinion about whether a signal is worth taking, and leveraged trading carries a high risk of loss regardless of how cleanly a post was read.

"A parser that guesses is right most of the time, which is the worst possible outcome. You want the one that reads four fields cleanly or prints nothing at all."

— Alex Onta, Executive Director, SINGUARD

Key Takeaways

Frequently Asked Questions

What does the parser actually read from a post?

The instrument, the direction, the stop and the take profit levels, with the entry treated as a single level, a zone, or a market order. Everything else in the message is treated as decoration.

What happens to a post it cannot read?

Nothing is placed. The post is recorded as unparsed and left alone, because approximating a signal that was not understood puts a guess on your account at full size.

Can it parse a signal posted as a screenshot?

No. An image carries no text to read, and pulling prices out of a picture is not reliable enough to trade on. A chart image with a caption containing the levels parses from the caption.


About the Author

Alex Onta, Executive Director, SINGUARD
Alex Onta Executive Director, SINGUARD

Alex Onta is an Executive Director at SINGUARD. He built eTrader, the terminal, the mobile apps, eTrader Broker, Copytrading, Business and Community, along with the worldwide clustered-server infrastructure it all runs on, with his brother Roman Onta helping on the design, and he leads that division today. Together with Roman he builds the Prop Firm CRM, the Broker CRM, Scalegram and CopySignals, and the two of them carry worldwide compliance, payment processing and international business structuring side by side. He lives and works in Dubai for most of the year. Meet the executive duo leading Singuard's five divisions.

Your Own Trading Firm, Live in 24 Hours.

SINGUARD builds the technology behind brokers and prop firms: trading platform, CRM, client portal and payment rails, one bundle, one predictable price. Book a call and see it working, or keep reading the guides.

More in Scalegram