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.
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.
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:
Die Strategie der Doppeldynamik-Linienhandel beinhaltet auch einige Risiken, die sich auf folgende Aspekte konzentrieren:
Die wichtigsten Maßnahmen sind:
Es gibt noch Raum für weitere Optimierungen bei der Strategie für den Dual Dynamic Energy Linear Trading:
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.
/*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")