Vier exponentielle gleitende Durchschnitte und Volumenstrategie

Schriftsteller:ChaoZhang, Datum: 2023-10-09 15:05:47
Tags:

Übersicht

Diese Strategie kombiniert mehrere EMAs mit verschiedenen Parameter-Einstellungen und den EOM-Volumenindikator, um Trends über mehrere Zeitrahmen hinweg zu bestimmen und eine Handelsstrategie mit langfristigen und kurzfristigen Urteilen zu erstellen.

Strategie Logik

Die Strategie verwendet vier Gruppen von EMA mit verschiedenen Periodenparametern - 13, 21, 50 und 180 - die mehrere Zeitdimensionen festlegen, um Preistrends zu bestimmen und längerfristige Trendmuster aufzudecken.

Die Strategie verwendet den EOM-Volumenindikator, um Trends zu bestätigen. Die EOM kombiniert Handelsvolumen und Preisvolatilitätsbereich, um den Kauf- und Verkaufsdruck effektiv zu messen. Die Strategie bestimmt lange Konditionen, wenn die EOM über 0 liegt, und kurze Konditionen, wenn die EOM unter 0 liegt.

Die Strategie hat zwei Optionen. Option 1 geht lang, wenn eine kürzere EMA über eine längere EMA kreuzt und schließt lang, wenn eine kürzere EMA unter eine längere EMA kreuzt. Option 2 geht lang, wenn eine kürzere EMA über eine mittlere EMA kreuzt und schließt lang, wenn eine kürzere EMA unter eine mittlere EMA kreuzt. Die beiden Optionen ermöglichen eine umfassendere Trendbestätigung.

Vorteile

  • Die Verwendung von EMAs für mehrere Zeitrahmen zur Ermittlung von Trends kann längerfristige Trendmuster aufdecken
  • Der EOM-Volumenindikator misst den Kauf-/Verkaufsdruck effektiv und vermeidet falsche Signale von vorübergehenden Rückschlägen
  • Zwei optionale Eingabemethoden ermöglichen eine umfassendere Trendbestätigung
  • Skalierung mit Schichten-Ausgänge reduziert die Einfach-Ausgang Exposition

Risiken

  • Die EMAs haben Verzögerungen und können schnelle Umkehrungen verpassen
  • Volumenanzeigen können falsche Signale geben
  • Mehrfache Bedingungskriterien verursachen einen unklaren Eintrag
  • Schichtartige Ausgänge sind möglicherweise zu mechanisch

Möglichkeiten zur Verbesserung

  • Testen Sie mehr Kombinationen von EMA-Perioden, um optimale Parameter zu finden
  • Hinzufügen anderer Indikatoren wie MACD zur Eingangsbestätigung
  • Annahme eines dynamischen Trailing Stop Loss, um Trends zu folgen
  • Anpassung der Positionsgröße an die Marktbedingungen

Zusammenfassung

Diese Strategie integriert die Trendbestimmung der Multi-Timeframe EMA und das Filtern des Volumenindikators, um Trendverfolgung und Geräuschentfernung zu erreichen. Es gibt noch viel Optimierungsmöglichkeiten, indem verschiedene Parameterkombinationen getestet und mehr Indikatoren hinzugefügt werden, um die Robustheit weiter zu verbessern.


/*backtest
start: 2022-10-02 00:00:00
end: 2023-10-08 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/
// © SoftKill21

//@version=4
strategy("4x ema + volume", overlay=true,initial_capital = 1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent , commission_value=0.1 )

//ema x 4
ema1l=input(13)
ema2l=input(21)
ema3l=input(50)
ema4l=input(180)

ema1=ema(close,ema1l)
ema2=ema(close,ema2l)
ema3=ema(close,ema3l)
ema4=ema(close,ema4l)

long1 = close > ema1 and ema1 > ema2 and ema2> ema3 and ema3 > ema4
long2 = crossover(ema1,ema2) and crossover(ema1,ema3)

short1 = close < ema1 and ema1 < ema2 and ema2< ema3 and ema3 < ema4
short2= crossunder(ema1,ema2) and crossunder(ema1,ema3)


//eom
length = input(14, minval=1)
div = input(10000, title="Divisor", minval=1)
eom = sma(div * change(hl2) * (high - low) / volume, length)


option1=input(true)
option2=input(false)

if(option1)
    strategy.entry("long",1,when=long1 and eom>0)
    strategy.close("long",when=short1 and eom<0)
 
if(option2)
    strategy.entry("long",1,when=long2 and eom>0)
    strategy.close("long",when=short2 and eom<0)   

Mehr