Strategie für den Handel mit Crossover-Optionen der EMA

Schriftsteller:ChaoZhang, Datum: 2024-01-16 14:14:42
Tags:

img

Übersicht

Dies ist eine kurzfristige Optionshandelsstrategie, die auf exponentiellen gleitenden Durchschnitten (EMA) und gleitenden Durchschnitten (MA) basiert, um Handelssignale zu generieren.

Strategie Logik

Die Strategie verwendet zwei EMAs/MAs mit unterschiedlichen Parametern, eine schnelle EMA und eine langsame MA. Die schnelle EMA-Periode wird auf 50 und die langsame MA-Periode auf 100 festgelegt. Die EMA reagiert schneller auf Preisänderungen, während die MA langsamer reagiert.

Wenn sich der kurzfristige Kursanstieg beschleunigt, dringt der schnelle EMA von unten durch den langsamen MA und erzeugt Kaufsignale. Dies zeigt eine zunehmende bullische Stimmung an, was es geeignet macht, Kauf- oder Kaufoptionen zu erwägen.

Wenn sich der kurzfristige Kursrückgang beschleunigt, bricht die schnelle EMA unter die langsame MA aus und erzeugt Verkaufssignale. Dies zeigt eine zunehmende bärische Stimmung, die auf Möglichkeiten zum Verkauf oder Kauf von Put-Optionen hinweist.

Durch die Erfassung von Kreuzungen zwischen schnellen und langsamen EMA/MA zur Bestimmung von kurzfristigen Trends und Marktemotionen können zeitnahe Optionsgeschäfte ausgeführt werden, um von relativ kurzfristigen Kursschwankungen zu profitieren.

Analyse der Vorteile

Die wichtigsten Vorteile dieser Strategie sind:

  1. Schnelle Reaktion auf kurzfristige Schwankungen. Crossovers zwischen schnellen EMA und langsamen MA erkennen kurzfristige Kursumkehrungen schnell.

  2. Einfache Implementierung: Es ist nur notwendig, die Überschneidung der beiden gleitenden Durchschnitte ohne komplexe Berechnungen zu überwachen.

  3. Flexible Anwendung für den Handel mit Optionen oder Aktien.

  4. Kontrollierbares Risiko mit klarem Stop-Loss, vorgegebene Stop-Loss-Punkte, um Verluste pro Trade zu begrenzen.

Risikoanalyse

Einige Risiken:

  1. Potenzielle Whipsaw-Signale und Ranging-Märkte können zu einem übermäßigen Handel und erhöhten Kosten führen.

  2. Anfällig für anhaltende Abwärtstrends auf dem Markt mit aufeinanderfolgenden Stop-Loss-Triggern.

  3. Bei einem Preisanstieg aufgrund bedeutender Ereignisse können Positionen vorzeitig eingestellt oder Verluste erheblich vergrößert werden.

Möglichkeiten zur Verbesserung

Einige Möglichkeiten zur Verbesserung der Strategie:

  1. Dynamischer Stop-Loss basierend auf der Volatilität. Anpassung des Stop-Loss in Echtzeit entsprechend den Kursschwankungsniveaus, um die Wahrscheinlichkeit eines erzwungenen Ausstiegs zu minimieren.

  2. Integration mehrerer Zeitrahmen EMAs. Hinzufügen von täglichen und wöchentlichen EMAs, um den Gesamttrend zu messen, um Gegentrendgeschäfte zu vermeiden.

  3. Nutzen Sie den RSI, um überkaufte und überverkaufte Niveaus zu identifizieren, um einige Geräuschsignale auszufiltern.

  4. Vorhersage der Volatilität durch maschinelles Lernen: Verwenden Sie LSTM-Modelle zur Vorhersage von Kursvolatilität und Risiko, indem Sie die Positionsgröße und den Stop-Loss dynamisch anpassen.

Schlussfolgerung

Diese kurzfristige EMA/MA-Crossover-Strategie erfasst kurzfristige Trendveränderungen und Marktemotionen für zeitnahe Trades, indem sie schnelle EMA- und langsame MA-Crossovers überwacht. Trotz ihrer Einfachheit bei der Umsetzung sind Risiken übermäßige Whipsaws und anhaltende Drawdowns. Verbesserungen rund um Stop-Loss-Optimierung, mehrere Zeitrahmen, Signalfilterung und Machine-Learning-Vorhersage können zur Risikokontrolle und Rentabilitätsverbesserung beitragen.


/*backtest
start: 2023-01-09 00:00:00
end: 2024-01-15 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Backtest single EMA cross", overlay=true)

qty = input(100000, "Buy quantity")

testStartYear = input(2019, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testStartHour = input(0, "Backtest Start Hour")
testStartMin = input(0, "Backtest Start Minute")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, testStartHour, testStartMin)
testStopYear = input(2099, "Backtest Stop Year")
testStopMonth = input(1, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)
testPeriodBackground = input(title="Color Background?", type=input.bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and time >= testPeriodStart and time <= testPeriodStop ? 
   #00FF00 : na
testPeriod() => true


ema1 = input(50, title="Select EMA 1")
ema2 = input(100, title="Select EMA 2")

expo = ema(close, ema1)
ma = ema(close, ema2)

avg_1 = avg(expo, ma)
s2 = cross(expo, ma) ? avg_1 : na
//plot(s2, style=plot.style_line, linewidth=3, color=color.red, transp=0)

p1 = plot(expo, color=#00FFFF, linewidth=2, transp=0)
p2 = plot(ma, color=color.orange, linewidth=2, transp=0)
fill(p1, p2, color=color.white, transp=80)


longCondition = crossover(expo, ma)

shortCondition = crossunder(expo, ma)

exitlongCondition = crossunder(expo, ma)

exitshortCondition = crossover(expo, ma) 


if testPeriod()
    strategy.entry("Long", strategy.long, when=longCondition)
    strategy.entry("Short", strategy.short, when=shortCondition)

plotshape(longCondition, title = "Buy Signal", text ="BUY", textcolor = #FFFFFF , style=shape.labelup, size = size.normal, location=location.belowbar, color = #1B8112, transp = 0)
plotshape(shortCondition, title = "Sell Signal", text ="SELL", textcolor = #FFFFFF, style=shape.labeldown, size = size.normal, location=location.abovebar, color = #FF5733, transp = 0)




Mehr