Trusted Management

The MoonBot terminal has functionality that allows it to be used for trust management of other users’ accounts.

How it works: when you trade with your terminal (let’s call it “Main” terminal) either manually or via a strategy, the terminal can automatically generate commands and send them to your own Telegram channel.

The main terminal sends commands in a special format which can be read by other terminal (“slave” terminals, subscribed to your channel). This way “Slave” terminals will copy your actions.

Note: the Trust Management feature is only available in the PRO version of the MoonBot terminal!

NOTE: its impossible to obtain 100% accurate duplication! The reason is that trades are discrete. Consider an example of the TRUST coin order book:

Let the first (main) terminal placed the buy order of 2063 coins for 514sat (picture above). We can see that the order book contains only 2058 coins at 514sat, so the main terminal will buy the whole lot. Second (slave) terminal will copy the command “Buy TRUST 514sat”, but there are no more coins left at 514sat, so its order will remain unfilled and will be placed to BIDs order book. So the main terminal can be already selling coins at 520 sat (the best ASK price) while slave terminals are still waiting their buy orders to be filled.

To handle the issue mentioned above when slave terminals receive cmd_Sell command, they will cancel all partially filled buy orders on specified market and start to sell all bought coins.

How to configure commands broadcasting (MAIN terminal):

Open any market chart and press “Share” button to the right to open Social Trading configuration screen. If you want the terminal to broadcast commands to your own Telegram channel automatically, tick the checkbox like shown on the picture below:

Create your Telegram channel (not a group!), create your own Telegram bot token by talking to @BotFather. Add your Telegram bot to your channel and promote it to admin. Enter the token to the settings window (pic. above). If your channel is public, enter its public name to the box “channel name”. If the channel is private, you have to obtain its ID and enter it to the “channel name” (one way to to it: post something in the channel, then look moon bot’s log file logs\LOG_ADD_MM_DD. Locate your post, there you will find the channel ID).

If the Telegram is blocked in your region, you may use Socks5 proxy.

Press the “Test” button to check your configuration: If everything is correct, the terminal will post a test message to your channel.

Note: MoonShot strategies do not post commands cause orders of this type are handled with the terminal by strictly defined algorithm.

Commands list below.  Notation: Coin – the coin to trade; Price may be defined as absolute value or relative (percentage) to current market price \ buy order price; X – order value in % from the available deposit balance; <> – mandatory parameter, [] – optional parameter. The letter (M) after a command description means that commands of this type are not sent by the terminal automatically (you can post them manually to your channel. For example, type “cmd_PanicSellAll” in your channel to activate global stop loss on all your subscribers). Attention: keep in mind that the commands are case-sensitive!

  • cmd_Buy <Coin> [Price] [sell <Price>] [OrderSize X%] [Key ChannelKey] — Buy the coin for the specified price, using the specified arder amount (in % from the order set). If price is omitted, slave terminal’s strategy settings will be used. If the leyword “sell” is specified and the second Price parameter is given as percentage (for example buy NEO 0.0048 sell +10% OrderSize 100%), the sell price will be substituted to the slave’s strategy. The parameter Key ChannelKey (optional) shows the strategy with the required ChannelKey. This allows separating commands based on strategies. If not set or a strategy with such ChannelKey is missing, the first available strategy will be chosen.
  • cmd_Short <Coin> [Price] [sell [Price]] [OrderSize X%] [Key ChannelKey] — Setting a short order at a set price for a chosen % of the order set (only for trading Binance Futures). For example: cmd_Buy BTC 1% sell 1% OrderSize 100% Key ST123, where ST123 is the ChannelKey.
  • cmd_CancelBuy <Coin> — Cancel slave’s buy order.
  • cmd_Sell <Coin> <Price> — Sell coin for specified price (the slave’s sell order must be already set, the command will replace it for the specified price). All partially filled orders on the <coin> will be cancelled.
  • cmd_SetStop <Coin> <Price> — Set new StopLoss on Coin’s active orders. Price value must be specified as absolute price (example: cmd_SetStop BNB 0.002
  • cmd_PanicSell <Coin> [Key ChannelKey] — Activate the Panic Sell function for this coin. When using the key “Key”, you can send a Sell command of a specific strategy with the same key.
  • cmd_PanicSellAll — Activate the Panic Sell function for all active orders (M)
  • cmd_UpdateBuy <Price> — Change slave’s strategy buy price settings (new price is specified as percentage to current market price, % sign is mandatory!) (M)
  • cmd_UpdateSell <Price> — Change slave’s strategy sell price settings (new price is specified as percentage to actual buy price, % sign is mandatory!) (M)
  • cmd_UpdateStopLoss <Price> [AllowedDrop] — Change slave’s strategy StopLoss settings (new price is specified as percentage to actual buy price, % sign is mandatory!) AllowedDrop is optional, also specified as percentage to actual buy price. (M)

These commands change global settings (M):

  • cmd_UpdateKeyWords — Update keywords list. put comma separated keywords after the command.
  • cmd_UpdateBlackWords — Update blackwords list.
  • cmd_UpdateLowerPriceWords — Update list of words telling the terminal to buy at lower price.
  • cmd_UpdateTokenTags — Update tokens list.

How to configure commands handling (SLAVE terminal)

If you want your terminal to handle commands, you have to subscribe to the Telegram channel with commands, create a strategy for this channel and set strategy parameter AcceptCommands = YES.

If you are using a key in your strategies for separating commands, you should write the command in its entirety, for example: cmd_Buy BTC 1% sell 1% OrderSize 100% Key ST123, where ST123 is the ChannelKey.

Commands will be applied only to orders set by a strategy with enabled AcceptCommands parameter. So you can disable external managing of your terminal anytime by setting AcceptCommands = NO.