Stratégie de suivi des tendances basée sur SuperTrend et DEMA


Date de création: 2023-12-08 16:42:14 Dernière modification: 2023-12-08 16:42:14
Copier: 0 Nombre de clics: 1014
1
Suivre
1621
Abonnés

Stratégie de suivi des tendances basée sur SuperTrend et DEMA

Aperçu

Cette stratégie, combinée à l’indicateur SuperTrend et à l’indicateur DEMA, permet de suivre une tendance. Elle génère un signal d’achat lorsque le prix dépasse la hauteur et un signal de vente lorsque le prix descend. Elle est utilisée pour filtrer les faux signaux de l’indicateur DEMA.

Principe de stratégie

La stratégie est basée sur l’indicateur SuperTrend pour déterminer la direction de la tendance des prix. L’indicateur SuperTrend, combiné à l’indicateur ATR, permet de déterminer efficacement la tendance des prix.

Pour filtrer les signaux de désinformation, la stratégie intègre également l’indicateur DEMA. Un signal d’achat n’est généré que lorsque le prix dépasse la trajectoire ascendante et est au-dessus de la ligne DEMA; un signal de vente n’est généré que lorsque le prix est descendu et est au-dessous de la ligne DEMA. Cela peut filtrer efficacement les faux signaux dans les marchés volatiles.

Plus précisément, la logique des signaux de transaction de cette stratégie est la suivante:

  1. Un renversement de tendance produit un signal d’achat lorsque le prix sort de la trajectoire descendante
  2. Un revirement de tendance produit un signal de vente lorsque le prix dépasse la barre supérieure.
  3. Un signal d’achat n’est effectivement généré que lorsque le prix est supérieur à la ligne DEMA.
  4. Un signal de vente n’est effectivement généré que lorsque le signal de vente apparaît et que le prix est inférieur à la ligne DEMA

Grâce à cette logique de conception, il est possible d’opérer dans des conditions de tendance et d’éviter de fréquenter les positions dans des marchés instables.

Avantages stratégiques

  • Combinaison de l’indicateur SuperTrend et de l’indicateur DEMA pour un double effet de suivi des tendances et de filtrage des signaux
  • Les paramètres de l’indicateur SuperTrend sont faciles à optimiser et peuvent être ajustés en fonction des variétés et des cycles
  • L’optimisation des paramètres de l’indicateur DEMA est simple et ne nécessite pas de tests répétés
  • Les stratégies s’appliquent aux tendances, permettent de suivre les tendances en cours de route.
  • Les faux signaux de choc du marché sont filtrés par l’indicateur DEMA
  • Une stratégie simple, facile à comprendre et à modifier

Risque stratégique

  • La stratégie n’est pas adaptée aux fortes fluctuations des prix
  • La tendance à la hausse pourrait entraîner des pertes
  • Les paramètres de l’indicateur DEMA sont mal configurés et peuvent manquer le meilleur moment pour acheter/vendre
  • Les paramètres de l’indicateur SuperTrend, tels que la mauvaise configuration du cycle ATR, peuvent générer des signaux de désinformation

Comment gérer les risques:

  • Optimiser les paramètres DEMA et SuperTrend
  • Combiné à une stratégie de stop loss, le contrôle des stop loss uniques
  • L’augmentation des mécanismes de confirmation aux points critiques pour éviter les signaux de désinformation

Orientation de l’optimisation de la stratégie

Cette stratégie peut être optimisée dans les domaines suivants:

  1. Optimisation des paramètres de l’indicateur SuperTrend. Il est possible de tester différents paramètres de la période ATR pour trouver la meilleure combinaison de paramètres.

  2. Optimisation des paramètres de l’indicateur DEMA. Différents paramètres peuvent être testés pour déterminer le meilleur paramétrage.

  3. Il est possible de régler le stop loss en fonction de la valeur ATR, afin d’éviter un stop loss excessif.

  4. Il est possible d’ajouter la confirmation d’autres indicateurs aux points critiques, afin d’éviter les signaux de désinformation. Par exemple, la confirmation d’un indicateur d’augmentation de la quantité d’énergie au point de basculement de la tendance.

  5. Optimisation de la gestion des positions. Les positions peuvent être ajustées en fonction de la volatilité du marché et de la dynamique de la situation des risques.

Résumer

Cette stratégie intègre les avantages de l’indicateur SuperTrend et de l’indicateur DEMA, et permet de réaliser une stratégie de trading quantitative basée sur le suivi de la tendance et le filtrage des signaux. Il y a beaucoup de place pour l’optimisation de la stratégie. La stabilité et la rentabilité de la stratégie peuvent être encore améliorées par des mesures telles que l’optimisation des paramètres, le mécanisme de stop-loss et le filtrage des signaux.

Code source de la stratégie
/*backtest
start: 2023-11-07 00:00:00
end: 2023-12-07 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('Krish\'s Supertrend Strategy', overlay=true)

// Supertrend Settings
Periods = input(title='ATR Period', defval=10)
src = input(hl2, title='Source')
Multiplier = input.float(title='ATR Multiplier', step=0.1, defval=3.0)
changeATR = input(title='Change ATR Calculation Method ?', defval=true)
showsignals = input(title='Show Buy/Sell Signals ?', defval=true)
highlighting = input(title='Highlighter On/Off ?', defval=true)

atr2 = ta.sma(ta.tr, Periods)
atr = changeATR ? ta.atr(Periods) : atr2

up = src - Multiplier * atr
up1 = nz(up[1], up)
up := close[1] > up1 ? math.max(up, up1) : up

dn = src + Multiplier * atr
dn1 = nz(dn[1], dn)
dn := close[1] < dn1 ? math.min(dn, dn1) : dn

trend = 1
trend := nz(trend[1], trend)
trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend

upPlot = plot(trend == 1 ? up : na, title='Up Trend', style=plot.style_linebr, linewidth=2, color=color.new(color.green, 0))
buySignal = trend == 1 and trend[1] == -1

plotshape(buySignal ? up : na, title='UpTrend Begins', location=location.absolute, style=shape.circle, size=size.tiny, color=color.new(color.green, 0))
plotshape(buySignal and showsignals ? up : na, title='Buy', text='Buy', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(color.green, 0), textcolor=color.new(color.white, 0))

dnPlot = plot(trend == 1 ? na : dn, title='Down Trend', style=plot.style_linebr, linewidth=2, color=color.new(color.red, 0))
sellSignal = trend == -1 and trend[1] == 1

plotshape(sellSignal ? dn : na, title='DownTrend Begins', location=location.absolute, style=shape.circle, size=size.tiny, color=color.new(color.red, 0))
plotshape(sellSignal and showsignals ? dn : na, title='Sell', text='Sell', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.red, 0), textcolor=color.new(color.white, 0))

// DEMA Settings
dema_length = 200
dema = ta.ema(close, dema_length)

// Long and Short Conditions
longCondition = buySignal and close > dema
shortCondition = sellSignal and close < dema

// Strategy Entry and Exit
strategy.entry('Long', strategy.long, when=longCondition)
strategy.entry('Short', strategy.short, when=shortCondition)

strategy.close('Long', when=ta.change(trend) or close < dema)
strategy.close('Short', when=ta.change(trend) or close > dema)

// Plotting
mPlot = plot(ohlc4, title='', style=plot.style_circles, linewidth=0)
longFillColor = highlighting ? trend == 1 ? color.green : color.white : color.white
shortFillColor = highlighting ? trend == -1 ? color.red : color.white : color.white

fill(mPlot, upPlot, title='UpTrend Highlighter', color=longFillColor, transp=90)
fill(mPlot, dnPlot, title='DownTrend Highlighter', color=shortFillColor, transp=90)

// Alerts (using plotshape for alerts in strategies)
plotshape(buySignal, title='SuperTrend Buy', color=color.new(color.green, 0), style=shape.triangleup, size=size.small)
plotshape(sellSignal, title='SuperTrend Sell', color=color.new(color.red, 0), style=shape.triangledown, size=size.small)
changeCond = trend != trend[1]
plotshape(changeCond, title='SuperTrend Direction Change', color=color.new(color.yellow, 0), style=shape.triangleup, size=size.small)