
Die Strategie ist eine Handelsstrategie, die auf doppelten Moving Averages basiert. Sie führt Gold- und Dead-Fork-Operationen auf zwei langen und tiefen Moving Averages durch, die vom Benutzer festgelegt werden, d.h. es wird ein Handelssignal ausgegeben, wenn ein schneller Moving Average einen schnellen Moving Average überschreitet oder unterschreitet. Wenn ein schneller MA einen schnellen MA überschreitet, macht man mehr; wenn ein schneller MA einen schnellen MA unterschreitet, macht man leer.
Die Kernlogik der Strategie basiert auf dem Querprinzip der doppelten Moving Averages. Was ein Moving Average ist, ist der Durchschnittspreis, der durch den Abschlusskurs in einem bestimmten Zeitrahmen als arithmetischer Durchschnitt erzielt wird.
Kurzzeit-MA ist ein kurzfristiger Trend der Preise, langfristige MA ist ein langfristiger Trend der Preise. Kurzzeit-MA ist empfindlicher für Preisänderungen als langfristige MA und kann die Preisumkehr schneller erfassen.
Insbesondere berechnet die Strategie den einfachen Moving Average für die angegebene Periode mit ta.sma und nutzt diesen als Handelssignal. Der Benutzer kann zwei MA-Parameter, die Long-Periode long_period und die Short-Periode short_period, benutzen. Die Strategie verwendet ta.crossover und ta.crossunder, um das Gold-Cross und das Dead-Cross des MA zu beurteilen.
Die Strategie hat folgende Vorteile:
Die Strategie birgt auch einige Risiken:
Die oben genannten Risiken können optimiert werden, indem die MA-Parameter angepasst, eine Stop-Loss-Stop-Lösung eingestellt oder andere Indikatoren kombiniert werden.
Die Strategie kann in folgenden Bereichen optimiert werden:
Die Strategie als Ganzes eignet sich hervorragend als Einstiegsstrategie für den Quantifizierungshandel. Sie benötigt nur einfache Doppel-MA-Parameter, die funktionieren, einfach zu bedienen und leicht zu verstehen sind und die Marktreversionen intuitiv widerspiegeln können. Die Strategie bietet jedoch einen großen Optimierungsraum und kann die Parameter anpassen oder andere Logiken hinzufügen, um nach tatsächlichen Bedürfnissen zu verbessern.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Cross 2 Moving Average Strategy", shorttitle="2MA Cross", overlay=true)
// User-defined input for moving averages
long_period = input(20, title="Long Period")
short_period = input(5, title="Short Period")
type_ma = input.string("SMA", title = "MA type", options = ["SMA", "EMA"])
// Calculating moving averages
long_ma = ta.sma(close, long_period)
short_ma = ta.sma(close, short_period)
// Plot moving averages
plot(long_ma, title="Long Moving Average", color=color.red)
plot(short_ma, title="Short Moving Average", color=color.green)
// Strategy logic for crossing of moving averages
longCondition = ta.crossover(short_ma, long_ma)
shortCondition = ta.crossunder(short_ma, long_ma)
// Entry orders
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
// Optional: Add stop loss and take profit
stop_loss_perc = input(1, title="Stop Loss (%)") / 100
take_profit_perc = input(2, title="Take Profit (%)") / 100
strategy.exit("Exit Long", from_entry="Long", stop=close*(1-stop_loss_perc), limit=close*(1+take_profit_perc))
strategy.exit("Exit Short", from_entry="Short", stop=close*(1+stop_loss_perc), limit=close*(1-take_profit_perc))