
Die Alpha-Trend-Stop-Strategie basiert auf der Alpha-Trend-Strategie und bietet einen Tracking-Stop-Mechanismus, der die Risiken effektiver steuert und die Gesamtrendite erhöht.
Die Strategie verwendet zunächst den Alpha-Indikator, um die Preisentwicklung zu bestimmen. Wenn der Alpha-Indikator steigt, ist dies ein bullish Signal, wenn der Alpha-Indikator fällt, ist dies ein bearish Signal. Die Strategie erzeugt Kauf- und Verkaufssignale basierend auf dem Gold- und Todesvorhang des Alpha-Indikators.
Die Strategie aktiviert außerdem einen Stop-Loss-Mechanismus. Der Stop-Loss-Wert ist 10% des Schlusskurses des Tages. Wenn ein Mehrheits-Position gehalten wird, wird ein Stop-Loss-Exit durchgeführt, wenn der Preis über den Stop-Loss-Wert fällt.
Die Alpha-Trends haben eine bessere Fähigkeit, die Preisentwicklung zu bestimmen, als Indikatoren wie der durchschnittliche Moving Average.
Ein Tracking-Stop-Mechanismus kann einzelne Verluste effektiv kontrollieren und Risiken verringern.
Die Strategie hat eine starke Risikokontrolle, um Verluste zu minimieren, auch wenn die Situation ungünstig ist.
Die Strategie hat weniger Referenzen, ist hochrechenfähig und eignet sich für hochfrequente Transaktionen.
Die Strategie erzeugt bei einer horizontalen Anpassung mehr unnötige Handelssignale, was zu erhöhten Handelskosten und Verlusten bei Schlupfpunkten führt.
Wenn Sie den Stop-Loss-Tracking aktivieren, müssen Sie einen angemessenen Stop-Loss-Ratio festlegen.
Wenn der Preis der Marke stark schwankt, ist die Wahrscheinlichkeit, dass ein Stop-Loss ausgelöst wird, höher und erhöht das Risiko einer Gefängnisstrafe.
Die Optimierung von Stop-Loss-Parametern erfordert die Einbeziehung verschiedener Faktoren, wie z. B. der Eigenschaften der Kennziffer, der Häufigkeit der Transaktionen, und kann nicht nur auf die Maximierung der Gewinne ausgerichtet werden.
Die oben genannten Risiken können durch Anpassung der Parameter des Alpha-Indikators, Einstellung von DYNAMIC-Stopps und Verkürzung der Handelszyklen gemildert werden.
Verschiedene Indexparameter können getestet werden, um die geeignetste Kombination von Alpha Indexparametern zu finden.
Versuchen Sie, die Stop-Loss-Marge auf Basis der ATR-Dynamik zu setzen, damit sie besser auf Marktschwankungen reagieren kann.
In Kombination mit anderen Indikatoren, wie MACD, KD, kann ein falsches Signal gefiltert werden.
Die Optimierung von Parametern auf Basis von Echtzeit- und Rückmessergebnissen und die Optimierung der Parameterwahl mit Hilfe von Technologien wie maschinellem Lernen.
Die Trend-Tracking-Stopp-Strategie Alpha kombiniert Trendbeurteilung und Risikokontrolle, um die Preisentwicklung effektiv zu ermitteln und die Gewinne zu lockern, um das Risiko zu senken. Im Vergleich zu einer einfachen Trend-Tracking-Strategie kann diese Strategie einen höheren stabilen Ertrag erzielen. Durch mehrfache Optimierung wird eine bessere Leistung erwartet.
/*backtest
start: 2023-10-27 00:00:00
end: 2023-11-26 00:00:00
period: 1h
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/
// author © KivancOzbilgic
// developer © KivancOzbilgic
//@version=5
strategy("AlphaTrend Strategy", shorttitle='ATst', overlay=true, format=format.price, precision=2, margin_long=100, margin_short=100)
coeff = input.float(1, 'Multiplier', step=0.1)
AP = input(14, 'Common Period')
ATR = ta.sma(ta.tr, AP)
src = input(close)
showsignalsk = input(title='Show Signals?', defval=false)
novolumedata = input(title='Change calculation (no volume data)?', defval=false)
upT = low - ATR * coeff
downT = high + ATR * coeff
AlphaTrend = 0.0
AlphaTrend := (novolumedata ? ta.rsi(src, AP) >= 50 : ta.mfi(hlc3, AP) >= 50) ? upT < nz(AlphaTrend[1]) ? nz(AlphaTrend[1]) : upT : downT > nz(AlphaTrend[1]) ? nz(AlphaTrend[1]) : downT
color1 = AlphaTrend > AlphaTrend[1] ? #00E60F : AlphaTrend < AlphaTrend[1] ? #80000B : AlphaTrend[1] > AlphaTrend[3] ? #00E60F : #80000B
k1 = plot(AlphaTrend, color=color.new(#0022FC, 0), linewidth=3)
k2 = plot(AlphaTrend[2], color=color.new(#FC0400, 0), linewidth=3)
fill(k1, k2, color=color1)
buySignalk = ta.crossover(AlphaTrend, AlphaTrend[2])
sellSignalk = ta.crossunder(AlphaTrend, AlphaTrend[2])
K1 = ta.barssince(buySignalk)
K2 = ta.barssince(sellSignalk)
O1 = ta.barssince(buySignalk[1])
O2 = ta.barssince(sellSignalk[1])
plotshape(buySignalk and showsignalsk and O1 > K2 ? AlphaTrend[2] * 0.9999 : na, title='BUY', text='BUY', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(#0022FC, 0), textcolor=color.new(color.white, 0))
plotshape(sellSignalk and showsignalsk and O2 > K1 ? AlphaTrend[2] * 1.0001 : na, title='SELL', text='SELL', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.maroon, 0), textcolor=color.new(color.white, 0))
// //ENTER SOME SETUP TRADES FOR TSL EXAMPLE
// longCondition = ta.crossover(ta.sma(close, 10), ta.sma(close, 20))
// if longCondition
// strategy.entry('My Long Entry Id', strategy.long)
// shortCondition = ta.crossunder(ta.sma(close, 10), ta.sma(close, 20))
// if shortCondition
// strategy.entry('My Short Entry Id', strategy.short)
longCondition = buySignalk
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = sellSignalk
if (shortCondition)
strategy.entry("Short", strategy.short)
enableTrailing = input.bool(title='Enable Trailing Stop (%)',defval = true)
//TRAILING STOP CODE
trailStop = input.float(title='Trailing (%)', minval=0.0, step=0.1, defval=10) * 0.01
longStopPrice = 0.0
shortStopPrice = 0.0
longStopPrice := if strategy.position_size > 0
stopValue = close * (1 - trailStop)
math.max(stopValue, longStopPrice[1])
else
0
shortStopPrice := if strategy.position_size < 0
stopValue = close * (1 + trailStop)
math.min(stopValue, shortStopPrice[1])
else
999999
//PLOT TSL LINES
plot(series=strategy.position_size > 0 ? longStopPrice : na, color=color.new(color.red, 0), style=plot.style_linebr, linewidth=1, title='Long Trail Stop', offset=1, title='Long Trail Stop')
plot(series=strategy.position_size < 0 ? shortStopPrice : na, color=color.new(color.red, 0), style=plot.style_linebr, linewidth=1, title='Short Trail Stop', offset=1, title='Short Trail Stop')
if enableTrailing
//EXIT TRADE @ TSL
if strategy.position_size > 0
strategy.exit(id='Close Long', stop=longStopPrice)
if strategy.position_size < 0
strategy.exit(id='Close Short', stop=shortStopPrice)