• arque algo trader

Trading Strategy # 3 Bollinger BANDIT

Updated: May 30, 2020

Stock markets across the world are continuing to tumble in the wake of COVID-19. In the last 1 month, Nifty50 and BSE Sensex have lost over 25% of their value. During such unprecedented times, it would be a good idea to pause, take a step back and focus on research for your next trading strategy.

At Arque Tech, we are sharing a series of trading strategies for you to explore.

To receive our #tradingstrategy updates, sign up here.

Today, we will talk about a strategy which uses Bollinger Bands as the main indicator for trading.

Traditionally, the Bollinger Bands were thought to indicate resistance levels. However, over time, it became apparent that the contrary was true. The bands were strong indicators of breakout levels.

The strategy is elaborated below:

The upper band is the potential long entry position and lower band is the potential short entry position. We refine this further with a trend filter.

Long Entry filter: Today’s close must be greater than the close of 30 days ago

Short entry filter: Today’s close must be less than the close of 30 days ago.

For stop loss, we use an aggressive trailing mechanism:

- Set the protective stop loss at 50 day moving average

- For each day that the position is open, reduce the number of days for our moving average calculation by one. (This means that the longer we are in the open trade position, the more likely we are to exit with a profit.)

- Keep decreasing the calculation until it reaches 10. After that, do not decrease further.

Lets add one more rule to the above system:

For long position, the moving average calculation should be below the upper band. Similarly, for the short position, it should be above the lower band.

This prevents the system from reverting to the original trade. I.e. if we were in the position and the moving average was above the upper band, it would satisfy the condition for long trade set up and would signal long entry position.

Trade set up:

LiqDay is initially set to 50 upBand = Average(Close,50) + StdDev(Close,50) *1.25 dnBand = Average(Close,50) - StdDev(Close,50) *1.25 rocCalc = Close of today - Close of thirty days ago

Set liqLength to 50 If rocCalc is positive, a long position will be initiated when today's market action >= upBand If rocCalc is negative, a short position will be initiated when today's market action <= dnBand liqPoint = Average(Close, 50) If liqPoint is above the upBand, we will liquidate a long position if today's market action <= liqPoint If liqPoint is below the dnBand, we will liquidate a short position if today's market action >= liqPoint If we are not stopped out today, then liqLength = liqLength - 1 If we are stopped out today, then reset liqLength to fifty

The trade signal generation looks like:

Performance of this strategy can be summarized below:


Overall, the system performs positively. Adding the trailing stop loss increases the profits and decreases drawdown.

What are your thoughts on this system? Leave your comments below.

Want to backtest or automate your trading strategy? Write to us on contact@arque.tech or call us on +91-9321136466.

For more trading strategies and backtested results, subscribe to our updates here.

#tradingstrategy #bollingerbands #algorithmictrading #algotraderinmumbai #nifty #nse #bse #backtesting #optionstrading

478 views0 comments