Il s'agit d'une stratégie de suivi de tendance à long terme qui utilise le canal Donchian et l'indicateur StochRSI pour identifier de fortes tendances haussières et participer à faible risque.
Cette stratégie utilise les deux indicateurs suivants pour l'identification des tendances:
Canal de Donchian: Calcule l'EMA de 6 jours des 30 bar
Indicateur StochRSI: incluant la ligne %K et la ligne %D. Cette stratégie ajoute une bande inférieure sur la ligne %K, par défaut est 35. Lorsque la ligne %K traverse la bande inférieure, cela signifie la fin de la tendance haussière.
Plus précisément, la logique de négociation est la suivante:
Lorsque le close est au-dessus de la bande supérieure de Donchian, il montre un fond vert, indiquant une tendance haussière.
Lorsque le StochRSI %K est au-dessus de la bande inférieure par défaut 35, passez long.
Lorsque %K dépasse la marge inférieure, position longue fermée.
Comme nous pouvons le voir, cette stratégie utilise à la fois le filtre de tendance et l'indicateur d'oscillateur, pour participer à des tendances haussières à faible risque. Donchian Channel filtre les marchés non tendance, en veillant à ne prendre que longtemps dans une tendance haussière. StochRSI identifie le statut d'achat / survente, pour fermer la position en temps opportun.
Les avantages de cette stratégie sont les suivants:
Seulement long, pour éviter les pertes sur les marchés baissiers.
Utiliser le canal Donchian pour identifier les tendances, filtrer les marchés non tendance.
Les paramètres réglables du StochRSI peuvent définir des niveaux d'entrée et de sortie en fonction de l'appétit pour le risque.
Convient pour les actions à tendance haussière soutenue.
Une logique simple et claire, facile à comprendre et à mettre en œuvre.
Il y a aussi des risques:
Manquant le point d'entrée, incapable de saisir les profits en pleine tendance.
Un renversement soudain de tendance, l'indicateur ne sort pas à temps, ce qui entraîne de grosses pertes.
L'imposition de paramètres inappropriés augmente la fréquence des transactions et les faux signaux.
Convient uniquement pour les marchés haussiers à long terme, pas pour les marchés en baisse.
Il faut surveiller les fondamentaux pour éviter de choisir des actions avec des fondamentaux en baisse.
Quelques façons d'améliorer la stratégie:
Optimiser les paramètres pour les marchés à volatilité différente.
Ajoutez un stop loss pour limiter les pertes lors d'une transaction unique.
Combinez les fondamentaux et les nouvelles, évitez les actions avec des fondamentaux en baisse.
Optimiser le calendrier d'entrée, assurer une entrée en temps opportun grâce à des tests répétés.
Optimisez le timing de sortie, évitez une sortie prématurée de la tendance haussière.
Testez sur différents échantillons de stock pour évaluer les performances.
Cette stratégie identifie la tendance avec le canal de Donchian et négocie avec les signaux StochRSI. Elle peut suivre efficacement les tendances haussières avec un faible risque. Les avantages sont une logique simple et la capture continue de l'élan à la hausse.
/*backtest start: 2023-09-16 00:00:00 end: 2023-10-16 00:00:00 period: 3h 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/ // © SnarkyPuppy //@version=5 strategy("Filtered Stoch", overlay=false, default_qty_value = 100, default_qty_type=strategy.percent_of_equity) /////high filter...upper donchian channel of ema... or highest ema for a given amount of candles filter_ema_len= input(6) ema_donchian_len = input(30) ema=ta.highest(ta.ema(high,filter_ema_len),ema_donchian_len) ////////////////////////basic stoch rsi with max val 100 and min val 0.. entry above lowerband preset 35 smoothK = input.int(7, "K", minval=1) smoothD = input.int(4, "D", minval=1) lengthRSI = input.int(14, "RSI Length", minval=1) lengthStoch = input.int(14, "Stochastic Length", minval=1) src = input(close, title="RSI Source") rsi1 = ta.rsi(src, lengthRSI) k = math.min(100, math.max(0,ta.sma(ta.stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK))) d = math.max(math.min(ta.sma(k, smoothD),80),35) plot(k, "K", color=#2962FF) plot(d, "D", color=#FF6D00) h0 = hline(80, "Upper Band", color=#787B86) hline(50, "Middle Band", color=color.new(#787B86, 50)) lowerband=input(35) h11 = hline(lowerband, "Lower Band", color=#787B86) fill(h0, h11, color=color.rgb(33, 150, 243, 90), title="Background") ematrend= close>ema ? 1 : 0 bgcolor(ematrend==1?color.rgb(76, 175, 79, 80):na) longCondition = k>lowerband and ematrend==1 if (longCondition) strategy.entry("Up", strategy.long) shortCondition = ta.crossunder(k,lowerband) if (shortCondition) strategy.close("Up", shortCondition)