Handelsstrategie basierend auf Angebots- und Nachfragezonen und EMA-Gleitstopp


Erstellungsdatum: 2024-01-18 16:41:16 zuletzt geändert: 2024-01-18 16:41:16
Kopie: 0 Klicks: 787
1
konzentrieren Sie sich auf
1617
Anhänger

Handelsstrategie basierend auf Angebots- und Nachfragezonen und EMA-Gleitstopp

Überblick

Die Strategie nutzt die Angebots- und Nachfragezone, den Index-Moving Average (EMA) und den Index-Moving Stop (ATR) für die Beurteilung von Handelssignalen. Der Benutzer kann die EMA-Parameter-Einstellungen und die Sichtbarkeit von Kauf- und Verkaufssignalen anpassen. Die Strategie markiert die Angebotsregionen wie höher höher (HH), niedriger niedriger (LL), niedriger höher LH und höher niedriger H. Nach der Bestätigung des Signals der dritten K-Linie werden Handelsanweisungen ausgegeben.

Strategieprinzip

Indikatorberechnung

Der EMA bewegt sich durchschnittlich:

  • Die EMA wird berechnet anhand des Schlusskurses für einen bestimmten Zyklus (default 200).
  • EMA-Formel:(EMA=(Pricet \times \alpha)+(EMA{t-1}×(1−\alpha)))Darin sind(\alpha=\frac{2}{length+1})。

ATR-Durchschnittswirkungsgrad:

  • Der ATR ist ein Indikator für die Schwankungen des Marktes und basiert auf der tatsächlichen Schwankungsbreite der Preise.
  • Der tatsächliche Bandbreite ist der größte der folgenden drei Werte:
    • Der aktuelle Höchstpreis minus der aktuelle Mindestpreis
    • Der aktuelle Höchstpreis abzüglich des absoluten Wertes des letzten Schlusskurses
    • Der aktuelle Mindestpreis abzüglich des absoluten Wertes des letzten Schlusskurses
  • Die typische ATR-Berechnungsperiode beträgt 14.

Diese Berechnungen werden verwendet, um EMA-Trends zu beurteilen und ATR-Moving-Stops auf Basis von Marktfluktuationen zu setzen. Die Strategie soll ein Kauf- und Verkaufssignal basierend auf der Beziehung zwischen dem Schlusskurs, den EMA- und den ATR-Werten liefern.

Nachfrage- und Versorgungsregionen

Die Strategie verwendet die Begriffe HHH (höher, höher), LLL (niedriger, niedriger), HLH (hoher, niedriger) und LHH (niedriger, höher) zur Identifizierung verschiedener Preisverhaltensmuster, die häufig in der Trendanalyse verwendet werden:

  1. Höherer HöhererDie aktuellen Höchststände sind höher als die vorherigen Höchststände, was auf eine potenzielle Aufwärtsbewegung hindeutet.

  2. Niedrigere NiedrigereDer aktuelle Preistief ist niedriger als der vorherige, was auf eine potenzielle Abwärtsbewegung hindeutet.

  3. Hoher und niedrigerDer aktuelle Preistief ist höher als der vorherige, was darauf hindeutet, dass sich der potenzielle Aufwärtstrend fortsetzt.

  4. Niedrigerer, höhererDie aktuellen Höchststände sind niedriger als die vorherigen Höchststände, was darauf hindeutet, dass der potenzielle Abwärtstrend fortgesetzt wird.

Diese Modelle können in Kombination mit anderen technischen Indikatoren verwendet werden, um eine Umkehrung oder Fortsetzung eines potenziellen Trends zu bestimmen. Die Strategie nutzt diese Modelle, um Ein- oder Ausstiegsmomente zu erkennen.

Eintritt und Ausgang

EintrittszeichenDer dritte K-Linie-Ausgang erzeugt ein Kauf-/Verkaufssignal, wenn der Preis höher/nieder als der Höchst-/Tiefstpreis des Vortages ist.

Verlustbewältigung: mit einer bestimmten Multiplikation des ATR-Wertes (default 2x) als Rücknahme-Stopppunkt.

Strategische Vorteile

  1. Der Markt wird durch eine Kombination von Trends, Umkehrungen und Schwankungen analysiert, um einen falschen Durchbruch zu vermeiden.
  2. Nutzung von Angebots- und Nachfragegebieten zur Bestimmung von Widerstands-Key-Supports.
  3. Das ATR Stop Loss System verfolgt dynamische Marktbewegungen.
  4. Anpassbare EMA- und ATR-Parameter.
  5. Einfache Eintrittsregeln sind leicht umzusetzen.

Risiko und Optimierung

  1. Es besteht die Gefahr von Fehleinschätzungen, die EMA-Länge sollte entsprechend optimiert werden.
  2. Das ATR-Multiplikator ist zu stark eingestellt, um die Gefahr zu verhindern, dass der Angreifer getötet wird.
  3. Ein Eintrittssignal kann in Kombination mit anderen Faktoren gefiltert werden.
  4. Es ist möglich, mit Trend-Sniper-Strategien zu versuchen, die von der Nachfrage abhängig sind.

Zusammenfassen

Die Strategie, die mehrere technische Indikatoren wie Trends, Umkehrungen, Volatilität und Preisverhältnisse analysiert, hat sich in der Rückmeldung gut entwickelt. Die Strategie ist eine grundlegende Strategie, die erweitert werden kann, wenn sie mit anderen Faktoren oder Modellen kombiniert wird.

Strategiequellcode
/*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)