Cette stratégie utilise l'indicateur RSI pour déterminer la direction potentielle de la tendance du marché, combiné à l'indicateur Bollinger Bands pour identifier les principales zones de soutien et de résistance, et recherche des opportunités d'absorption faibles sur les marchés de chocs de tendance pour établir des positions longues et réaliser des bénéfices dans les zones de surachat.
Utilisez l'indicateur RSI pour déterminer la direction potentielle de la tendance du marché. RSI inférieur à 40 est considéré comme une zone de survente où le marché pourrait devenir haussier.
Utilisez l'indicateur Bollinger Bands pour identifier les principales zones de support et de résistance. La bande moyenne des Bollinger Bands est la ligne moyenne mobile du prix, et les bandes supérieure et inférieure forment le canal d'écart type du prix. Les prix qui approchent de la bande inférieure présentent de faibles opportunités d'absorption.
Lorsque le RSI est inférieur à 40 et que le prix s'approche de la bande inférieure de Bollinger, il est déterminé comme une opportunité longue d'absorption faible pour établir une position longue.
Lorsque le RSI est supérieur à 50 ou que les bénéfices dépassent 50%, fermer les positions longues pour réaliser des bénéfices et réduire les pertes.
Utilisez le RSI pour déterminer la direction de la tendance potentielle du marché afin d'éviter de négocier contre la tendance.
Identifier le calendrier d'entrée précis en combinant avec les bandes de Bollinger pour localiser les points d'absorption faibles.
Adopter la méthodologie du choc de tendance pour éviter d'être pris au piège.
Un mécanisme flexible d'arrêt des bénéfices et d'arrêt des pertes pour maximiser les bénéfices.
Les paramètres Bollinger incorrects peuvent ne pas localiser correctement la zone de support.
Les percées de tendance ou les faux percées pourraient conduire à des erreurs dans les jugements de surachat et de survente.
Une mauvaise définition des points de stop-profit et de stop-loss peut entraîner une sortie prématurée ou une augmentation des pertes.
Optimiser les paramètres de Bollinger pour une identification plus précise des zones de support et de résistance.
Incorporer d'autres indicateurs comme MACD et KDJ pour filtrer les faux signaux.
Optimiser dynamiquement les algorithmes de stop profit et stop loss pour maximiser les profits tout en minimisant les pertes.
Cette stratégie détermine la direction potentielle de la tendance avec le RSI, combinée avec les bandes de Bollinger pour identifier les zones de soutien, réalisant un achat bas et une vente élevée, ce qui est une stratégie de choc de tendance typique.
/*backtest start: 2023-12-28 00:00:00 end: 2024-01-04 00:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("price drop buy in", overlay=true, initial_capital=1000, max_bars_back=24) // === INPUT BACKTEST RANGE === FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) FromYear = input(defval = 2018, title = "From Year", minval = 2017) ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12) ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31) ToYear = input(defval = 9999, title = "To Year", minval = 2017) // === FUNCTION EXAMPLE === start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window window() => true // create function "within window of time" ///////////// RSI RSIlength = input(60,title="RSI Period Length") RSIoverSold = 40 RSIoverBought = 50 price = close vrsi = rsi(close, RSIlength) smaLong = sma(close,80) smaShort = sma(close,40) ///////////// Bollinger Bands BBlength = input(20, minval=1,title="Bollinger Period Length") BBmult = 2 // input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation") BBbasis = sma(price, BBlength) BBdev = BBmult * stdev(price, BBlength) BBupper = BBbasis + BBdev BBlower = BBbasis - BBdev longcondition = (price < BBlower and vrsi < RSIoverSold) // vrsi < RSIoverSold shortcondition = (RSIoverBought and strategy.openprofit > 50 ) or price > BBupper if(longcondition) strategy.entry('buy', strategy.long, when = window()) if(shortcondition) strategy.entry('sell', strategy.short, when = window())