Pycryptobot users frequently ask on the community telegram "how do you choose the markets/paris?" This market selection is an important decision that should be done with some research and not be left to luck.

Typically, if a bot user sees a successful trade, and try to run a bot on same market it may be already too late. The current method to extract value from a bot, is to diversify your bets, that is running multiple markets (20, 30 or 80) and some of the trades will be wins and some will be loss. The bot logic to buy/sell depends on few technical analysis and indicators that help make the decision, the bot may spent many cpu cycles pulling data from the exchanges but not making any trade, with many users wondering if its broken, or configuration is incorrect. With optimization of configurations one could extract more value, but tuning a configuration to a market may not work on other markets, overfitting is something to avoid.

So while this remains a good choice, the main limitation is computing power, on a raspberry pi, a bot consumes about 130Mb or RAM and uses about 50% of CPU in sprouts of few tens of ms, a 4 core RPi with 8Gb can be loaded with about 30 bots running in parallel, with some tweaks some reported about 40 to 60 bots.

While this computing limitation is not an issue, the selection of markets remains rather random, the best option would be to have the bot select those markets based on a set of rules. The telegram bot control introduces access to a new scanner that eases that painful job of searching in hundreds of markets based on arbitrary user selection.

Rules :

ATR72: Average true range for 72h period. This is a volatility indicator, which we can use in % value to cut-off a minimum volatility desired.

Behind the scenes, a buy_next boolean is used to filter the positive filtering of new markets. If interested in running a scanning sequence, can use the command:

Screen Shot 2021-11-10 at 14.50.08.png

Screen Shot 2021-11-10 at 14.50.22.png

In the last column you can identify the candidate pairs, notice also the volume 24h and the price. One naturally would could use this already and create a configuration selecting from the list those with high volume, low price and high volatility.

How to use it with TG Bot:

  1. To access it from telegram bot, modify your config.json adding this new section, for example after logger dict:

   "scanner" : {
			"atr72_pcnt" : 1.0,
			"enableexitaftersell" : 1,
			"enableleverage" : 0,
			"maxbotcount" : 5,
      "autoscandelay" : 0
	}

atr72_pcnt: 1.0 the percent value cut off for minimum volatility indicator, tweak this to your preference

enableexitaftersell: 1/0 exits the bot once does the trade, freeing resources for new markets

enableleverage: 0 allow coins with UP or DOWN prefix/suffixes.

maxbotcount: 4 number of maximum bots running concurrently.

autoscandelay: 12 number of hours between auto scans, 0 is non scheduled.

  1. In scanner.json, add the base currencies and the exchanges that you want to search for markets.