Blog

Moon Bot version 3.74 has got tools helping to use the bot for trust management.

How it works: when you trade with your bot (lets call it "Main" bot) either manually or via a strategy, the bot can automatically generate commands and send them to your own Telegram channel.

The main bot sends commands in special format which can be read by other bots ("slave" bots, subscribed to your channel). This way "slave" bots will copy your actions.

Note: After beta test only PRO bots will be able to receive commands!

 

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) bot 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 bot will buy the whole lot. Second (slave) bot 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 bot can be already selling coins at 520 sat (the best ASK price) while slave bots are still waiting their buy orders to be filled. 

To handle the issue mentioned above when slave bots 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" bot):

Open any market chart and press "Share" button to the right to open Social Trading configuration screen. If you want the bot 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 bot will post test message to your channel.

Note: MoonShot strategies do not post commands cause orders of this type are handled with the bot 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; <> - mandatory parameter, [] - optional parameter. The letter (M) after a command description means that commands of this type are not sent by the bot 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). 

  • cmd_Buy <Coin> [Price] [sell <Price>] — Buy the coin for specified price. If price is omitted, slave bot'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%), the sell price will be substituted to the slave's strategy.
  • 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> — Activate the Panic Sell function for this coin
  • 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 bot to buy at lower price.
    • cmd_UpdateTokenTags — Update tokens list

 

How to configure commands handling (Slave bot):


If you want your bot 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.

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