Die Strategie ermöglicht eine genaue Beurteilung von Trends durch die Kombination von zwei Hull Moving Averages, Capacity-Weighted Moving Averages, MACDs und True Strength Indicators. Sie ist in der Lage, sich automatisch an veränderte Marktbedingungen anzupassen und hat eine starke Anpassungsfähigkeit.
Der Kern der Strategie ist der Doppel-Hull-Moving-Average, der durch die beiden Parameter Keh und Teh kontrolliert wird. Diese beiden Parameter bestimmen die Periodizität der schnellen und der langsamen Linie.
Der Capacity-Weighted Moving Average meh1 wird als bullish bezeichnet, wenn der Preis über meh1 liegt, und als bearish, wenn der Preis unter meh1 liegt.
Ein weiterer Hilfsmechanismus ist der MACD. Es wird der MACD durch den schnellen Moving Average minus den langsamen Moving Average ermittelt, der MACD wird dann mit dem Moving Average des MACD ermittelt.
Ein letzter Hilfsindikator für die Beurteilung ist der TSI, der durch eine doppelte Gleitberechnung der Preisänderungsrate gewonnen wird. Die Größe seines absoluten Wertes repräsentiert die Dynamik der Preisänderung. In den Kauf- und Verkaufskonditionen wird der TSI-Signalstrahl beurteilt und die Zeit der Ein- und Ausgänge kontrolliert.
Durch die Kombination dieser Indikatoren können Trends exakt beurteilt und die Parameter automatisch angepasst werden, um mit dem Markt synchron zu sein.
Die Verwendung des Dual-Hull-Moving-Averages als primärer Indikator, ergänzt durch eine Kombination aus mehreren anderen Indikatoren, kann die Richtigkeit der Beurteilung verbessern und die Falschsignale reduzieren.
Die Anwendung der TSI-Indikatoren kann die Ein- und Ausstiegszeiten bestimmen und die Risiken kontrollieren.
Viele Parameter können selbst angepasst werden, sind anpassungsfähig und können automatisch an Marktveränderungen angepasst werden.
Die Anpassung der Kombination von Indikatoren und Parametern ermöglicht eine gute Strategie-Stabilität und eine hohe kontinuierliche Profitabilität.
Obwohl der TSI-Indikator zur Beurteilung der Zeit hinzugefügt wurde, ist der Indikator, den der Algorithmus verwendet, ein Trendtyp, der bei einem wackligen Pump-Markt die Schwankungen von Gewinn und Verlust erhöht.
Die falsche Einstellung der Parameter kann dazu führen, dass die Strategie fehlschlägt. Die Einstellung der Parameter muss nach eigener Erfahrung vernünftig sein.
Mehrfache Portfolios erhöhen die Berechnungsmenge und erhöhen die Wahrscheinlichkeit von Fehlern bei großen Aktien und Zeitabschnitten, was die Kontrolle des Datenbereichs erfordert.
Die Berechnungswirksamkeit der Indikatoren muss überwacht werden, um Störungen durch außergewöhnliche Daten zu verhindern.
Tests können zusätzliche Hilfsindikatoren, wie BOLL-Indikatoren, hinzufügen, um das Signal genauer und zuverlässiger zu machen.
Optimierung der Marktein- und Marktaustrittslogik, Einstellung von Stop-Loss-Bedingungen und Kontrolle von Einzelschäden.
Trainieren und optimieren Sie die Parameter der Handelsarten, um sie besser an die verschiedenen Arten anzupassen.
Das Modul zur Anpassung der Parameter wurde hinzugefügt, so dass die Strategieparameter automatisch an die Auswirkungen der letzten Transaktionen angepasst werden können.
Die Strategie integriert die Vorteile verschiedener Indikatoren, nutzt eine Kombination von Indikatoren, um die Richtung der Tendenz zu bestimmen und die Richtigkeit der Beurteilung zu verbessern, während die Risiken kontrolliert werden. Durch die Optimierung der Parameter und die Optimierung der Logik kann die Strategie besser an Marktveränderungen angepasst werden, um auf der Grundlage der Verringerung von Verlusten in Folge mehr Gewinn zu erzielen. Die Strategie ist stabil und kann auf lange Sicht in Varianten wie Aktien und Kryptowährungen angewendet werden.
/*backtest
start: 2023-11-18 00:00:00
end: 2023-12-18 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
// Quad-HullMA-cross & VWMA & MacD & TSI combination <<<<< by SeaSide420 >>>>>>
strategy("MultiCross420", overlay=true, calc_on_order_fills= true, calc_on_every_tick=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, pyramiding=0)
keh=input(title="Double HullMA 1",defval=7, minval=1)
teh=input(title="Double HullMA 2",defval=14, minval=1)
meh=input(title="VWMA",defval=1, minval=1)
meh1=vwma(close,round(meh))
n2ma=2*wma(close,round(keh/2))
nma=wma(close,keh)
diff=n2ma-nma,sqn=round(sqrt(keh))
n2ma1=2*wma(close[2],round(keh/2))
nma1=wma(close[2],keh)
diff1=n2ma1-nma1,sqn1=round(sqrt(keh))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
b=n1>n2?lime:red
c=n1>n2?green:red
n2ma3=2*wma(close,round(teh/2))
nma2=wma(close,teh)
diff2=n2ma3-nma2,sqn2=round(sqrt(teh))
n2ma4=2*wma(close[2],round(teh/2))
nma3=wma(close[2],teh)
diff3=n2ma4-nma3,sqn3=round(sqrt(teh))
n3=wma(diff2,sqn2)
n4=wma(diff3,sqn3)
fastLength = input(title="MacD fastLength", defval=7)
slowlength = input(title="MacD slowlength", defval=14)
MACDLength = input(title="MacD Length", defval=3)
MACD = ema(close, fastLength) - ema(close, slowlength)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD
a1=plot(n1,color=c),a2=plot(n2,color=c)
plot(cross(n1, n2) ? n1 : na, style = cross, color=b, linewidth = 3)
a3=plot(n3,color=c),a4=plot(n4,color=c)
plot(cross(n3, n4) ? n1 : na, style = cross, color=b, linewidth = 3)
//a5=plot(meh1,color=c)
long = input(title="TSI Long Length", defval=5)
short = input(title="TSI Short Length", defval=3)
signal = input(title="TSI Signal Length", defval=2)
linebuy = input(title="TSI Upper Line", defval=4)
linesell = input(title="TSI Lower Line", defval=-4)
price = close
double_smooth(src, long, short) =>
fist_smooth = ema(src, long)
ema(fist_smooth, short)
pc = change(price)
double_smoothed_pc = double_smooth(pc, long, short)
double_smoothed_abs_pc = double_smooth(abs(pc), long, short)
tsi_value = 100 * (double_smoothed_pc / double_smoothed_abs_pc)
closelong = n1<n2 and n3<n4 and n1>meh1
if (closelong)
strategy.close("Long")
closeshort = n1>n2 and n3>n4 and n1<meh1
if (closeshort)
strategy.close("Short")
longCondition = strategy.opentrades<1 and n1>n2 and MACD>aMACD and n1<meh1 and n3>n4 and ema(tsi_value, signal)>linesell
if (longCondition)
strategy.entry("Long",strategy.long)
shortCondition = strategy.opentrades<1 and n1<n2 and MACD<aMACD and n1>meh1 and n3<n4 and ema(tsi_value, signal)<linebuy
if (shortCondition)
strategy.entry("Short",strategy.short)