
Die Dual Donchian Channel Breakout Strategy ist eine Breakout-Trading-Strategie, die auf den Donchian-Kanälen basiert. Sie nutzt die beiden Donchian-Kanäle, die schnell und langsam sind, um ein Mehrkopf- und Leerkopf-Trading-Signal zu erzeugen. Die Strategie setzt gleichzeitig Stopp- und Stop-Loss-Bedingungen.
Die Dual-Donchian-Channel-Breakthrough-Strategie basiert auf zwei Parametern:Langsame Donchian-Kanal-ZyklenUndSchnelle Donchian-Kanal-ZyklenDie Strategie beginnt mit der Berechnung der Ober- und Unterbahnen der beiden Donchian-Kanäle.
Das Eintrittssignal istDie Preise gehen auf HochtourenUndDie Schwankungen überschreiten den Wert.Das Flugzeug wird von der Luftwaffe mit einer Luftwaffe beschossen.Die Preise sind ausgegangen.UndDie Schwankungen überschreiten den Wert.。
Mehrköpfige Stop-Loss-Plattensignale sind Preise wiederEin Durchbruch│ │ │ │Durchbruch auf der Bahn。
Die Strategie wurde gleichzeitigDas ist ein Zwischenstopp.Ausstiegsbedingungen: Die Default-Einstellung ist, dass der Kurs auf 2% verlagert wird, bis die Hälfte der Positionen auf 2% verlagert ist.
Die Strategie des Durchbruchs durch die Doppel-Donchian-Kanäle hat folgende Vorteile:
Mit einem Dual-Channel-Design kann ein Trendsignal für längere und kürzere Linien erfasst werden, um einen genaueren Einstieg zu ermöglichen.
Die Volatilitätsbedingungen verhindern häufige Transaktionen in den OTC-Märkten.
Die Stop-Loss-Einstellungen sind umfassend, um einen Teil des Gewinns zu sperren oder den Verlust zu reduzieren.
Die Strategie ist klar und einfach zu verstehen und umzusetzen.
Anpassbare Parameter für verschiedene Sorten und Handelspräferenzen.
Die Strategie der Durchbrechung der Doppel-Donchian-Kanäle birgt einige Risiken:
Die Doppelkanalkonstruktion ist empfindlich und kann zu Fehlsignalen führen. Die Kanalreichweite kann entsprechend erweitert oder die Schwankungsrateparameter angepasst werden, um Fehlsignale zu reduzieren.
Der Stopp kann zu häufig ausgelöst werden. Sie können eine Obergrenze für die Anzahl der Transaktionen festlegen oder die Stop-Loss-Grenze erweitern.
Ein Fixed-Ratio-Stop kann nicht maximal die Gewinne lockern. Ein dynamischer Tracking-Stop oder eine künstliche Intervention zur Bestimmung des Stop-Preises können in Betracht gezogen werden.
Die Realität der Festplatte außerhalb der Messung kann nicht mit den Erwartungen übereinstimmen. Die Parameter sollten im Voraus überprüft und gegebenenfalls angepasst werden.
Die Dual-Donchian-Channel-Breakthrough-Strategie kann in folgenden Bereichen optimiert werden:
Versuchen Sie, mehr Kombinationen von Periodenparametern zu testen, um die besten Parameter zu finden.
Versuchen Sie mit verschiedenen Methoden zur Berechnung der Volatilität, wie z. B. ATR, und suchen Sie nach dem stabilsten Parameter.
Setzen Sie ein Limit für die Anzahl der Positionen, um zu vermeiden, dass ein Rückprall am Ende des Trends zu Verlusten führt.
Es ist wichtig zu wissen, dass die Einnahmen aus der Einzahlung von Geld, die von der Einzahlung ausgeht, nicht von der Einzahlung ausgeht.
In Kombination mit anderen Indikatoren filtern Sie die Einstiegssignale und erhöhen die Entscheidungsgenauigkeit.
Optimierte Kapitalmanagementstrategien, wie z.B. Fixed-Equity, Kelly-Formel usw., um eine bessere Risikobetragskontrolle zu gewährleisten.
Die Dual-Donchian-Channel-Breakout-Strategie ist insgesamt eine ausgezeichnete Trend-Tracking-Strategie. Sie kombiniert die Fähigkeit, Trends zu erkennen, mit der Fähigkeit, umgekehrt zu schützen. Durch die Optimierung der Parameter und die Verbesserung der Regeln ist sie in der Lage, sich an die meisten Sorten anzupassen und profitabel in mehreren Märkten zu handeln.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
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/
// © omererkan
//@version=5
strategy(title="Double Donchian Channel Breakout", overlay=true, initial_capital = 1000, commission_value = 0.05, default_qty_value = 100, default_qty_type = strategy.percent_of_equity)
// Donchian Channels
slowLen = input.int(50, title="Slow Donchian", group = "Conditions")
fastLen = input.int(30, title="Fast Donchian", group = "Conditions")
// Volatility Calculated as a percentage
volatility = input.int(3, title="Volatility (%)", group = "Conditions")
// Long positions
long = input.bool(true, "Long Position On/Off", group = "Strategy")
longProfitPerc = input.float(2, title="Long TP1 (%)", group = "Strategy", minval=0.0, step=0.1) * 0.01
// Short positions
short = input.bool(true, "Short Position On/Off", group = "Strategy")
shortProfitPerc = input.float(2, title="Short TP1 (%)", group = "Strategy", minval=0.0, step=0.1) * 0.01
// First take profit point for positions
TP1Yuzde =input.int(50, title = "TP1 Position Amount (%)", group = "Strategy")
// Slow Donchian Calculated
ubSlow = ta.highest(high, slowLen)[1]
lbSlow = ta.lowest(low, slowLen)[1]
// Fast Donchian Calculated
ubFast = ta.highest(high, fastLen)[1]
lbFast = ta.lowest(low, fastLen)[1]
// Plot Donchian Channel for entries
plot(ubSlow, color=color.green, linewidth=2, title="Slow DoCh - Upperband")
plot(lbSlow, color=color.green, linewidth=2, title="Slow DoCh - Lowerband")
plot(ubFast, color=color.blue, linewidth=2, title="Fast DoCh - Upperband")
plot(lbFast, color=color.blue, linewidth=2, title="Fast DoCh - Lowerband")
// This calculation, the strategy does not open position in the horizontal market.
fark = (ubSlow - lbSlow) / lbSlow * 100
// Take profit levels
longExitPrice = strategy.position_avg_price * (1 + longProfitPerc)
shortExitPrice = strategy.position_avg_price * (1 - shortProfitPerc)
// Code long trading conditions
longCondition = ta.crossover(close, ubSlow) and fark > volatility
if longCondition and long == true
strategy.entry("Long", strategy.long)
// Code short trading conditions
shortCondition = ta.crossunder(close, lbSlow) and fark > volatility
if shortCondition and short == true
strategy.entry("Short", strategy.short)
// Determine long trading conditions
if strategy.position_size > 0 and ta.crossunder(close, lbFast)
strategy.close_all("Close All")
// Determine short trading conditions
if strategy.position_size < 0 and ta.crossover(close, ubFast)
strategy.close_all("Close All")
// Take Profit Long
if strategy.position_size > 0
strategy.exit("TP1", "Long", qty_percent = TP1Yuzde, limit = longExitPrice)
// Take Profit Short
if strategy.position_size < 0
strategy.exit("TP1", "Short", qty_percent = TP1Yuzde, limit = shortExitPrice)