Les bandes de Bollinger et la stratégie de négociation RSI

Auteur:ChaoZhang est là., Date: 2024-03-28 18:11:08 Je vous en prie.
Les étiquettes:

img

Résumé

Cette stratégie combine les bandes de Bollinger et l'indice de force relative (RSI) pour générer des signaux d'achat et de vente. Un signal d'achat est déclenché lorsque le prix dépasse la bande de Bollinger inférieure et que le RSI est en dessous d'un niveau inférieur spécifié. Un signal de vente est déclenché lorsque le prix dépasse la bande de Bollinger supérieure et que le RSI est au-dessus d'un niveau supérieur spécifié.

Principes de stratégie

  1. Calculer l'indicateur RSI pour mesurer les conditions de surachat et de survente.
  2. Calculer les bandes de Bollinger supérieures et inférieures pour déterminer les écarts de prix.
  3. Série de signaux d'achat et de vente basés sur le RSI et les bandes de Bollinger:
    • Un signal d'achat est généré lorsque le prix de clôture est inférieur à la bande de Bollinger inférieure et que le RSI est inférieur au niveau inférieur spécifié.
    • Un signal de vente est généré lorsque le prix de clôture est supérieur à la bande supérieure de Bollinger et que l'indice de volatilité est supérieur au niveau supérieur spécifié.
  4. Introduire un paramètre d'intervalle d'achat pour limiter la fréquence des achats consécutifs, ce qui facilite la gestion des positions pyramidales.

Les avantages de la stratégie

  1. Double confirmation: la stratégie utilise à la fois des bandes de Bollinger et des indicateurs RSI, ce qui permet une détection plus fiable de l'inversion de tendance et réduit les faux signaux.
  2. Construction de positions pyramidales: En définissant un paramètre d'intervalle d'achat, la stratégie ajoute progressivement des positions à mesure que la tendance est établie, ce qui aide à contrôler le risque et à optimiser les rendements.
  3. Paramètres flexibles: les utilisateurs peuvent régler de manière flexible les niveaux supérieur et inférieur de l'indice de rentabilité et acheter des paramètres d'intervalle en fonction des caractéristiques du marché et des préférences personnelles.

Risques stratégiques

  1. Risque de poursuite de la tendance: si le prix subit un court recul après avoir franchi les bandes de Bollinger, la stratégie peut fermer des positions prématurément et manquer des tendances ultérieures.
  2. Risque d'optimisation des paramètres: la combinaison optimale de paramètres peut varier considérablement dans différents environnements de marché, et la stratégie peut faire face à des risques de suradaptation.
  3. Événements de cygne noir: la stratégie est basée sur des données historiques et peut ne pas gérer efficacement les conditions de marché extrêmes.

Directions d'optimisation de la stratégie

  1. Introduire un stop-loss et un take-profit: ajouter à la stratégie une logique de stop-trailing ou de stop-loss fixe et un take-profit pour contrôler davantage les risques commerciaux individuels.
  2. Optimisation des paramètres dynamiques: ajuster dynamiquement les paramètres tels que les niveaux supérieurs et inférieurs de l'indice RSI et les intervalles d'achat en fonction des changements dans les conditions du marché afin d'améliorer l'adaptabilité de la stratégie.
  3. Combiner avec d'autres indicateurs techniques: introduire d'autres indicateurs de tendance ou d'oscillateur comme jugements auxiliaires pour renforcer la robustesse de la stratégie.

Résumé

Cette stratégie combine habilement deux indicateurs techniques classiques: les bandes de Bollinger et le RSI. Elle utilise un mécanisme de double confirmation pour saisir les opportunités de tendance. En même temps, la stratégie introduit une méthode de construction de position pyramidale pour contrôler le risque tout en optimisant les rendements. Cependant, la stratégie est également confrontée à des risques tels que le risque de continuation de tendance, le risque d'optimisation des paramètres et le risque d'événement du cygne noir.


/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/

//@version=4
strategy(overlay=true, shorttitle="cakes'Strategy For RSI", default_qty_type = strategy.percent_of_equity, initial_capital = 100000, default_qty_value = 100, pyramiding = 0, title="cakes'Strategy", currency = 'USD')

////////// ** Inputs ** //////////

// Stoploss and Profits Inputs

v1 = input(true, title="GoTradePlz")

////////// ** Indicators ** //////////

// RSI

len = 14
src = close
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - 100 / (1 + up / down)



//  Bollinger Bands

length1 = 20
src1 = close
mult1 = 1.0
basis1 = sma(src1, length1)
dev1 = mult1 * stdev(src1, length1)
upper1 = basis1 + dev1
lower1 = basis1 - dev1



////////// ** Triggers and Guards ** //////////


// 输入
RSILowerLevel1 = input(30, title="RSI 下限水平")
RSIUpperLevel1 = input(70, title="RSI 上限水平")

// 购买间隔
buyInterval = input(5, title="购买间隔(K线数量)")

// 跟踪购买间隔
var int lastBuyBar = na
lastBuyBar := na(lastBuyBar[1]) ? bar_index : lastBuyBar

// 策略信号
BBBuyTrigger1 = close < lower1
BBSellTrigger1 = close > upper1
rsiBuyGuard1 = rsi < RSILowerLevel1
rsiSellGuard1 = rsi > RSIUpperLevel1

Buy_1 = BBBuyTrigger1 and rsiBuyGuard1 and (bar_index - lastBuyBar) >= buyInterval
Sell_1 = BBSellTrigger1 and rsiSellGuard1

if (Buy_1)
    lastBuyBar := bar_index

strategy.entry("Long", strategy.long, when = Buy_1, alert_message = "Buy Signal!")
strategy.close("Long", when = Sell_1, alert_message = "Sell Signal!")

Plus de