
Die Strategie basiert auf einer doppelten Gleichgewichtskreuzung und kombiniert einen festen Stop-Loss und einen Tracking-Stop mit einem täglichen Gewinnziel. Die Strategie nutzt hauptsächlich die Kreuzung von schnellen und langsamen Moving Averages, um Kauf- und Verkaufssignale zu erzeugen, während Risiken kontrolliert und Gewinne durch Stop-Loss- und Gewinnziele gesperrt werden.
Moving Average: Die Strategie verwendet zwei einfache Moving Averages ((SMA), die auf einer schnellen und einer langsamen SMA basieren, die vom Benutzer definiert werden.
Handelssignale werden erzeugt:
Risikomanagement:
Das ist das Ziel des Tagesumsatzes:
Bild von:
Trend-Tracking: Markttrends mit Hilfe von Linear-Crossing zu erfassen, um zu Beginn der Trends einzutreten.
Risikokontrolle: Effektive Kontrolle der einzelnen Transaktionen und des Gesamtrisikos durch festgelegte Stop-Losses und die Verfolgung von Stop-Losses
Gewinnmanagement: Die täglichen Gewinnziele helfen, die Risiken zu kontrollieren und die erzielten Gewinne zu schützen.
Flexibilität: Benutzer können wichtige Parameter wie die Periode der Durchschnittslinie, den Stop-Loss-Betrag und die Gewinnziele anpassen, um sich an unterschiedliche Marktbedingungen anzupassen.
Visuelle Hilfe: Die Quotenlinie und die Handelssignale werden intuitiv auf der Tabelle angezeigt, um die Analyse und Rückmeldung zu erleichtern.
Häufige Transaktionen: In einem wackligen Markt kann es zu viel Falschsignale geben, was zu häufigen Transaktionen und erhöhten Gebühren führt.
Nachlässigkeit: Der Moving Average ist ein im Wesentlichen nachlässiger Indikator, der möglicherweise nicht schnell genug reagiert, wenn die Märkte stark schwanken.
Das Risiko eines festen Stop-Losses: Ein fester Stop-Loss ist in einem volatilen Markt möglicherweise nicht flexibel genug.
Die Einschränkung der täglichen Zielvorgaben: Zwingende tägliche Zielvorgaben können dazu führen, dass wichtige Marktchancen verpasst werden.
Parameter-Sensitivität: Die Strategie-Performance kann sehr sensibel auf die Parameter-Einstellungen sein und muss häufig optimiert werden.
Anpassung der dynamischen Parameter: Berücksichtigung der automatischen Anpassung der Moving Average-Periode und der Stop-Loss-Marge an die Marktvolatilität.
Hinzufügen von Filtern: Einführung zusätzlicher Technik- oder Marktstimmungskennzahlen, um falsche Signale zu reduzieren.
Zeit-Filter: Zeit-Filterfunktion, um schwankende Zeiten wie Markteintritte und -abschlüsse zu vermeiden.
Positionsverwaltung: Dynamische Positionsverwaltung, bei der die Größe des Handels je nach Marktlage und Kontoergebnis angepasst wird.
Multi-Zeitrahmen-Analyse: In Verbindung mit einer längerfristigen Trendanalyse verbessert sich die Genauigkeit der Einstiegsmomente.
Optimierung der Parameterwahl und Signalgenerierung mit Hilfe von Machine Learning-Algorithmen.
Die Strategie bi-linearer Kreuzung ist ein Handelssystem, das klassische technische Analyse und moderne Risikomanagement kombiniert. Es erfasst Markttrends durch einfache und effektive Kreuzung von Gleichgewichten und unterstützt Stop-Loss- und Gewinnziele, um Risiken zu verwalten. Die Stärken der Strategie liegen in ihrer Einfachheit und Flexibilität, aber es steht auch vor den Herausforderungen, die den linearen Systemen innewohnend sind, wie Rückstand und Parameter-Sensitivität.
/*backtest
start: 2024-08-26 00:00:00
end: 2024-09-24 08:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("NQ Futures $200/day Strategy", overlay=true)
// Input Parameters
fastLength = input.int(9, title="Fast MA Length")
slowLength = input.int(21, title="Slow MA Length")
dailyTarget = input.float(200, title="Daily Profit Target (Set to 0 to disable)", step=0.01)
stopLossAmount = input.float(100, title="Stop Loss Amount", step=0.01)
trailOffset = input.float(20, title="Trailing Stop Offset", step=0.01)
// Moving Averages
fastMA = ta.sma(close, fastLength)
slowMA = ta.sma(close, slowLength)
// Crossover Conditions for Buy and Sell
longCondition = ta.crossover(fastMA, slowMA)
shortCondition = ta.crossunder(fastMA, slowMA)
// Entry conditions
if (longCondition)
strategy.entry("Buy", strategy.long)
if (shortCondition)
strategy.entry("Sell", strategy.short)
// Set Stop Loss and Trailing Stop
if (strategy.opentrades > 0)
strategy.exit("Exit Long", from_entry="Buy", stop=strategy.position_avg_price - stopLossAmount, trail_offset=trailOffset)
strategy.exit("Exit Short", from_entry="Sell", stop=strategy.position_avg_price + stopLossAmount, trail_offset=trailOffset)
// Conditional Daily Profit Target (disabled if dailyTarget is 0)
if (dailyTarget > 0 and strategy.netprofit >= dailyTarget)
strategy.close_all(comment="Daily Target Reached")
// Plotting the moving averages on the main chart
plot(fastMA, color=color.blue, title="Fast MA")
plot(slowMA, color=color.red, title="Slow MA")
// Plot "Long" and "Short" signals on the main chart
plotshape(series=longCondition, title="Long Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="Long")
plotshape(series=shortCondition, title="Short Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="Short")
// Markers for entry on the price chart
plotshape(series=longCondition, title="Buy Marker", location=location.belowbar, color=color.green, style=shape.triangledown, size=size.small)
plotshape(series=shortCondition, title="Sell Marker", location=location.abovebar, color=color.red, style=shape.triangleup, size=size.small)