
Die Strategie ist ein Trend-Tracking-Trading-System, das eine Kombination aus dem Donchian-Kanal und dem 200-Zyklus-SMA kombiniert. Die Strategie identifiziert potenzielle Über- und Verlustmöglichkeiten, indem sie die Auf- und Abwärtsbahnen der Donchian-Kanal beobachtet und die SMA-Bewegung kombiniert. Die Strategie hat auch einen dynamischen Stop-Loss-Mechanismus entwickelt, der auf der Mittellinie des Kanals basiert, um das Risiko zu kontrollieren.
Die Kernlogik der Strategie basiert auf den folgenden Schlüsselelementen:
Vorschläge zur Risikokontrolle:
Signaloptimierung:
Stop Loss Optimierung:
Positionsmanagement optimiert:
Zeitoptimierung:
Die Strategie kombiniert die klassische Tongan-Kanal mit den Moving Average-Indikatoren und baut ein logisch klares, risikokontrollierbares Trend-Tracking-System auf. Die Hauptvorteile der Strategie liegen in der Signalklarheit und der Risikokontrolle, die jedoch in einem wackligen Markt schlechter abschneiden kann. Durch die Hinzufügung von Umsatzbestätigung, Optimierung von Stop-Loss-Mechanismen und die Einführung von dynamischem Positionsmanagement gibt es noch viel Optimierungsraum.
/*backtest
start: 2024-02-21 00:00:00
end: 2024-03-18 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"SOL_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © ardhankurniawan
//@version=5
strategy("Donchian Channel Strategy with SMA 200 and Custom SL", overlay=true)
// Parameters
length = 20
smaLength = 200 // Changed SMA to 200
// Calculate Donchian Channel
upper = ta.highest(high, length)
lower = ta.lowest(low, length)
mid = (upper + lower) / 2 // Mid Line
// Calculate SMA 200
sma200 = ta.sma(close, smaLength)
// Plot Donchian Channel, SMA 200, and Mid Line
plot(upper, color=color.green, linewidth=2, title="Upper Line")
plot(lower, color=color.red, linewidth=2, title="Lower Line")
plot(mid, color=color.orange, linewidth=1, title="Mid Line")
plot(sma200, color=color.blue, linewidth=2, title="SMA 200")
// Long and Short logic based on SMA 200
longCondition = upper > ta.highest(upper[1], length) and close > sma200
shortCondition = lower < ta.lowest(lower[1], length) and close < sma200
// Calculate Stop Loss for Long and Short based on new conditions
longSL = mid - 0.45 * (mid - lower) // SL for Long when price crosses down mid line
shortSL = mid + 0.45 * (upper - mid) // SL for Short when price crosses up mid line
// Enter Long or Short position
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
// Place Stop Loss
strategy.exit("Exit Long", from_entry="Long", stop=longSL)
strategy.exit("Exit Short", from_entry="Short", stop=shortSL)