MACD Golden Cross Breakout mit 200-Tage-Durchschnittstrend

Schriftsteller:ChaoZhang, Datum: 2023-12-13
Tags:

img

Übersicht

Diese Strategie kombiniert den MACD-Indikator, um kurzfristige Trends und den 200-Tage- gleitenden Durchschnitt zu identifizieren, um langfristige Trends zu bestimmen. Wenn das MACD-Golden-Cross auftritt und auf einem niedrigen Niveau läuft, wenn der Preis den 200-Tage-gleitenden Durchschnitt durchbricht, wird eine Long-Position mit einem Trailing-Stop-Loss etabliert. Diese Strategie nutzt hauptsächlich die Beziehung zwischen dem MACD-Indikator und dem 200-Tage-gleitenden Durchschnitt, um potenzielle Chancen zu identifizieren.

Strategie Logik

Die Strategie basiert hauptsächlich auf dem MACD-Indikator und dem gleitenden 200-Tage-Durchschnitt.

  1. Berechnen Sie die schnelle Linie, die langsame Linie und die MACD-Linie des MACD-Indikators. Der Parameter der schnellen Linie beträgt 12 Tage, der Parameter der langsamen Linie 26 Tage und der Parameter der Signallinie 9 Tage.

  2. Berechnen Sie den 200-Tage-Exponential Moving Average (EMA).

  3. Wenn die schnelle MACD-Linie über die langsame Linie (goldenes Kreuz) geht, ist die MACD-Linie negativ (läuft auf einem niedrigen Niveau) und der Schlusskurs liegt über der 200-Tage-Linie.

  4. Nach dem Eintritt in die Position wird der Stop-Loss-Preis auf 0,5% des Einstiegspreises und der Zielpreis auf 1% des Einstiegspreises festgelegt.

  5. Wenn der Kurs den Stop-Loss oder den Zielpreis berührt, treten Sie mit einem Stop-Loss aus der Position oder machen Sie Gewinn.

  6. Zwangsläufig vor der täglichen Schließung um 15:15.

  7. Die Handelszeiten liegen täglich zwischen 9:00 und 15:15.

Durch das Beurteilen der kurzfristigen Trendrichtung und -dynamik mit dem MACD-Indikator und die Bestimmung der langfristigen Trendrichtung mit dem 200-Tage- gleitenden Durchschnitt kann der Trend nach dem Betrieb realisiert werden. Der Stop-Loss wird kleiner und der Zielpreis größer eingestellt, um die Gewinne zu maximieren. Der obligatorische tägliche Ausgang kann das Übernachtungsrisiko kontrollieren.

Vorteile der Strategie

Die Strategie weist folgende Vorteile auf:

  1. Die Kombination mehrerer Indikatoren macht das Signalbeurteilen genauer. Der MACD beurteilt kurzfristige Trends und Dynamik, während der 200-Tage-MA die Haupttrendrichtung beurteilt.

  2. Der kleine Stop-Loss-Bereich kann bestimmten Drawdowns standhalten.Der Stop-Loss beträgt nur 0,5%, was zur Verfolgung mittelfristiger Trends förderlich ist.

  3. Ein höheres Gewinnziel erlaubt mehr Gewinnraum. Das Ziel beträgt 1% des Einstiegspreises und entspricht der Gewinnmaximierung von Trendstrategien.

  4. Die obligatorische tägliche Entspannung hilft, das Risiko von enormen Kursschwankungen über Nacht zu vermeiden.

  5. Die Strategielogik ist einfach und klar, leicht zu verstehen und zu reproduzieren, geeignet für Anfänger.

Risiken der Strategie

Die Strategie birgt auch einige Risiken:

  1. Ein Trailer-Stop-Loss kann verwendet werden, um den Stop-Loss-Preis in Echtzeit anzupassen.

  2. Das Risiko, dass die Trendbestimmung fehlschlägt. Der MACD und der gleitende Durchschnitt können falsche Signale geben, was zu Verlusten in nicht-trendigen Märkten führt. Erwägen Sie, Handelsvolumenindikatoren zur Filterung zu kombinieren, um sicherzustellen, dass nur während der Trendbeschleunigungsphasen eingegeben wird.

  3. Trotz des täglichen Lockerungsmechanismus bestehen die Risiken von Overnight-Fluctuationen noch immer, was erfordert, dass die Händler ein gewisses Maß an Risiko aushalten und gleichzeitig die Gesamtpositionsgröße kontrollieren.

Optimierungsrichtlinien

Die Strategie kann auch in folgenden Aspekten optimiert werden:

  1. Kombinieren Sie Handelsvolumenindikatoren, um die tatsächlichen Trends zu ermitteln, vermeiden Sie Fehler beim Eintritt bei unsicheren Konsolidierungen.

  2. Setzen Sie dynamische Stop-Loss-Mechanismen ein. Passen Sie den Stop-Loss-Preis nach dem Eintritt kontinuierlich an, basierend auf der Preisbewegung, um mehr Gewinne zu erzielen.

  3. Optimieren Sie die Kombinationen der MACD-Parameter und die Testeffizienz auf verschiedenen Märkten.

  4. Testen Sie andere gleitende Durchschnitte, wie 100-Tage- und 150-Tage-Linien, um zu sehen, welche besser zu den Trends passt.

  5. Tägliche Zwangsausgänge können nachfolgende Trends verpassen, so dass die Wiedereintrittssignale die Position am nächsten Tag halten können.

Schlussfolgerung

Zusammenfassend lässt sich sagen, dass diese Strategie den MACD und den 200-Tage-MA zur Signalbeurteilung integriert. Sie tritt bedingt in Trends ein, wenn kurzfristige Indikatoren nachhaltige Signale geben, mit Stop-Loss- und Take-Profit-Mechanismen. Die obligatorische tägliche Entspannung kontrolliert auch die Übernachtungsrisiken. Die Logik ist für Anfänger einfach zu bedienen und in andere Strategien zu integrieren. Es gibt aber auch Trendbestimmungs-Fehlerrisiken und Erschöpfungrisiken. Die nächsten Schritte könnten Aspekte wie Stop-Loss-Methoden, Parameter, Handelsvolumenfilter usw. optimieren, um den Gesamtgewinnfaktor zu verbessern.


/*backtest
start: 2023-11-12 00:00:00
end: 2023-12-12 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("MACD and 200 EMA Long Strategy", shorttitle="MACD200EMALong", overlay=true)

// Input parameters
fastLength = input(12, title="Fast Length")
slowLength = input(26, title="Slow Length")
signalLength = input(9, title="Signal Length")
ema200Length = input(200, title="200 EMA Length")
stopLossPercentage = input(0.5, title="Stop Loss Percentage")
targetPercentage = input(1, title="Target Percentage")

// Trading session
startHour = input(09, title="Start Hour", minval=0, maxval=23)
startMinute = input(00, title="Start Minute", minval=0, maxval=59)
endHour = input(15, title="End Hour", minval=0, maxval=23)
endMinute = input(15, title="End Minute", minval=0, maxval=59)

// Calculate MACD
[macdLine, signalLine, _] = macd(close, fastLength, slowLength, signalLength)

// Calculate 200-period EMA
ema200 = ema(close, ema200Length)

// Conditions for entering a long position
longCondition = crossover(macdLine, signalLine) and macdLine < 0 and close > ema200 and hour < 13

// Calculate stop loss and target levels only once at the entry
var float stopLossLevel = na
var float targetLevel = na

if (longCondition)
    stopLossLevel := close * (1 + stopLossPercentage / 100)


    targetLevel := close * (1 + targetPercentage / 100)

// Trading session condition
intradayCondition = true

// Strategy logic
strategy.entry("Long", strategy.long, when=longCondition and intradayCondition)
strategy.exit("Take Profit/Stop Loss", from_entry="Long", loss=stopLossLevel, profit=targetLevel)

// Force exit if the current close is below the stop loss level
if (not na(stopLossLevel) and close < stopLossLevel)
    strategy.close("Long")

// Exit the trade if the current close is greater than or equal to the target level
if (not na(targetLevel) and close >= targetLevel)
    strategy.close("Long")

// Manually force exit at 3:15 PM
if (hour == 15 and minute == 15)
    strategy.close("Long")

// Plotting the EMA, target, and stop loss on the chart
plot(ema200, color=color.blue, title="200 EMA")
plot(stopLossLevel, color=color.red, title="Stop Loss", linewidth=2)
plot(targetLevel, color=color.green, title="Target", linewidth=2)

// Plot entry arrow
plotshape(series=longCondition and intradayCondition, title="Long Entry", color=color.green, style=shape.triangleup, location=location.belowbar)


Mehr