Skip to content

Autoposting signals from your own bot

Autoposting is when signals are published in your channel not by a person but by your own trading bot or script. For Sync such a post is no different from one written by hand: the author of a post in a channel is the channel itself. Nothing has to be switched on separately — it is enough that the bot's posts follow the signal format.

How it works

  1. Your bot publishes an ordinary text post in the signal format in the channel.
  2. The main Sync bot, an administrator of the channel, reads the post, puts the signal under tracking, attaches the buttons and opens trades for subscribers with auto-trade on.
  3. When your bot exits the trade, it sends a command to the channel as a reply to the signal post — and subscribers' trades are closed or changed together with yours.

Requirements for the channel

RequirementExplanation
A channel, not a group or a chatPublic or private — it does not matter
The channel is connected by the person who will be the ownerThey pressed /start in @sync_trading_bot and were the first to add the main bot as an administrator. The posting bot cannot be the owner: the cabinet and the private messages about errors go to a person
The main Sync bot is an adminThe Post messages permission (required) and Edit messages (for the buttons)
The Sync service bot is an adminNo extra permissions
/activate in the channelThe reply “🚀 SYNC channel activated!”
Your posting bot is an admin with the Post messages permissionOtherwise Telegram will not let it publish. No other permissions are needed. The order in which the bots are added does not matter

Sync does not limit the publishing frequency; Telegram has its own limit on the number of messages from bots into one chat — check it on a test if you have many signals.

Requirements for the post

The same as for a signal written by hand (Signal format: full specification). For autoposting these points matter most:

  • A text post, not a photo with a caption — a caption is not read and the post is skipped silently.
  • One post — one signal, and the post is not edited afterwards — corrections are not re-read.
  • One price per line, without numbering or with a separator after the number (TP1: 87000, not TP1 87000).
  • Leverage always for futures, and for spot no leverage line at all (not even 1x).
  • The stop as a price, not as a fractional percentage — this matters for tight stops.
  • Nothing after the last block: a line with a number below the stop becomes a second stop.

The minimal template that is always parsed:

#BTCUSDT
Leverage: 10x
Entry: 85000
TP: 85400
85800
SL: 84600

Commands from your bot

Commands are published as a reply to the signal post, with the text exactly as in the article about commands, without the bot name and without any text after the number.

  • /close — always, when your bot's position is fully closed: by time, manually, by trailing, by its own take-profit or stop. Without it the signal stays active until a take-profit or the stop, and subscribers' positions keep hanging. Leave at least a few seconds between the signal post and /close and check the reply: you need “⛔ Signal closed by the channel admin…”.
  • /change_sl_to_… — trailing and moving to breakeven. A stop exactly at the entry price ends up in “skipped”: set it one tick lower (LONG) or higher (SHORT).
  • /change_tp1_to_…, /change_entry1_to_… — moving targets and entries.
  • A repeat on the same pair in the same direction while a signal is active will not open a second trade for a subscriber — close the previous one with /close before a new signal on the same pair.

Reports and service posts from the bot

You may publish results (“TP1 taken”, daily reports), with three rules:

  1. The post does not start with / — otherwise it is a command.
  2. The post has no line consisting only of #TICKER together with lines starting with keywords (TP:, Entry:, Stop:) — otherwise the bot will try to parse it as a signal and the owner will get “was not accepted as a signal”. A safe form is one line without a hash: BTCUSDT: TP1 reached ✅ +0.5%.
  3. The words close, cancel, exit as a separate reply to a signal post are a closing command. In your reports, never send such words as a reply to a signal post.

How to check

  1. Publish a test signal from the bot using the template — the buttons should appear under the post within a few seconds.
  2. Reply to it with /close from the bot — “⛔ Signal closed by the channel admin…” should arrive.
  3. Try an entry zone, /change_sl_to_…, and for futures a short.
  4. Do all of this while subscribers have auto-trade off: test signals open real trades. Details in Checking after connection.

What signals do not copy: lot ladders and averaging with a grid on one pair — those are the subscriber's Grid and DCA bots, not a signal.