Cette stratégie utilise les bandes de Bollinger pour déterminer la direction de la tendance du marché combinée à l'indicateur RSI pour filtrer les signaux haussiers, en mettant en œuvre des opérations de rupture d'élan pour chasser les hausses et tuer les chutes.
Lorsque l'indicateur Bollinger Bands détermine la rupture des prix à travers la bande supérieure, il indique que le marché entre dans une tendance haussière. À ce moment-là, utilisez l'indicateur RSI pour filtrer. Générez un signal d'achat lorsque l'indicateur RSI est supérieur à 60. Lorsque l'indicateur BB détermine la rupture des prix à travers la bande inférieure, il indique que le marché entre dans une tendance baissière. À ce moment-là, utilisez l'indicateur RSI pour filtrer. Générez un signal de vente lorsque l'indicateur RSI est inférieur à 40.
Mettre en place un stop loss après l'entrée sur le marché pour éviter de nouvelles pertes.
Les critères de sortie sont la clôture d'une position longue lorsque le prix dépasse la bande moyenne BB et la clôture d'une position courte lorsque le prix dépasse la bande moyenne BB.
L'indicateur Bollinger Bands peut déterminer les principales tendances du marché et capturer les points d'inflexion.
L'opération de poursuite de la montée et de la chute peut obtenir des rendements excessifs.
La mise en place d'un stop loss peut contrôler les risques.
L'indicateur BB n'est pas efficace pour évaluer les marchés latéraux, ce qui peut générer de faux signaux.
Un paramètre de stop loss incorrect peut entraîner de nouvelles pertes.
La fréquence élevée des transactions est affectée par les coûts de négociation et les glissements.
Les signaux de rupture doivent être mis à jour en temps opportun, sinon les meilleures opportunités d'entrée peuvent être manquées.
Combiner avec d'autres indicateurs pour juger de la fiabilité des signaux de rupture BB, tels que le volume, les moyennes mobiles, etc.
Ajustez dynamiquement les paramètres BB pour optimiser les performances des indicateurs.
Optimiser la position de stop loss, comme le stop loss à la traîne, le stop loss en pourcentage pour réduire les pertes inutiles.
La stratégie a une logique claire pour déterminer la tendance du marché par BB et filtrer les signaux avec RSI pour la poursuite de la tendance de l'élan. Elle présente une fréquence d'opération élevée, des cycles de profit / perte rapides, plus adaptés aux traders recherchant des rendements excédentaires. Cependant, une fréquence de trading élevée augmente également les coûts de transaction et nécessite une gestion stricte du capital et un contrôle émotionnel.
/*backtest start: 2023-11-21 00:00:00 end: 2023-12-21 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title="Bollinger Band Breakout", shorttitle = "BB-Stoxguru",default_qty_type = strategy.percent_of_equity,default_qty_value = 100, overlay=true) source = close start = timestamp (2007, 1,1,0,0) end = timestamp (2021,11,05,0,0) stop_level = (high[1]-low[1]) profit_level = (high[1]-low[1]) length = input(20, minval=1, title = "Period") //Length of the Bollinger Band mult = input(2, minval=0.001, maxval=50, title = "Standard Deviation") basis = sma(source, length) dev = mult * stdev(source, length) upper = basis + dev lower = basis - dev band=upper-lower stop_loss=low-atr(14) if time >= start // and time < end strategy.entry("Long", strategy.long, when = crossover(source, upper) and rsi(close,14)>=60 and rsi(close,14)<=70) // strategy.entry("Long", strategy.long, when = crossover(source, upper) and rsi(close,14)>60 and band<200) // strategy.exit("SL", "Long", stop=stop_loss) strategy.close(id="Long", when=crossunder(close, basis)) strategy.entry("Short", strategy.short, when = crossunder(source, lower) and rsi(close,14)<=40 and rsi(close,14)>=35) strategy.close(id="Short", when=crossover(close, basis)) // strategy.entry("Short", strategy.short, when = crossunder(source, lower) and rsi(close,14)<40 and band<200) // plot(upper-lower, color=color.purple,title= "DIFF",style=plot.style_linebr) plot(basis, color=color.red,title= "SMA") p1 = plot(upper, color=color.blue,title= "UB") p2 = plot(lower, color=color.blue,title= "LB") // fill(p1, p2) BW = ((upper - lower)) / basis * 100 plot(BW, title="Bollinger bandwidth", color=color.red)