
Diese Strategie kombiniert die Vorteile des Hull Moving Averages und des T3 Moving Averages, um eine Strategie für den Handel zwischen den Städten zu entwickeln. Diese Strategie kann sowohl für den Kurz- als auch für den Trend im Mittel- und Langstrecken verwendet werden. Durch die Berechnung des Mittelwerts des Hull Moving Averages und des T3 Moving Averages als Haupthandelssignallinie können die Ein- und Ausstiegszeiten anhand der Änderung ihrer Richtung beurteilt werden.
Die Strategie basiert hauptsächlich auf der Berechnung des Hull Moving Averages und des T3 Moving Averages.
Der Hull Moving Average (HMA) wirkt durch die Implementierung von gewichteten Moving Averages, die den Marktgeräuschen ausweiten, um eine glatte Kurve der Preisentwicklung zu zeigen. Er ist empfindlicher auf Preisänderungen als einfache Moving Averages und Index Moving Averages, und wirkt gleichzeitig auch effektiv, um falsche Durchbrüche zu unterdrücken.
Der T3-Moving Average kann durch eine gewisse Hyperparameter-Anpassung näher an den Preis gebracht werden, während die Lagerungseffekte verringert werden. Er kann schneller auf Preisänderungen reagieren, indem er mehrere Indizes reibungslos berechnet.
Die Strategie berechnet den Mittelwert der beiden als primären Handelsindikator. Der Zeitpunkt des Eintritts wird anhand der Richtung des Mittelwerts bestimmt: Eintrittssignal für mehrere Köpfe, wenn der Mittelwert der aktuellen Periode höher ist als der des vorherigen Zyklus; Eintrittssignal für leere Köpfe, wenn der Mittelwert der aktuellen Periode niedriger ist als der des vorherigen Zyklus.
Bei den Ausstiegsregeln tritt man aus, wenn der Preis den Stop-Loss-Punkt überschreitet oder den Stop-Out-Punkt erreicht.
Die Strategie kombiniert die Vorzüge des Hull Moving Average und des T3 Moving Average, um sowohl eine glatte Ablenkung als auch eine schnelle Reaktion auf Preisänderungen zu erzeugen, wodurch ein umfassender Indikator erzeugt wird. Zweitens ist die Strategie sowohl für Shortline- als auch für Medium-Longline-Handel geeignet. Durch Anpassung der berechneten Zyklusparameter kann der entsprechende Zyklushandel flexibel angepasst werden.
Die Strategie beruht hauptsächlich auf den Gleichgewichtsindikatoren, die mehrere Falschsignale in einem schwankenden Trend erzeugen können. Außerdem hat die Gleichgewichtslinie eine gewisse Verzögerung und kann den optimalen Einstiegspunkt für die Preisveränderung verpassen. Die Einstellung eines Stop-Loss-Stopp-Points sollte mit Vorsicht erfolgen, um zu locker oder zu dringend zu sein.
Es können zusätzliche Hilfsindikatoren, wie z. B. Schwächen, Schwankungen usw. in Betracht gezogen werden, um ein Gleichgewichtssignal zu verifizieren und falsche Signale zu filtern. Es können verschiedene Gleichgewichtskombinationen und Gewichtsalgorithmen getestet werden, um die Wirksamkeit der Erzeugung eines Gleichgewichtssignals zu optimieren.
Diese Strategie integriert die Vorteile des Hull Moving Averages und des T3 Moving Averages zu einem Gesamtindikator, um die Richtung des Trends zu bestimmen. Durch die Optimierung der Parameter kann die Strategie flexibel auf verschiedene Handelszyklen angewendet werden. Die Strategie hat einige Vorteile, aber es gibt auch Probleme mit dem Rückstand, der falsche Signale erzeugt. Durch die Zugabe anderer Hilfsindikatoren, Optimierungsparameter und dynamischer Stop-Loss-Stopps können die Strategien kontinuierlich optimiert werden, um bessere Ergebnisse zu erzielen.
/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 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/
// © exlux99
//@version=4
strategy(title="Swing HULL + T3 avg", shorttitle="Swing HULL T3 AVG", overlay=true)
fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2000, title = "From Year", minval = 1970)
//monday and session
// To Date Inputs
toDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
toYear = input(defval = 2021, title = "To Year", minval = 1970)
startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true
////////////////////////////GENERAL INPUTS//////////////////////////////////////
length_Ma= input(defval=50, title="Length MAs", minval=1)
//==========HMA
getHULLMA(src, len) =>
hullma = wma(2*wma(src, len/2)-wma(src, len), round(sqrt(len)))
hullma
//==========T3
getT3(src, len, vFactor) =>
ema1 = ema(src, len)
ema2 = ema(ema1,len)
ema3 = ema(ema2,len)
ema4 = ema(ema3,len)
ema5 = ema(ema4,len)
ema6 = ema(ema5,len)
c1 = -1 * pow(vFactor,3)
c2 = 3*pow(vFactor,2) + 3*pow(vFactor,3)
c3 = -6*pow(vFactor,2) - 3*vFactor - 3*pow(vFactor,3)
c4 = 1 + 3*vFactor + pow(vFactor,3) + 3*pow(vFactor,2)
T3 = c1*ema6 + c2*ema5 + c3*ema4 + c4*ema3
T3
hullma = getHULLMA(close,length_Ma)
t3 = getT3(close,length_Ma,0.7)
avg = (hullma+t3) /2
////////////////////////////PLOTTING////////////////////////////////////////////
colorado = avg > avg[1]? color.green : color.red
plot(avg , title="avg", color=colorado, linewidth = 4)
long=avg>avg[1]
short=avg<avg[1]
tplong=input(0.08, title="TP Long", step=0.01)
sllong=input(1.0, title="SL Long", step=0.01)
tpshort=input(0.03, title="TP Short", step=0.01)
slshort=input(0.06, title="SL Short", step=0.01)
if(time_cond)
strategy.entry("long",1,when=long)
strategy.exit("closelong", "long" , profit = close * tplong / syminfo.mintick, loss = close * sllong / syminfo.mintick, alert_message = "closelong")
strategy.entry("short",0,when=short)
strategy.exit("closeshort", "short" , profit = close * tpshort / syminfo.mintick, loss = close * slshort / syminfo.mintick, alert_message = "closeshort")