Ma-Kreuzung

Schriftsteller:ChaoZhang, Datum: 2023-09-04
Tags:

Die MA-Crossover-Strategie ist eine technische Handelsstrategie, die den gleitenden Durchschnitts-Crossover verwendet, um Handelsmöglichkeiten zu identifizieren.

Die Strategie funktioniert durch die Identifizierung von Kreuzungen zwischen den schnellen und langsamen gleitenden Durchschnitten. Wenn der schnelle gleitende Durchschnitt über den langsamen gleitenden Durchschnitt kreuzt, wird ein Kaufsignal generiert. Wenn der schnelle gleitende Durchschnitt unter dem langsamen gleitenden Durchschnitt kreuzt, wird ein Verkaufssignal generiert.

Die Strategie des MA Crossover ist relativ einfach zu verwenden, kann aber sehr effektiv sein.

Hier sind einige der Vorteile der Anwendung der MA-Crossover-Strategie:

Es ist eine einfach zu bedienende Strategie, die für Trader aller Erfahrungsstufen zugänglich ist. Sie beruht auf soliden technischen Grundsätzen, was bedeutet, dass sie eine hohe Erfolgswahrscheinlichkeit aufweist. Es handelt sich um eine Trendstrategie, was bedeutet, dass sie den Händlern helfen kann, sich an den Trends zu orientieren. Es kann sowohl für den Handel mit Long- als auch mit Short-Positionen verwendet werden, was es zu einer vielseitigen Strategie macht. Hier sind einige der Risiken, die mit der Anwendung der MA-Crossover-Strategie verbunden sind:

Die Strategie basiert auf historischen Preisdaten und es gibt keine Garantie, dass sie in Zukunft rentabel ist. Die Strategie kann anfällig für Whipsaw sein, das ist, wenn sich der Preis eines Vermögenswertes schnell in beide Richtungen bewegt. Die Strategie kann volatile sein, was bedeutet, dass ein Risiko großer Verluste besteht. Insgesamt ist die MA Crossover-Strategie eine relativ einfache und effektive Handelsstrategie, die von Händlern aller Erfahrungsstufen verwendet werden kann.

Hier sind einige weitere Dinge zu beachten, wenn Sie die MA-Crossover-Strategie verwenden:

Die Länge der gleitenden Durchschnitte kann an Ihren Handelsstil und Ihre Risikobereitschaft angepasst werden. Sie können auch mehrere gleitende Durchschnitte verwenden, um eine komplexere Strategie zu erstellen. Es ist wichtig, die Strategie auf historischen Daten zu überprüfen, um sicherzustellen, dass sie profitabel ist, bevor sie für den Live-Handel verwendet wird. Sie sollten auch einen Stop-Loss verwenden, um Ihre Verluste zu begrenzen. Ich hoffe, daß dieser Artikel hilfreich und informativ ist.


/*backtest
start: 2022-08-28 00:00:00
end: 2023-02-10 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":10000}]
*/

//@version=5
strategy("EMA-Cross-JC Intraday with Trailing SL", overlay=true)

// emabasel = input(100, "Base Length")
emaslen = input(15, "Slow Length")
emaflen = input(9, "Fast Length")
intra =input(true, title = "Intraday?")
sq_time_hr = input(15, title="Exit Hr")
sq_time_min = input(20, title="Exit Min")

emaslow = ta.ema(close, emaslen)
emafast = ta.ema(close, emaflen)
// emabase = ta.ema(close, emabasel)

emaup = ta.crossover(emafast, emaslow)
emadown = ta.crossunder(emafast, emaslow)

tsival = ta.tsi(close, 13, 55)

plot(emaslow, title="Slow EMA", color=color.yellow, linewidth=1)
plot(emafast, title="Fast EMA", color=color.green, linewidth=1)
// plot(emabase, title="Base EMA", color=color.white, linewidth=3)

takeProfitPoints = input(200, title="Take Profit")
// tp_off = input(4000, title="Keep trailing")
stopLossPoints = input(100, title="Stop Loss")

// Define the time to square off positions
squareOffTime = timestamp(year, month, dayofmonth, sq_time_hr, sq_time_min)

var float trailingStop = na

if emaup and barstate.isconfirmed and time < squareOffTime //and tsival >=0
    strategy.entry("Buy", strategy.long)
    strategy.exit("Sell", "Buy", stop=close - stopLossPoints, limit=close + takeProfitPoints)
    // trailingStop := emabase - stopLossPoints
    strategy.exit("Trailing Stop", "Buy", stop=trailingStop)

if emadown and barstate.isconfirmed and time < squareOffTime //and tsival <=0
    strategy.entry("Sell", strategy.short)
    strategy.exit("Cover", "Sell", stop=close + stopLossPoints, limit=close - takeProfitPoints)
    // trailingStop := emabase + stopLossPoints
    strategy.exit("Trailing Stop", "Sell", stop=trailingStop)

// Close any open positions before the end of the trading day
if ta.barssince(strategy.opentrades) == 0 and time >= squareOffTime and intra == true
    strategy.close_all()

// plot(tsival, title = "TSI Value")
plotshape(emaup and barstate.isconfirmed, title="Crossover", style = shape.triangleup , size=size.small,color = color.green, location = location.belowbar)
plotshape(emadown and barstate.isconfirmed, title="Crossunder",style = shape.triangledown, size=size.small,color = color.red, location = location.abovebar)


Mehr