0bps

Strategy vault / Breakout

Multi Indicator Momentum Breakout with Smoothed Candlestick Trading Strategy

This strategy is a breakout trading system that combines Bollinger Bands, Relative Strength Index (RSI), and Heikin Ashi candlesticks. Through the coordinated use of multiple technical indicators, it effectively…

Author
ChaoZhang
Complexity
Starter · 63 lines
Parameters
0
Backtest bar
6h · swing
Tested on
BTC/USDT · futures

IMG

Overview

This strategy is a breakout trading system that combines Bollinger Bands, Relative Strength Index (RSI), and Heikin Ashi candlesticks. Through the coordinated use of multiple technical indicators, it effectively filters market noise and captures high-probability breakout trading opportunities. The strategy adopts trend-following and momentum trading concepts, entering after breakout confirmation and using Heikin Ashi reversal and RSI overbought conditions as exit signals.

Strategy Principles

The core logic is based on the synergy of three technical indicators:

  1. Bollinger Bands identify price volatility range and potential breakout positions, using 20-day moving average as the middle band, with upper and lower bands 2 standard deviations away.
  2. RSI confirms price momentum, using 14-period settings, with RSI above 50 indicating upward momentum.
  3. Heikin Ashi candlesticks filter short-term price fluctuations through weighted averages of open, high, low, and close prices.

Entry conditions require:

  • Heikin Ashi candles turn from red to green
  • Close price breaks above upper Bollinger Band
  • RSI above 50

Exit conditions meet either:

  • Heikin Ashi candles turn from green to red
  • RSI reaches overbought level of 70

Strategy Advantages

  1. Multiple technical indicators enhance trading signal reliability
  2. Heikin Ashi candlesticks effectively reduce false breakouts
  3. RSI inclusion ensures trading with trend direction
  4. Clear entry and exit mechanisms avoid subjective judgment
  5. Simple strategy logic, easy to understand and execute
  6. Parameters can be flexibly adjusted for different market characteristics

Strategy Risks

  1. May generate frequent false signals in ranging markets
  2. Strict entry conditions might miss some trading opportunities
  3. Reliance on technical indicators may fail during rapid market changes
  4. Fundamental factors not considered in market analysis
  5. Exit mechanism may lead to missed profit potential

Risk control suggestions:

  • Set stop-loss positions to protect capital
  • Adjust Bollinger Bands parameters based on market volatility
  • Incorporate additional market analysis dimensions
  • Strictly execute trading plan

Strategy Optimization Directions

  1. Introduce adaptive parameters:
  • Dynamically adjust Bollinger Bands multiplier based on market volatility
  • Optimize RSI parameters based on market conditions
  1. Add filtering conditions:
  • Include volume confirmation
  • Consider longer-term moving average trends
  • Incorporate market volatility indicators
  1. Improve stop-loss mechanism:
  • Design trailing stop-loss
  • Add risk-reward ratio control
  • Optimize position management plan
  1. Enhance signal system:
  • Develop signal strength scoring
  • Design signal confirmation mechanism
  • Optimize exit timing determination

Summary

This strategy constructs a relatively complete trend-following trading system through the combined application of Bollinger Bands, RSI, and Heikin Ashi candlesticks. The strategy logic is clear with explicit execution standards, demonstrating good practicality. Through parameter optimization and additional auxiliary indicators, the strategy's stability and reliability can be further improved. Traders are advised to conduct thorough backtesting before live implementation and make appropriate adjustments based on market characteristics and personal risk preferences.

Source Pine Script

/*backtest
start: 2024-02-19 00:00:00
end: 2025-02-16 08:00:00
period: 6h
basePeriod: 6h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=6
strategy("Bollinger Bands + RSI + Heikin Ashi Breakout", overlay=true)

// Input Settings
bbLength = input.int(20, title="Bollinger Bands Length")
bbMultiplier = input.float(2, title="Bollinger Bands Multiplier")
rsiLength = input.int(14, title="RSI Length")
rsiOverbought = input.float(70, title="RSI Overbought Level")

// Bollinger Bands
basis = ta.sma(close, bbLength)
dev = bbMultiplier * ta.stdev(close, bbLength)
upperBB = basis + dev
lowerBB = basis - dev

// Heikin Ashi Candle Calculations
var float heikinOpen = na  // Declare `heikinOpen` with an undefined initial value
var float heikinClose = na // Declare `heikinClose` with an undefined initial value

// Update Heikin Ashi values
heikinClose := (open + high + low + close) / 4
heikinOpen := na(heikinOpen[1]) ? (open + close) / 2 : (heikinOpen[1] + heikinClose[1]) / 2
heikinHigh = math.max(high, math.max(heikinOpen, heikinClose))
heikinLow = math.min(low, math.min(heikinOpen, heikinClose))

// RSI
rsi = ta.rsi(close, rsiLength)

// Entry Conditions
heikinGreen = heikinClose > heikinOpen
longCondition = heikinGreen and close > upperBB and rsi > 50

// Exit Conditions
heikinRed = heikinClose < heikinOpen
longExitCondition = heikinRed or rsi >= rsiOverbought

// Strategy Execution
if (longCondition)
    strategy.entry("Long", strategy.long)

if (longExitCondition)
    strategy.close("Long", comment="Exit Long")

// Plotting Bollinger Bands
plot(upperBB, color=color.blue, title="Upper Bollinger Band")
plot(lowerBB, color=color.blue, title="Lower Bollinger Band")
plot(basis, color=color.orange, title="Middle Bollinger Band")

// Heikin Ashi Visualization
plotcandle(heikinOpen, heikinHigh, heikinLow, heikinClose, color=(heikinGreen ? color.green : color.red), title="Heikin Ashi Candles")

// Debugging Signals
plotshape(longCondition, style=shape.labelup, location=location.belowbar, color=color.green, title="Long Entry Signal")
plotshape(longExitCondition, style=shape.labeldown, location=location.abovebar, color=color.red, title="Long Exit Signal")

Published by ChaoZhang on the FMZ strategy square · last modified 2025-02-18. Collected in the Quant Trading Vault. Unvalidated research: re-test with your own data and costs before trusting it.

Build this with AgenKit

A spec is not a trading system. Paste this into your coding agent and AgenKit runs a specialist team — architecture, test-first build, risk gates, review — with paper trading on by default.

in Claude Code, Cursor, Codex & 4 more
/agenkit build a production-grade trading bot with a backtest engine, risk controls and paper trading by default from strategies/Multi-Indicator-Momentum-Breakout-with-Smoothed-Candlestick-Trading-Strategy.md
  1. npx agenkit install engineering-kit in your project
  2. Paste the command into your agent and approve each phase
  3. Get tests, backtest, risk controls and a paper-trading switch

Understand it first

Before you run this, read the lesson behind the idea and how to backtest it honestly. Specs like this one are the survivors of an unknown number of trials; deflate their results accordingly.

Related specs

esc

Try , , or .

↑↓ move↵ open