Verwenden der Handelsstrategie mit dualem gleitendem Durchschnitt


Erstellungsdatum: 2024-02-18 15:11:04 zuletzt geändert: 2024-02-18 15:11:04
Kopie: 0 Klicks: 580
1
konzentrieren Sie sich auf
1617
Anhänger

Verwenden der Handelsstrategie mit dualem gleitendem Durchschnitt

Überblick

Die Strategie verwendet die Art, wie zwei Moving Averages ein Handelssignal erzeugen, um ein Kaufsignal zu erzeugen, wenn der kurzfristige Moving Average über den langfristigen Moving Average geht. Die Strategie erzeugt ein Verkaufsignal, wenn der kurzfristige Moving Average unter dem langfristigen Moving Average geht.

Strategieprinzip

Die Strategie verwendet zwei Indizes mit unterschiedlichen Perioden als Moving Average (EMA): EMA1 ist der kurzfristige Moving Average mit einer Periode von 9; EMA2 ist der langfristige Moving Average mit einer Periode von 21; EMA2 erzeugt ein Kaufsignal, wenn der kurzfristige Moving Average über EMA1 durchläuft; EMA2 erzeugt ein Verkaufsignal, wenn der EMA1 unter EMA2 durchläuft.

So kann die Trendverfolgung der Moving Average genutzt werden, um die Signale zu erfassen und den Trend zu verfolgen, wenn der Preis eine neue Trendrichtung beginnt. Zum Beispiel, wenn der Preis von einem Rückgang zu einem Anstieg übergeht, steigt der kurzfristige Moving Average vor dem langfristigen Moving Average.

Analyse der Stärken

Der größte Vorteil dieser Strategie besteht darin, dass sie Preistrends effektiv identifizieren kann, insbesondere für trendige Märkte. Die Mobile Average hat eine gute Trendverfolgung, die durch die Dual Mobile Average-Strategie weiter verstärkt wird. Darüber hinaus kann die Dual Mobile Average-Strategie im Vergleich zur Single Mobile Average-Strategie die falschen Signale weiter filtern und die Signalzuverlässigkeit ist höher.

Risikoanalyse

Das größte Risiko dieser Strategie besteht darin, dass die Moving Average bei starken Preisschwankungen rückständig ist und die beste Ein- oder Ausstiegsmomente verpasst werden können. Darüber hinaus erzeugt die Strategie mehr unwirksame Signale, die die Stabilität der Strategie beeinträchtigen, wenn sich der Markt in einer Schwankungszone befindet.

Um das Risiko zu verringern, können Sie die Periodiparameter der Moving Average entsprechend anpassen oder andere Indikatoren hinzufügen, um die Wellen zu filtern. Zum Beispiel können Sie die Schwellenwerte in Verbindung mit den Indikatoren für die Marktfluktuation festlegen, um zu vermeiden, dass Sie bei starken Marktschwankungen handeln.

Optimierungsrichtung

Die Optimierungsmöglichkeiten für diese Strategie bestehen hauptsächlich in folgenden Bereichen:

  1. Optimierung der Moving Average Period Parameter und Suche nach der optimalen Parameterkombination
  2. Erhöhung der Signalzuverlässigkeit in Kombination mit anderen Indikatoren
  3. Anpassungsparameter für verschiedene Sorten und Marktumstände
  4. Kombinationsfaktoren, die bestimmte Einstiegspunkte bestimmen
  5. Optimierung der Stop-Loss-Mechanismen

Zusammenfassen

Die Strategie verwendet die Methode der Bildung von Handelssignalen durch eine zweigezifische bewegliche Durchschnittslinie. Der größte Vorteil besteht darin, dass die Fähigkeit, die Preisentwicklung zu verfolgen, stark ist und die Preisentwicklung effektiv identifiziert werden kann. Es gibt jedoch auch Probleme wie die Verzögerung der beweglichen Durchschnittslinie.

Strategiequellcode
/*backtest
start: 2024-01-18 00:00:00
end: 2024-02-17 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © technicalTruff99446

//@version=4
strategy("AhmetMSA", overlay=true, initial_capital = 10000, commission_value = 0.002, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, calc_on_order_fills = true)
//2. DEĞERDEN SONRA GEÇMİŞ HESAPLAMA DEĞERİ, KOMİSYON ORANI, PARANIN TAMAMI, DEĞERLERİ EKLEMDİ

emaShPD = input (title="EMA KISA PERİYOT", defval=9, minval=1)
emaLngPD = input (title="EMA UZUN PERİYOT", defval=21, minval=1)

//input   DEĞİŞKEN DEĞER ATAMA

ema1 = ema (close,emaShPD)
ema2 = ema (close,emaLngPD)

//EMALAR ARASINI BOYAMA upTrend downTrend
upTrend   = plot (ema1, color=#4DFF00, linewidth=2, title= "EMA KISA", transp=0)
downTrend = plot (ema2, color=#FF0C00, linewidth=3, title= "EMA UZUN", transp=0)
//linewidth ÇİZGİ KALINLIĞI
//title     İSİM VERME

//BACKTESTİN BAŞLANGIÇ TARİHİNİ BELİRLEME
yearin = input(2024, title = "Backtest Başlangıç Tarihi")
//longCondition = crossover(ema1, ema2)
//shortCondition = crossover(ema2, ema1)
buy = crossover(ema1, ema2) and yearin >= year
sell = crossover(ema2, ema1) and yearin >= year
//ta.crossunder  KESİŞİM KODU

//Barları BOYAMA
barbuy  = ema1 >= ema2
barsell = ema2 <  ema1




//AL SAT AŞK KUTUCUKLU EKRANA YAZMA
plotshape(buy, title = "AL AŞK", text = 'AL AŞK', style = shape.labelup, location = location.belowbar, color= color.green,   textcolor = color.white, transp = 0, size = size.tiny)
plotshape(sell, title = "SAT AŞK", text = 'SAT AŞK', style = shape.labeldown, location = location.abovebar, color= color.red,   textcolor = color.white, transp = 0, size = size.tiny)

//Barları BOYAMA KOŞULU
barcolor(barbuy? #4DFF00: barsell? #FF0C00: #FF0C00)


fill(upTrend, downTrend, color = ema1 >= ema2?#4DFF00 : #FF0C00, transp = 80, title = "bgcolor")

//longCondition = ta.crossover(ta.sma(close, 14), ta.sma(close, 28))
//shortCondition = ta.crossunder(ta.sma(close, 14), ta.sma(close, 28))
//14 GÜNLÜĞÜN KAPANIŞDEĞERİNİN 28 GÜNLÜK KAPANIŞ DEĞERİNİ KESMESİ KOŞULU



if (buy)
    strategy.entry("AL AŞK", strategy.long)


if (sell)
    strategy.entry("SAT AŞK", strategy.short)