
Diese Strategie verwendet die Kombination von zwei Moving Averages und RSI-Indikatoren, um eine Multi-Bohr-Cross-Trading-Strategie zu erstellen. Diese Strategie kann die mittleren und langen Trends erfassen und gleichzeitig unnötige Schwankungen mit den kurzen Indikatoren vermeiden.
Die Strategie verwendet zwei Arten von Moving Averages, nämlich schnelle Moving Averages (EMA 59 und EMA 82) und langsame Moving Averages (EMA 96 und EMA 95) . Wenn der Preis den schnellen Moving Average von unten nach oben überschreitet, macht man einen Plus; wenn der Preis den schnellen Moving Average von oben nach unten überschreitet, macht man einen Minus.
Konkret wird ein Mehrkopfsignal erzeugt, wenn ein schneller EMA aufwärts durch den langsamen EMA bricht. Wenn der RSI unter 30 liegt (Überverkaufszone), wird ein Mehrkopf-Eintritt durchgeführt. Wenn ein schneller EMA nach unten fällt und den langsamen EMA überschreitet, wird ein Hohlkopfsignal erzeugt.
Der Vorteil der Verwendung von Doppel-Moving-Averages besteht darin, dass die Veränderungen in den mittleren und langen Trends besser erkannt werden können. Der RSI-Indikator kann den Lärm des Handels durch einige falsche Durchbrüche filtern.
Diese Strategie integriert die Tendenz der doppelten Moving Averages und folgt dem Umkehrhandel mit dem RSI-Indikator. Die doppelte EMA verfolgt die Richtung der mittleren langen Tendenz, wobei der RSI zur Bestätigung der Wirksamkeit von Handelssignalen und zum Stoppen von Verlusten verwendet wird. Es ist eine einfache, praktische, mehrsprachige Crossover-Strategie, die durch Parameteranpassung und -optimierung an verschiedene Marktumgebungen angepasst werden kann.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Swing Hull/rsi/EMA Strategy", overlay=true,default_qty_type=strategy.cash,default_qty_value=10000,scale=true,initial_capital=10000,currency=currency.USD)
//A Swing trading strategy that use a combination of indicators, rsi for target, hull for overall direction enad ema for entering the martket.
// hull ma copied from syrowof HullMA who copied from mohamed982 :) thanks both
// Performance
n=input(title="period",defval=500)
n2ma=2*wma(close,round(n/2))
nma=wma(close,n)
diff=n2ma-nma
sqn=round(sqrt(n))
n2ma1=2*wma(close[1],round(n/2))
nma1=wma(close[1],n)
diff1=n2ma1-nma1
sqn1=round(sqrt(n))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
c=n1>n2?green:red
ma=plot(n1,color=c)
// RSi and Moving averages
length = input( 14 )
overSold = input( 70)
overBought = input( 30)
point = 0.0001
dev= 2
fastLength = input(59)
fastLengthL = input(82)
slowLength = input(96)
slowLengthL = input(95)
price = close
mafast = ema(price, fastLength)
mafastL= ema(price, fastLengthL)
maslow = ema(price, slowLength)
maslowL = ema(price, slowLengthL)
vrsi = rsi(price, length)
cShort = (crossunder(vrsi, overBought))
condDown = n2 >= n1
condUp = condDown != true
closeLong = (crossover(vrsi, overSold))
closeShort = cShort
// Strategy Logic
longCondition = n1> n2
shortCondition = longCondition != true
col =condUp ? lime : condDown ? red : yellow
plot(n1,color=col,linewidth=3)
if (not na(vrsi))
if shortCondition
if (price[0] < maslow[0] and price[1] > mafast[1]) //cross entry
strategy.entry("SYS-SHORT", strategy.short, comment="short")
strategy.close("SYS-SHORT", when=closeShort) //output logic
if (not na(vrsi))
if longCondition // swing condition
if (price[0] < mafast[0] and price[1] > mafast[1]) //cross entry
strategy.entry("SYS-LONG", strategy.long, comment="long")
strategy.close("SYS-LONG", when=closeLong) //output logic
// Stop Loss
sl = input(75)
Stop = sl * 10
Q = 100
strategy.exit("Out Long", "SYS-LONG", qty_percent=Q, loss=Stop)
strategy.exit("Out Short", "SYS-SHORT", qty_percent=Q, loss=Stop)
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)