Stratégie de trading basée sur les zones d'offre et de demande et l'arrêt glissant de l'EMA


Date de création: 2024-01-18 16:41:16 Dernière modification: 2024-01-18 16:41:16
Copier: 0 Nombre de clics: 787
1
Suivre
1617
Abonnés

Stratégie de trading basée sur les zones d’offre et de demande et l’arrêt glissant de l’EMA

Aperçu

La stratégie utilise les zones de demande et d’offre, les moyennes mobiles de l’indice (EMA) et la plage d’oscillation réelle moyenne (ATR) pour juger les signaux de négociation. L’utilisateur peut ajuster les paramètres EMA et la visibilité des signaux d’achat et de vente. La stratégie marque des zones de demande telles que plus haut plus haut (HH), plus bas plus bas (LL), plus bas plus haut (LH) et plus haut plus bas (HL).

Principe de stratégie

Calcul de l’indicateur

La moyenne mobile de l’indice EMA:

  • L’EMA est calculée sur la base du prix de clôture d’une certaine période (défault 200).
  • La formule de l’EMA:(EMA=(Pricet \times \alpha)+(EMA{t-1}×(1−\alpha)))Parmi eux:(\alpha=\frac{2}{length+1})。

ATR moyenne de la vraie amplitude de fluctuation:

  • L’ATR est une mesure de la volatilité du marché, calculée en fonction de la portée réelle des fluctuations des prix.
  • La gamme réelle est le plus grand des trois:
    • Le plus haut prix actuel moins le plus bas prix actuel
    • Le prix le plus élevé actuel moins la valeur absolue du dernier prix de clôture
    • Le prix minimum actuel moins la valeur absolue du dernier prix de clôture
  • Le cycle ATR typique est de 14.

Ces calculs sont utilisés pour déterminer les tendances des EMA et les arrêts mobiles ATR basés sur les fluctuations du marché. La stratégie vise à fournir un signal d’achat et de vente basé sur la relation entre le prix de clôture, les EMA et les valeurs ATR.

Le jugement de la zone d’offre et de demande

La stratégie utilise des termes tels que HH (plus haut, plus haut), LL (plus bas, plus bas), HL (plus haut, plus bas) et LH (plus bas, plus haut) pour identifier différents modèles de comportement des prix, souvent utilisés dans l’analyse des tendances:

  1. Plus haut, plus hautLe prix de l’or a augmenté de façon significative depuis le début de l’année, et il est en hausse depuis le début de l’année.

  2. Plus bas plus basLe prix actuel est inférieur au précédent, ce qui indique un potentiel mouvement à la baisse.

  3. Plus haut, plus bas (HL)Le prix de l’électricité est en baisse depuis le début de l’année, mais la tendance à la hausse se poursuit.

  4. Plus bas plus haut (LH)Le prix de l’électricité est en baisse depuis le début de l’année, ce qui indique que la tendance baissière pourrait se poursuivre.

L’utilisation de ces modèles en combinaison avec d’autres indicateurs techniques permet de déterminer l’inversion ou la poursuite d’une tendance potentielle. La stratégie utilise ces modèles pour identifier les moments d’entrée ou de sortie.

Entrée et sortie

Signaux d’entrée: La troisième ligne K se ferme lorsque le prix est supérieur ou inférieur au prix le plus élevé ou le plus bas de la journée précédente.

Comment arrêter les pertes: avec un certain nombre de fois la valeur ATR (default 2 fois) comme point d’arrêt de retrait.

Avantages stratégiques

  1. Le marché est évalué en fonction de plusieurs facteurs, tels que la tendance, les retournements et les fluctuations, afin d’éviter les fausses ruptures.
  2. Utilisez les zones d’offre et de demande pour déterminer les résistances de soutien clés.
  3. Le système ATR Stop Loss suit dynamiquement les fluctuations du marché.
  4. Les paramètres EMA et ATR sont personnalisables.
  5. Les règles d’entrée sont simples et faciles à appliquer.

Risque et optimisation

  1. Le risque d’erreur de jugement doit être optimisé pour la longueur de l’EMA.
  2. Le facteur ATR est trop élevé pour que vous puissiez vous faire tuer.
  3. On peut envisager de filtrer le signal d’entrée en combinant d’autres facteurs.
  4. Il est possible d’essayer des stratégies qui s’appuient principalement sur des tendances de sniper et qui sont complémentaires à la demande.

Résumer

La stratégie utilise de multiples indicateurs techniques et de prix, tels que les tendances, les inversions, les fluctuations, etc. Elle fonctionne bien dans la rétroaction. Cependant, la complexité du marché réel, la variabilité, l’optimisation et le filtrage approprié des signaux d’entrée de jeu sont nécessaires.

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

//@version=5
strategy("Supply and Demand Zones with EMA and Trailing Stop", shorttitle="SD Zones", overlay=true)

showBuySignals = input(true, title="Show Buy Signals", group="Signals")
showSellSignals = input(true, title="Show Sell Signals", group="Signals")
showHLZone = input(true, title="Show HL Zone", group="Zones")
showLHZone = input(true, title="Show LH Zone", group="Zones")
showHHZone = input(true, title="Show HH Zone", group="Zones")
showLLZone = input(true, title="Show LL Zone", group="Zones")

emaLength = input(200, title="EMA Length", group="EMA Settings")
atrLength = input(14, title="ATR Length", group="Trailing Stop")
atrMultiplier = input(2, title="ATR Multiplier", group="Trailing Stop")

// Function to identify supply and demand zones
getZones(src, len, mult) =>
    base = request.security(syminfo.tickerid, "D", close)
    upper = request.security(syminfo.tickerid, "D", high)
    lower = request.security(syminfo.tickerid, "D", low)
    multiplier = request.security(syminfo.tickerid, "D", mult)
    zonetype = base + multiplier * len
    zone = src >= zonetype
    [zone, upper, lower]

// Identify supply and demand zones
[supplyZone, _, _] = getZones(close, high[1] - low[1], 1)
[demandZone, _, _] = getZones(close, high[1] - low[1], -1)

// Plot supply and demand zones
bgcolor(supplyZone ? color.new(color.red, 80) : na)
bgcolor(demandZone ? color.new(color.green, 80) : na)

// EMA with Linear Weighted method
ema = ta.ema(close, emaLength)

// Color code EMA based on its relation to candles
emaColor = close > ema ? color.new(color.green, 0) : close < ema ? color.new(color.red, 0) : color.new(color.yellow, 0)

// Plot EMA
plot(ema, color=emaColor, title="EMA")

// Entry Signal Conditions after the third candle
longCondition = ta.crossover(close, high[1]) and bar_index >= 2
shortCondition = ta.crossunder(close, low[1]) and bar_index >= 2

// Trailing Stop using ATR
atrValue = ta.atr(atrLength)
trailStop = close - atrMultiplier * atrValue

// Strategy Entry and Exit
if (longCondition)
    strategy.entry("Buy", strategy.long)
    strategy.exit("TrailStop", from_entry="Buy", loss=trailStop)

if (shortCondition)
    strategy.entry("Sell", strategy.short)
    strategy.exit("TrailStop", from_entry="Sell", loss=trailStop)

// Plot Entry Signals
plotshape(series=showBuySignals ? longCondition : na, title="Buy Signal", color=color.new(color.green, 0), style=shape.triangleup, location=location.belowbar)
plotshape(series=showSellSignals ? shortCondition : na, title="Sell Signal", color=color.new(color.red, 0), style=shape.triangledown, location=location.abovebar)

// Plot Trailing Stop
plot(trailStop, color=color.new(color.red, 0), title="Trailing Stop")

// Plot HH, LL, LH, and HL zones
plotshape(series=showHHZone and ta.highest(high, 2)[1] and ta.highest(high, 2)[2] ? 1 : na, title="HH Zone", color=color.new(color.blue, 80), style=shape.triangleup, location=location.abovebar)
plotshape(series=showLLZone and ta.lowest(low, 2)[1] and ta.lowest(low, 2)[2] ? 1 : na, title="LL Zone", color=color.new(color.blue, 80), style=shape.triangledown, location=location.belowbar)
plotshape(series=showLHZone and ta.highest(high, 2)[1] and ta.lowest(low, 2)[2] ? 1 : na, title="LH Zone", color=color.new(color.orange, 80), style=shape.triangleup, location=location.abovebar)
plotshape(series=showHLZone and ta.lowest(low, 2)[1] and ta.highest(high, 2)[2] ? 1 : na, title="HL Zone", color=color.new(color.orange, 80), style=shape.triangledown, location=location.belowbar)