Handelsstrategie mit doppeltem Momentum und gleitendem Durchschnitt


Erstellungsdatum: 2024-02-19 14:36:37 zuletzt geändert: 2024-02-19 14:36:37
Kopie: 1 Klicks: 322
1
konzentrieren Sie sich auf
1179
Anhänger

Handelsstrategie mit doppeltem Momentum und gleitendem Durchschnitt

Überblick

Die Doppeldynamik-Linien-Handelsstrategie ist eine Strategie, bei der die OTT-Indikatoren und die Wavetrend-Oscillator-Indikatoren verwendet werden. Sie kombiniert die OTT-Indikatoren, die vom Lehrer Anıl Özekşi entwickelt wurden, mit den Wavetrend-Oscillator-Indikatoren von lonestar108, um einen erfolgreichen Handelsindikator zu bilden. Die Strategie kann in einem Binar-Markt mehrere Overs abwickeln.

Strategieprinzip

Die binäre Energie-Evenline-Trading-Strategie berechnet zuerst die Brin-Band-Mittelbahn, also den Moving Average MAvg. Dann wird der LongStop und der ShortStop berechnet, basierend auf dem prozentualen Bereich und der Periode, die der Benutzer festlegt. Wenn der Preis auf die Oberbahn geht, macht er mehr, wenn er auf die Unterbahn geht, macht er nichts.

Konkret ist der Kern der Strategie der OTT-Indikator. Der OTT-Indikator besteht aus einer Mittellinie und einer Grenzlinie und passt die Position der Grenzlinie an die Marktfluktuation anhand eines bestimmten Algorithmus an. Wenn der Preis unter die OTT-Grenze fällt, macht man einen Leerwert; wenn der Preis die OTT-Grenze überschreitet, macht man einen Pluswert.

Die Strategie nutzt gleichzeitig die Wavetrend-Indikatoren, um die Richtung der Preisentwicklung zu bestimmen. Wenn es sich um einen Abwärtstrend handelt, wird nur kurz gemacht; wenn es sich um einen Aufwärtstrend handelt, wird nur kurz gemacht.

Analyse der Stärken

Die binäre Dynamik-Linien-Handelsstrategie kombiniert die Vorteile von Moving Averages, Brin-Bands und OTT-Indikatoren, um die Stop-Loss-Position automatisch anzupassen und die Wahrscheinlichkeit zu verringern, dass ein Stop-Loss aktiviert wird. Die Kombination von Trend-Betrachtungs-Indikatoren verhindert, dass sie in einem schwankenden Trend eingeschlossen werden.

Die wichtigsten Vorteile dieser Strategie sind:

  1. Automatische Anpassung der Stop-Loss-Position zur Kontrolle des Risikos
  2. Die OTT-Indikatoren können die Umkehrpunkte genauer bestimmen.
  3. Trends und Indikatoren, um sich vor Marktschwankungen zu schützen
  4. Die Regeln sind relativ klar und leicht zu verstehen.

Risikoanalyse

Die Strategie der Doppeldynamik-Linienhandel beinhaltet auch einige Risiken, die sich auf folgende Aspekte konzentrieren:

  1. In extremen Situationen kann die Stop-Loss-Linie durchbrochen werden, was zu größeren Verlusten führt.
  2. OTT-Indikator-Rückschlagsignale sind nicht unbedingt korrekt und können fehlerhaft sein
  3. Trends können auch falsch beurteilt werden, was zu einem großen Verlust bei einem Abwärtstrend führt.
  4. Die falsche Einstellung der Parameter beeinträchtigt die Effektivität der Strategie

Die wichtigsten Maßnahmen sind:

  1. Entspannung der Stop-Loss-Marge, um sicherzustellen, dass die Stop-Loss-Linie nicht leicht aktiviert wird
  2. Vermeiden Sie Falschmeldungen, indem Sie die Zuverlässigkeit von OTT-Signalen mit anderen Kennzahlen beurteilen
  3. Anpassung der Parameter, um Trends zu bestimmen
  4. Optimierung von Parametern, um die optimale Kombination von Parametern zu finden

Optimierungsrichtung

Es gibt noch Raum für weitere Optimierungen bei der Strategie für den Dual Dynamic Energy Linear Trading:

  1. In Kombination mit anderen Indikatoren kann die Genauigkeit der Signalbeurteilung berücksichtigt werden
  2. Anpassungsfähige Stop-Loss-Algorithmen können erforscht werden, so dass die Stop-Loss-Linie an die Schwankungen des Marktes angepasst werden kann
  3. Der Markt ist in der Lage, die Anzahl der Geschäfte zu erhöhen, um die Anzahl der falschen Durchbrüche zu vermeiden.
  4. Verschiedene Arten von Moving Averages können getestet werden, um die Mittelwerte zu finden, die am besten zusammenpassen.
  5. Methoden wie Machine Learning können versucht werden, die Parameter automatisch zu optimieren.

Zusammenfassen

Die binäre Dynamik-Linien-Handelsstrategie integriert die Vorzüge mehrerer Indikatoren und kann automatisch die Stop-Loss-Position anpassen, Rückschlagsignale beurteilen und die Richtung der Tendenz erkennen. Sie hat Vorteile wie eine starke Risikokontrolle und eine einfache Verwendung. Es gibt jedoch auch Risiken wie Deckung und Signalunrichtigkeit.

Strategiequellcode
/*backtest
start: 2023-02-12 00:00:00
end: 2024-02-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="Bugra trade strategy", shorttitle="Bugra trade strategy", overlay=true)

// Kullanıcı Girdileri
length = input(5, title="Period", minval=1)
percent = input(1, title="Sihirli Yüzde", type=input.float, step=0.1, minval=0)
mav = input(title="Hareketli Ortalama Türü", defval="VAR", options=["SMA", "EMA", "WMA", "TMA", "VAR", "WWMA", "ZLEMA", "TSF"])
wt_n1 = input(10, title="Kanal Periyodu")
wt_n2 = input(21, title="Averaj Uzunluğu")
src = close

// Tarih Aralığı Girdileri
startDate = input(20200101, title="Başlangıç Tarihi (YYYYMMDD)")
endDate = input(20201231, title="Bitiş Tarihi (YYYYMMDD)")

// Tarih Filtresi Fonksiyonu
isDateInRange() => true
// Özel Fonksiyonlar
Var_Func(src, length) =>
    valpha = 2 / (length + 1)
    vud1 = src > src[1] ? src - src[1] : 0
    vdd1 = src < src[1] ? src[1] - src : 0
    vUD = sum(vud1, length)
    vDD = sum(vdd1, length)
    vCMO = (vUD - vDD) / (vUD + vDD)
    varResult = 0.0
    varResult := nz(valpha * abs(vCMO) * src + (1 - valpha * abs(vCMO)) * nz(varResult[1]))
    varResult

Wwma_Func(src, length) =>
    wwalpha = 1 / length
    wwma = 0.0
    wwma := wwalpha * src + (1 - wwalpha) * nz(wwma[1])
    wwma

Zlema_Func(src, length) =>
    zxLag = floor(length / 2)
    zxEMAData = src + (src - src[zxLag])
    zlema = ema(zxEMAData, length)
    zlema

Tsf_Func(src, length) =>
    lrc = linreg(src, length, 0)
    lrs = lrc - linreg(src, length, 1)
    tsf = lrc + lrs
    tsf

getMA(src, length) =>
    ma = mav == "SMA" ? sma(src, length) :
         mav == "EMA" ? ema(src, length) :
         mav == "WMA" ? wma(src, length) :
         mav == "TMA" ? sma(sma(src, ceil(length / 2)), floor(length / 2) + 1) :
         mav == "VAR" ? Var_Func(src, length) :
         mav == "WWMA" ? Wwma_Func(src, length) :
         mav == "ZLEMA" ? Zlema_Func(src, length) :
         mav == "TSF" ? Tsf_Func(src, length) : na

// Strateji Hesaplamaları
MAvg = getMA(src, length)
fark = MAvg * percent * 0.01
longStop = MAvg - fark
longStopPrev = nz(longStop[1], longStop)
longStop := MAvg > longStopPrev ? max(longStop, longStopPrev) : longStop
shortStop = MAvg + fark
shortStopPrev = nz(shortStop[1], shortStop)
shortStop := MAvg < shortStopPrev ? min(shortStop, shortStopPrev) : shortStop

dir = 1
dir := nz(dir[1], dir)
dir := dir == -1 and MAvg > shortStopPrev ? 1 : dir == 1 and MAvg < longStopPrev ? -1 : dir
MT = dir==1 ? longStop: shortStop
OTT = MAvg > MT ? MT*(200+percent)/200 : MT*(200-percent)/200

plot(OTT, title="BugRA", color=color.rgb(251, 126, 9))

// Alım ve Satım Koşulları
longCondition = crossover(src, OTT) and isDateInRange()
shortCondition = crossunder(src, OTT) and isDateInRange()

// Strateji Giriş ve Çıkış Emirleri
if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.close("Long")