Die Ressourcen sind geladen. Beförderung...

DEMA-MACD-Kombinationsstrategie

Schriftsteller:ChaoZhang, Datum: 21.12.2023
Tags:

img

Übersicht

Der Name dieser Strategie ist DEMA MACD Kombinationsstrategie. Sie kombiniert den DEMA gleitenden Durchschnittsindikator und den MACD-Indikator, um Kauf- und Verkaufssignale mit Dual-Indikator-Bestätigung zu generieren.

Strategie Logik

Die Strategie basiert hauptsächlich auf der Kombination des gleitenden Durchschnittsindikators DEMA und des MACD-Indikators.

  1. Berechnen Sie den 21-Tage-DEMA- gleitenden Durchschnitt. Wenn der Schlusskurs über die DEMA-Linie geht, gilt er als Kaufsignal. Wenn er darunter geht, gilt er als Verkaufssignal.

  2. Berechnen Sie den MACD-Histogrammwert und fügen Sie einen optionalen Parameter hinzu, um zu kontrollieren, ob das MACD-Histogramm als zusätzliche Bestätigung für das Kaufsignal größer als 0 sein muss.

  3. Wenn ein DEMA-Kaufsignal angezeigt wird und die zusätzliche Bestätigung des MACD-Histogramms größer als 0 aktiviert ist, wird das tatsächliche Kaufsignal erst ausgelöst, wenn das MACD-Histogramm positiv wird.

  4. Wenn ein DEMA-Verkaufssignal angezeigt wird, wird ein Verkaufssignal direkt ausgegeben, ohne dass eine zusätzliche MACD-Bestätigung erforderlich ist.

Durch diese Kombination von zwei Indikatoren kann die DEMA-Linie verwendet werden, um die Trendrichtung zu beurteilen, während das MACD-Histogramm verwendet wird, um festzustellen, ob sich der Markt in der Anfangsphase des Trends befindet, um falsche Breaks zu vermeiden und das Gewinnpotenzial zu erhöhen.

Analyse der Vorteile

Die Hauptvorteile der Kombination der Indikatoren DEMA und MACD in dieser Strategie sind:

  1. DEMA ist empfindlicher und kann Trendveränderungen rechtzeitig erfassen und vermeiden, in Fallen geraten zu müssen.

  2. Das MACD-Histogramm mit einer Bestätigung größer als 0 filtert falsche Signale aus und kauft nur zu Beginn des Trends, wodurch das Gewinnpotenzial erhöht wird.

  3. Der Verkauf direkt auf DEMA-Down-Kreuzungen ohne MACD-Bestätigung ermöglicht schnelle Stop-Losses und maximiert die erhaltenen Gewinne.

  4. Die Doppelindikatoren-Verifizierung verbessert die Signalgenauigkeit und verringert falsche Trades.

  5. Großer Optimierungsraum für Parameter, die an unterschiedliche Marktbedingungen angepasst werden können.

Risikoanalyse

Die wichtigsten Risiken dieser Strategie sind:

  1. Da DEMA zu empfindlich ist, kann dies auch zu mehr falschen Signalen führen, so dass der MACD die Signale filtern muss.

  2. Der MACD hat eine Verzögerung und kann die besten Einstiegspunkte verpassen.

  3. Abhängigkeit von Parameteroptimierung mit unterschiedlicher Leistung auf verschiedenen Märkten.

  4. Das Risiko einer seriellen Korrelation, wobei sowohl DEMA als auch MACD bei den Berechnungen auf EMA zurückgreifen.

Lösungen:

  1. Hinzufügen anderer Indikatorfilter, um Multi-Indikator-Combos zu konstruieren, um falsche Signale zu reduzieren.

  2. Versuchen Sie, den MACD durch führende Indikatoren wie BB oder KD zu ersetzen, um Kurven früher einzufangen.

  3. Eingebettete Mechanismen zur Optimierung und Aktualisierung von Parametern zur Evaluierung der Parameterrobustheit in Echtzeit.

  4. Einführung unabhängiger Indikatoren zur Verringerung des Korrelationsrisikos.

Optimierungsrichtlinien

Zu den wichtigsten Optimierungsrichtungen für diese Strategie gehören:

  1. Versuche verschiedene DEMA-Parameter zu finden, um optimale Kombinationen zu finden.

  2. Derzeit setzt die Strategie nur auf DEMA-Downs für Stops.

  3. Ersetzen des MACD durch andere führende Indikatoren für frühere Signale, z. B. Bollinger Bands oder KDJ.

  4. Einführung unabhängiger Indikatoren zur Verbesserung der Robustheit, z. B. Volumen- und Volatilitätsindikatoren.

  5. Aufbau von Parameteroptimierungs- und Aktualisierungsmechanismen zur kontinuierlichen Bewertung des Parameterzustands und zur automatischen Anpassung.

Schlussfolgerung

Diese Strategie kombiniert den DEMA- gleitenden Durchschnitt und den MACD-Indikator, um sowohl für die Signalbestätigung als auch für die Ausgabe zu profitieren. Im Vergleich zu Einzelindikatorstrategien hat sie eine höhere Empfindlichkeit und Signalgenauigkeit. Es gibt auch Verbesserungsmöglichkeiten durch Optimierung von Parametern, Hinzufügen von Stops, Einführung führender Indikatoren usw., um die Strategie robuster und intelligenter zu machen.


/*backtest
start: 2022-12-14 00:00:00
end: 2023-12-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © melihtuna

//@version=1
strategy("DEMA Strategy with MACD", overlay=true)

// === Trend Trader Strategy ===
DemaLength = input(21, minval=1)
MacdControl = input(false, title="Control 'MACD Histogram is positive?' when Buy condition")

e1 = ema(close, DemaLength)
e2 = ema(e1, DemaLength)
dema1 = 2 * e1 - e2
pos = close > dema1 ? 1 : 0 
barcolor(pos == 0 ? red: pos == 1 ? green : blue )    
plot(dema1, color= blue , title="DEMA Strategy with MACD")

// === INPUT BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2020, title = "From Year", minval = 2017)
ToMonth   = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 9999, title = "To Year", minval = 2017)

// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => true // create function "within window of time"

// === MACD ===
[macdLine, signalLine, histLine] = macd(close, 12, 26, 9)
macdCond= MacdControl ? histLine[0] > 0 ? true : false : true

strategy.entry("BUY", strategy.long, when = window() and pos == 1 and macdCond)
strategy.entry("SELL", strategy.short, when = window() and pos == 0)




Mehr