Strategie der doppelten EMA-Gold-Cross-Algorithmen


Erstellt: 2024-01-22 11:04:41 Letzte Änderung: 2024-01-22 11:04:41
Ich bin nicht derjenige, der das tut. 0 Anzahl der Klicks: 303
1
Besorgnis
1105
Betrachter

双EMA黄金交叉算法策略

Übersicht

Diese Strategie erzeugt Gold-Cross- und Death-Cross-Trading-Signale, indem sie die Überschneidungen von schneller EMA und langsamer EMA berechnet. Wenn die schneller EMA die langsamere EMA überschreitet, erzeugt sie ein Kaufsignal; wenn die schneller EMA die langsamere EMA überschreitet, erzeugt sie ein Verkaufssignal.

Die Strategie

Die Kernindikatoren der Strategie sind die schnelle EMA und die langsame EMA. Die Strategie wird durch die Einstellung von zwei unterschiedlichen EMA-Linien mit 10 und 20 eingesetzt. Dabei reagiert die 10-Tage-EMA schneller auf Preisänderungen, während die 20-Tage-EMA langsamer reagiert. Wenn die kurzfristige EMA über die kurzfristige EMA verläuft, leitet die kurzfristige Durchschnittslinie die langfristige Durchschnittslinie nach oben, was ein Kaufsignal erzeugt, wenn die kurzfristige Durchschnittslinie unter der kurzfristigen Durchschnittslinie den Vorsprung gegenüber der langfristigen Durchschnittslinie verliert, was ein Verkaufssignal erzeugt.

Durch die Überschneidung der schnellen EMA-Linien kann die Strategie den Umschwung der Markttrends vollständig erfassen und zeitnahe Handelssignale erzeugen. Gleichzeitig hat die EMA-Anzeige die Fähigkeit, falsche Signalfilter zu verwenden, um zu vermeiden, dass die Positionen häufig in Zeiten von Marktwirbeln eröffnet werden. Dies ermöglicht es, die Marktwendepunkte zu erfassen und eine höhere Profitabilität zu erzielen, während die falsche Handelskosten reduziert werden.

Stärkenanalyse

  • Nutzen Sie die EMA-Kreuzung, um Marktturnpunkte zu erfassen und profitabel zu sein
  • Schnelle EMA-Linien und langsame EMA-Linien werden zusammen verwendet, um ihre jeweiligen Vorteile zu nutzen.
  • Die EMA selbst hat eine Filterwirkung, die fehlerhafte Transaktionen reduzieren kann.
  • Einfache, verständliche und optimierte Umsetzung
  • Skalierbar, mit weiteren Optimierungsmöglichkeiten für weitere Hilfsindikatoren

Risikoanalyse

  • Die doppelte EMA-Kreuzung kann häufig falsche Signale in pulsierenden Märkten erzeugen.
  • EMA-Parameter, die nicht richtig eingestellt sind, können Marktwendepunkte verpassen.
  • Es gibt eine gewisse Verzögerung und möglicherweise fehlende Kurzstrecken-Operationsmöglichkeiten.
  • Die Tatsache, dass die Menschen nicht in der Lage sind, mit den Mutationen umzugehen, ist ein großes Problem.

Für die oben genannten Risiken kann optimiert werden, indem zusätzliche Indikatoren eingeführt werden, wie z. B. die Erhöhung der Handelsfilterbedingungen, die Kombination von MACD-Indikatoren zur Vermeidung von Fehlsignalen, die Verwendung von adaptivem EMA-Beschleunigungsindikator, die Reaktionsgeschwindigkeit usw. Darüber hinaus sind ein vernünftiger Stop-Loss und ein positiver Stop-Block erforderlich.

Optimierung

Die Strategien, die weiter optimiert werden können, umfassen:

  • Erhöhung der Filterung der Börsen: z. B. Kombination von Handelsvolumenindikatoren, um falsche Brechungen zu vermeiden
  • In Kombination mit Hilfsindikatoren wie MACD, um Fehlsignale weiter zu vermeiden
  • Einführung einer anpassungsfähigen EMA, dynamische Anpassung der EMA-Parameter an die Marktbedingungen
  • Multi-Zeitrahmen-Kooperation, um die Vorteile der verschiedenen EMA-Zyklen zu nutzen
  • Optimierte Stop-Loss-Strategien, um Gewinne durch mobile Stopp-Loss, Quotienten-Stopp-Loss usw. zu erzielen
  • Automatische Optimierung von Parametern in Kombination mit Technologien wie Deep Learning

Zusammenfassung

Die Strategie hat eine starke reale Wirkung, indem sie durch das Prinzip der schnellen und langsamen Kreuzung von zwei EMAs die wichtigsten Wendepunkte des Marktes erfasst. In Kombination mit Hilfsindikatoren und Optimierung von Stop-Losses kann die Strategie die Stabilität weiter verbessern. Die Strategie ist einfach und klar, wertvoll, um von den Händlern gelernt und angewendet zu werden.

Strategie-Quellcode
                
                    /*backtest
start: 2023-01-15 00:00:00
end: 2024-01-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Backtest single EMA cross", overlay=true)

qty = input(100000, "Buy quantity")

testStartYear = input(2019, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testStartHour = input(0, "Backtest Start Hour")
testStartMin = input(0, "Backtest Start Minute")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, testStartHour, testStartMin)
testStopYear = input(2099, "Backtest Stop Year")
testStopMonth = input(1, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)
testPeriodBackground = input(title="Color Background?", type=input.bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and time >= testPeriodStart and time <= testPeriodStop ? 
   #00FF00 : na
testPeriod() => true


ema1 = input(10, title="Select EMA 1")
ema2 = input(20, title="Select EMA 2")

expo = ema(close, ema1)
ma = ema(close, ema2)

avg_1 = avg(expo, ma)
s2 = cross(expo, ma) ? avg_1 : na
//plot(s2, style=plot.style_line, linewidth=3, color=color.red, transp=0)

p1 = plot(expo, color=#00FFFF, linewidth=2, transp=0)
p2 = plot(ma, color=color.orange, linewidth=2, transp=0)
fill(p1, p2, color=color.white, transp=80)

longCondition = crossover(expo, ma)

shortCondition = crossunder(expo, ma)


if testPeriod()
    strategy.entry("Long", strategy.long, when=longCondition)
    strategy.entry("Short", strategy.short, when=shortCondition)

plotshape(longCondition, title = "Buy Signal", text ="BUY", textcolor =#FFFFFF , style=shape.labelup, size = size.normal, location=location.belowbar, color = #1B8112, transp = 0)
plotshape(shortCondition, title = "Sell Signal", text ="SELL", textcolor = #FFFFFF, style=shape.labeldown, size = size.normal, location=location.abovebar, color = #FF5733, transp = 0)


                
            
Weitere Informationen