Die Strategie ermittelt die Richtung des aktuellen Trends durch die Berechnung von Moving Averages und Standard Differenz CHANNELs, um eine dynamische Auf- und Abwärtsbahn zu bilden und die Mittelwerte der höchsten und niedrigsten Preise zu kombinieren, um eine mittlere Bahn zu bilden. Die Strategie tritt auf, wenn der Preis eine Aufwärtsbahn durchbricht und bei einem Absturz nach unten geht.
Die Gesamtkonzeption der Strategie ist klar und verständlich. Durch die dynamische Channel-Erfassung von Trends und die Erzeugung von Handelssignalen in Kombination mit mehreren Mittelschienen können Trends effektiv verfolgt werden, um bessere Handelsrenditen zu erzielen. In der praktischen Anwendung müssen die Stop-Loss-Strategie, das Geldmanagement und die Optimierung für die Parameter berücksichtigt werden, um langfristige stabile Gewinne zu erzielen.
/*backtest
start: 2023-09-10 00:00:00
end: 2023-10-10 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © ErdemDemir
//@version=4
strategy("Lawyers Trend Pro Strategy", shorttitle="Lawyers Trend Pro Strategy", overlay=true)
src = close
mult = 2.0
basis = sma(src, 20)
dev = mult * stdev(src, 20)
upper = basis + dev
lower = basis - dev
offset = 0
lower2 = lowest(20)
upper2 = highest(20)
basis2 = avg(upper2, lower2)
MB= (basis+basis2)/2
col1=close>MB
col3=MB>close
colorE = col1 ? color.blue : col3 ? color.red : color.yellow
p3=plot(MB, color=colorE, linewidth=3)
// Deternine if we are currently LONG
isLong = false
isLong := nz(isLong[1], false)
// Determine if we are currently SHORT
isShort = false
isShort := nz(isShort[1], false)
// Buy only if the buy signal is triggered and we are not already long
buySignal = not isLong and crossover(close,MB)
// Sell only if the sell signal is triggered and we are not already short
sellSignal= not isShort and crossover(MB,close)
if (buySignal)
isLong := true
isShort := false
if (sellSignal)
isLong := false
isShort := true
/// LONG
strategy.entry("long", true , when = buySignal, comment="Open Long")
strategy.close("long", when=sellSignal, comment = "Close Long")
/// SHORT
strategy.entry("short", false, when = sellSignal, comment="Open Short")
strategy.close("short", when=buySignal, comment = "Close Short")