Published in


BBGO — BollMaker Trading Bot

Are you still using the traditional grid trading bot for cryptocurrency?? Try BollMaker Trading Bot

What’s BollMaker?

BollMaker is an acronym for a Bollinger band based market-making strategy.

What’s BBGO?

BBGO is an open source crypto trading framework designed for trading bots, written in Go programming language.

What You Can Do With BBGO?

For Trading Bot Users 💁‍♀️ 💁‍♂️ — You can use BBGO to run the built-in strategies.

And, What’s a market maker strategy?

A market maker is a firm, individual or trading strategy that always or often quotes both a buy and a sell price for a financial instrument or commodity, hoping to make a profit by exploiting the difference between the two prices, known as the spread.

How does BollMaker perform?

Let’s see the back-testing result first:

BBGO Trading Bot — BollMaker @ DOTUSDT
BBGO Trading Bot — BollMaker @ DOTUSDT
BBGO Trading Bot — BollMaker @ BNBUSDT

How Does It Work?

The BollMaker Strategy uses the long-term period Bollinger Band to control the holding position.

Appropriate Markets and Scenarios

Basically, the main purpose of running the BollMaker strategy is to stock up. Stocking and escaping are two extremes. It is difficult to use the same set of settings to have both. Therefore, you need to choose an asset that you are willing to invest in the long-term, not to choose speculative coins to trade.

How to setup?

🧑‍💻 Before you get started, if you like my automatic trading strategy, please give me some support and encouragement, and you can use the author’s referral code to register for Binance 🙏

sudo apt install redis
sudo apt install redis-server
brew install redis
bash <(curl -s
BBGO — BollMaker Installer
  • symbol is the market symbol you want to trade. you can use BTCUSDT , BNBUSDT, or ETHUSDT something like that.
  • interval is the period that you want to replace your maker orders. 1m means it will cancel all open orders and re-place the maker order per minute. valid values are 1m, 5m, 15m , 30m
  • amount is the quote amount of your order. 30 for ETHUSDT market means you want to place a 30 USDT equivalent order to buy/sell ETH. You should have amount set at least above 20
  • quantity is the base amount of your order. 0.1 for ETHUSDT market means you want to buy/sell 0.1 ETH for each order. quantity can not be used with amount, you can only use either amount or quantity.
  • askSpread and bidSpread are the spread you want to place the order. BollMaker uses the mid price to place your maker order. For example, if mid price is 3000, with bidSpread=0.1% and askSpread=0.1%, we will place the buy order at price 2997 and sell order at price 3003. You can use candle chart to find out the amplification of each interval and use them.
    In the best case, you should be able to have buy/sell orders trade per interval. Please note that the rate of transaction fees must be taken into account. On Binance, the maker fee rate is about 0.075%, so make sure your bidSpread + askSpread > (0.075% * 2).
  • minProfitSpread is the spread from the average cost of your inventory. when Price ≥ AVERAGE_COST * (1.0 + minProfitSpread), then the sell order be will placed. You can set this number to a higher value like 1% or even 3% to prevent you sell the inventory too early.
  • long means you don’t want to hold a short position. If short mode is enabled, it will sell the inventory that you already have in the spot wallet. You can turn on long when you think the price is low enough. And turn on short when you think the price is high enough.
  • buyBelowNeutralSMA is an option to limit the buy order — only place buy orders below the SMA of the neutral Bollinger band (the short-term Bollinger band)
  • tradeInBand — If this is set, when the price is out of the neutral Bollinger band (the short-term Bollinger band), it will stop placing buy order and sell order.
  • defaultBollinger — This is the Bollinger Band used for controlling the position limit. You can use TradingView or Binance’s KLines Chart to see which interval is preferred and works best for you.
  • neutralBollinger — This is the Bollinger Band used for detecting short-term trend.
./bbgo run
calculated max exposure position: 2.02801869 strategy=bollmaker
bollinger band: up 2884.638519 sma 2824.866667 down 2765.094815 strategy=bollmaker



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store