Stratégie de trading à double indicateur SuperTrend-Stochastic améliorée par Momentum

supertrend STOCHASTIC ATR K D SMA ADX
Date de création: 2025-02-20 13:49:34 Dernière modification: 2025-02-20 14:51:10
Copier: 2 Nombre de clics: 515
2
Suivre
319
Abonnés

Stratégie de trading à double indicateur SuperTrend-Stochastic améliorée par Momentum Stratégie de trading à double indicateur SuperTrend-Stochastic améliorée par Momentum

Aperçu

Il s’agit d’une stratégie de négociation composite qui combine un indicateur de tendance supérieure (SuperTrend) et un indicateur d’oscillation aléatoire (Stochastic Oscillator). Cette stratégie utilise l’indicateur de tendance supérieure (SuperTrend) pour identifier la direction de la tendance du marché, tout en utilisant l’indicateur d’oscillation aléatoire pour confirmer la dynamique des prix, ce qui permet une génération de signal de négociation plus précise.

Principe de stratégie

La logique centrale de la stratégie est basée sur les éléments clés suivants:

  1. L’indicateur de SuperTrend utilise un ATR de 10 cycles et un multiplicateur de 3,0 pour calculer le canal de résistance au support dynamique
  2. L’indicateur de choc aléatoire utilise un paramètre classique ({14,3,3}) pour identifier les zones de survente.
  3. Les conditions sont multiples:
    • Le SuperTrend indique une tendance haussière
    • Indicateur aléatoire %K sur la ligne %D
    • % K situé dans la zone de survente (< 20)
  4. Conditions de mise à l’air
    • Le SuperTrend indique une tendance à la baisse
    • Indicateur aléatoire %K traversant la ligne %D
    • %K est dans la zone de survente (< 80)

Avantages stratégiques

  1. Le suivi des tendances et la confirmation de la dynamique, combinés, améliorent considérablement la fiabilité des signaux de négociation
  2. Adaptation dynamique de la largeur du canal SuperTrend à l’aide de l’ATR pour mieux s’adapter aux fluctuations du marché
  3. Filtrez les surachats sur les indices aléatoires afin d’éviter les opérations sur le contre-pied dans les zones extrêmes
  4. Les conditions de signal sont strictes, ce qui permet de filtrer efficacement les fausses interférences et de réduire les faux signaux.
  5. Une logique stratégique claire et des paramètres adaptables pour différents environnements de marché

Risque stratégique

  1. Les signaux de survente peuvent augmenter les coûts de transaction dans un marché en crise
  2. Les conditions de signaux sont trop strictes et peuvent laisser passer des opportunités de trading potentielles.
  3. L’indicateur de SuperTrend peut être retardé lors de fortes fluctuations
  4. L’indicateur aléatoire pourrait donner un signal de revers prématuré dans un marché en forte tendance Les mesures de contrôle des risques suivantes sont recommandées:
  • Régler le stop loss à une position raisonnable
  • Considérez d’ajouter un filtre de force de tendance (comme l’ADX)
  • Paramètres d’ajustement en fonction de l’évolution du marché

Orientation de l’optimisation de la stratégie

  1. Introduction de filtres de négociation optimisés pour les indicateurs de force de tendance (comme l’ADX):
    • N’ouvrez une position que lorsque la tendance est claire
    • Des transactions fréquentes peuvent éviter des bouleversements
  2. Optimiser les paramètres des indicateurs aléatoires:
    • Pensez à un cycle d’adaptation
    • Ajuster la dynamique de la volatilité de la marge de dépassement
  3. Pour améliorer le système de gestion des fonds:
    • Position d’arrêt dynamique basée sur ATR
    • Dynamique d’ajustement pour atteindre les objectifs de profit
  4. Ajouter un filtrage temporel:
    • Évitez les périodes de faible liquidité
    • Suspension des transactions avant la publication des données importantes

Résumer

La stratégie est conçue de manière rationnelle et présente une bonne ajustabilité et adaptabilité. La stabilité et la rentabilité de la stratégie sont susceptibles d’être encore améliorées grâce à l’optimisation de la direction recommandée. Dans les transactions en direct, il est recommandé aux traders d’ajuster les paramètres de manière ciblée en fonction des caractéristiques spécifiques du marché et de leurs propres préférences en matière de risque.

Code source de la stratégie
/*backtest
start: 2024-02-21 00:00:00
end: 2025-02-18 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"DOGE_USDT"}]
*/

//@version=5
strategy("SuperTrend + Stochastic Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// === Vstupy ===
// SuperTrend
atrPeriod = input.int(10, title="ATR Period", minval=1)
multiplier = input.float(3.0, title="SuperTrend Multiplier", step=0.1)

// Stochastic Oscillator
kPeriod = input.int(14, title="%K Period", minval=1)
dPeriod = input.int(3, title="%D Period", minval=1)
smoothK = input.int(3, title="Smooth %K", minval=1)

// === Výpočty Indikátorov ===
// Výpočet ATR
atr = ta.atr(atrPeriod)

// Výpočet SuperTrend
upperBasic = (ta.highest(high, 1) + ta.lowest(low, 1)) / 2 + (multiplier * atr)
lowerBasic = (ta.highest(high, 1) + ta.lowest(low, 1)) / 2 - (multiplier * atr)

var float upperBand = na
var float lowerBand = na
var bool isBullish = true

if (na(upperBand[1]))
    upperBand := upperBasic
    lowerBand := lowerBasic
else
    upperBand := close[1] > upperBand[1] ? math.max(upperBasic, upperBand[1]) : upperBasic
    lowerBand := close[1] < lowerBand[1] ? math.min(lowerBasic, lowerBand[1]) : lowerBasic

isBullish := close > upperBand[1] ? true : close < lowerBand[1] ? false : isBullish[1]

// Výpočet Stochastic Oscillator
stochK = ta.sma(ta.stoch(high, low, close, kPeriod), smoothK)
stochD = ta.sma(stochK, dPeriod)

// === Podmienky Pre Vstupy ===
// Nákupný signál
longCondition = isBullish and ta.crossover(stochK, stochD) and stochK < 20

// Predajný signál
shortCondition = not isBullish and ta.crossunder(stochK, stochD) and stochK > 80

// === Vstupné Signály ===
if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.entry("Short", strategy.short)

// === Výstupné Podmienky ===
// Môžete pridať vlastné podmienky pre uzatvorenie pozícií alebo použitie stop-loss/take-profit

// === Vykreslenie Indikátorov na Grafe ===
// Vykreslenie SuperTrend
plot(isBullish ? upperBand : na, color=color.green, title="SuperTrend Up", linewidth=2)
plot(not isBullish ? lowerBand : na, color=color.red, title="SuperTrend Down", linewidth=2)
fill(plot(isBullish ? upperBand : na, color=color.green), plot(not isBullish ? lowerBand : na, color=color.red), color=isBullish ? color.new(color.green, 90) : color.new(color.red, 90), title="SuperTrend Fill")

// Vykreslenie Stochastic Oscillator na samostatnom okne
hline(80, "Overbought", color=color.red, linestyle=hline.style_dotted)
hline(20, "Oversold", color=color.green, linestyle=hline.style_dotted)
plot(stochK, color=color.blue, title="%K")
plot(stochD, color=color.orange, title="%D")

// Vizualizácia Signálov
plotshape(series=longCondition, title="Long Entry", location=location.belowbar, color=color.green, style=shape.labelup, text="Long")
plotshape(series=shortCondition, title="Short Entry", location=location.abovebar, color=color.red, style=shape.labeldown, text="Short")