Open any public signal channel and scroll back a month. You will find entries. Lots of entries, with confident language and clean formatting. What you will struggle to find is the other half of each trade: where it actually closed, whether the stop got moved, and what the month added up to.
That is not usually fraud. It is mostly logistics. Publishing signals by hand is a job, and like every manual job it gets done well when things are going well and quietly skipped when they are not. Nobody feels like typing "closed for a loss" at eleven at night. So the record ends up incomplete, and an incomplete record always flatters the person keeping it.
This post is about fixing that properly: what a signal message should actually contain, how the free-tier and premium-tier model really works, the technical requirements that people discover only after their terminal freezes, and how to automate the whole thing so the record is complete whether you feel like it or not.
The three ways manual publishing fails
Latency. Your entry fills, you switch to Telegram, you type the pair, direction, entry, stop and target, you check it, you send. Ninety seconds have passed on a good day. On a fast instrument that is a different price, and the gap between your fill and your subscriber's fill becomes the thing you get blamed for.
Selection bias. This is the serious one. When publishing is manual, it is also optional, and optional means the trades that get posted skew toward the ones you are happy to post. Nobody decides to hide losses. It just turns out that the winner gets posted in real time and the loser gets posted later, or summarised, or not at all. Over months this builds a public record that does not match your account, and you will not even be able to tell how far apart they drifted.
No updates. The entry gets published and then the trade lives on without its audience. You move the stop to break-even and nobody knows. You take a partial and nobody knows. The trade closes and the original message still sits there saying "target 1.2850", forever, like a monument to a moment that ended two days ago.
What a signal message should actually contain
If you are going to publish, publish something a stranger could act on and audit. That means four blocks:
- The instruction: instrument, direction, entry, stop loss, take profit. Non-negotiable, and the stop is what separates a signal from a hunch. A "signal" with no stop is not a trade, it is an opinion.
- The context: a line on why. Even one clause. It lets your audience learn instead of just copying, and it is the difference between a channel that builds traders and a channel that builds dependents.
- The updates: when the stop moves, the audience needs to know, and they need to know on the original message, not in a new post twenty messages down that nobody will scroll to find.
- The close: where it ended and what it did. Especially when it lost. A channel that publishes its losers in real time is making a claim about itself that no amount of marketing can fake.
That last point is the whole game. Anyone can publish entries. Publishing the complete lifecycle, automatically, in public, is a commitment to being auditable, and it is the only version of a signal channel that survives contact with a sceptical audience in 2026.
The free tier and premium tier model, explained honestly
If you monetise a channel, the standard structure is two channels: a free one that demonstrates the process and a paid one that gets the signals live. The mechanism that makes it work is a delay on the free tier.
Why a delay rather than simply publishing less to the free channel: the free tier still needs to be genuinely useful, or it does not convert anyone. A free subscriber who sees the complete record, including the losses, just later, gets a real basis to judge you. They can see the entries, watch how the trades were managed and check the closes. What they cannot do is act on the entry at the same price you did, which is exactly the thing the paid tier is selling.
Two practical notes on choosing the delay. Too short and there is no reason to upgrade. Too long and the free channel becomes a history lesson nobody follows, which kills the funnel that justified having it. The right value depends entirely on your average holding time: a channel of scalps needs a very different delay from a swing channel where trades run for days. Set it against how long your trades actually live, not against a round number.
The technical requirements nobody thinks about until it breaks
This is the part that separates a tool that works from a script that ruins your week.
Sending must not block the terminal. Network calls are slow and sometimes they hang. If publishing happens synchronously on the same thread that manages your trades, then a slow response from a messaging API stalls your terminal, and it stalls it at exactly the busiest moment, because busy moments are when both the trades and the messages happen. Publishing has to be asynchronous. This is not a nice-to-have, it is the difference between a broadcasting tool and a liability attached to your live account.
Failures must retry. Networks drop packets. APIs return errors. Without automatic retry, the message you thought went out simply did not, and you find out when a subscriber asks why they missed a trade.
Rate limits must be respected. Messaging platforms throttle senders. Publish a burst across several channels without honouring the limits and you get throttled or blocked, usually right when a volatile session is generating the most messages.
These three requirements sound like plumbing because they are plumbing. They are also the reason "I will just write a script" turns into a project.
The tool
DoIt Signal Publisher Pro, for MT5 and MT4, is what I built for this, and it maps onto everything above:
- Up to 6 channels in a single operation: three Telegram chats and three Discord webhooks, published together. This is what makes the tiered model practical, because your premium and free channels are the same trade going to different destinations with different timing.
- Tiered distribution built in: premium subscribers receive the signal immediately, free-tier channels receive it after a delay you configure.
- Automatic message editing: when the stop loss or take profit changes, the original message is edited. The post your audience is looking at stays true instead of becoming a monument.
- Closure confirmations: the trade's ending gets published, with the result attached, in the format your audience can audit.
- Daily and weekly reports: the summary that turns a stream of messages into a track record.
- Chart screenshots attached, so the context travels with the instruction.
- Inline buttons for channel engagement.
- Asynchronous sending with automatic retry and rate-limit compliance, without freezing the terminal. The plumbing section above, solved.
- A TEST function that verifies all six channels at once, so you find out your webhook is wrong during setup rather than during a live trade.
Setup is documented in the first input parameter, step by step, and takes about five minutes. There is also a full user guide if you want to read the whole thing before installing anything.
Try it before you pay for it
There is a free 48-hour trial, self-service. My suggestion for how to spend it: set up both a premium and a free channel, run the TEST function to confirm all six destinations, then take one real trade and watch the entire lifecycle publish itself. Move the stop and watch the original message update. Close it and watch the confirmation land. Forty-eight hours is enough to see the mechanism work end to end, which is the only thing you actually need to evaluate.
If you already know you want it, PRO is $129 once on the MT5 and MT4 listings, with rental at $45 per month, $90 for three months or $119 for a year if you would rather not commit. Both listings have a free demo as well.
The honest limits
- This publishes trades. It does not create them. It broadcasts what your account already did. If the underlying trading is not good, the tool will simply document that faithfully, which is either the most useful or the most uncomfortable thing it does.
- Automation removes the excuse, not the responsibility. Once the losses publish themselves, you are running an auditable channel. That is the point, and it is also a commitment you should make deliberately rather than discover.
- Messaging platforms have their own rules and limits, and they change them. Rate-limit compliance and retry handle the normal cases, not a platform deciding to restrict your account.
- How you present signals to a paying audience may carry regulatory obligations depending on where you and your subscribers are. That is your call to make with proper advice, and it is worth thinking about before the first payment lands rather than after.
Want to see the whole lifecycle publish itself before you decide anything? Set up a real channel and run it for 48 hours, free. Start the free Signal Publisher trial.
The close
The reason to automate publishing is not that it saves you ninety seconds per trade, although it does. It is that automation removes the one degree of freedom that quietly corrupts every manual track record: the choice, made in the moment, about whether this particular trade is one you feel like posting.
Take that choice away from yourself and what you publish becomes evidence instead of marketing. In a market this full of screenshots, that is a genuinely scarce position to occupy.
I publish breakdowns like this every week. Real numbers, including the ugly ones. Join the newsletter.


