Dies ist eine quantitative EMA-Crossover-Handelsstrategie. Sie verwendet zwei EMAs mit unterschiedlichen Perioden als Handelssignale, indem sie lang geht, wenn die kürzere Periode EMA über die längere Periode EMA überschreitet, und kurz geht, wenn die kürzere Periode EMA unter die längere Periode EMA überschreitet. Sie gehört zu den Trendfolgestrategien. Diese Strategie setzt auch Stop-Loss und Take-Profit fest, um Risiken zu kontrollieren.
Diese Strategie verwendet das goldene Kreuz und das Todeskreuz der EMAs als Handelssignale. Insbesondere berechnet sie die kürzere Periode EMA und die längere Periode EMA. Wenn die kürzere Periode EMA über die längere Periode EMA überschreitet, erzeugt sie ein Kaufsignal für den Long-Go. Wenn die kürzere Periode EMA unter die längere Periode EMA überschreitet, erzeugt sie ein Verkaufssignal für den Short-Go. So bestimmen die beweglichen Trends der EMAs die Handelsrichtungen.
Nach dem Eintritt in Positionen setzt die Strategie auch gleichzeitig Stop-Loss und Take-Profit. Der Stop-Loss ist ein bestimmter Prozentsatz des Einstiegspreises als Stop-Loss-Linie. Wenn der Preis die Stop-Loss-Linie berührt, wird er die Position für Stop-Loss verlassen. Der Take-Profit ist ein bestimmter Prozentsatz des Einstiegspreises als Take-Profit-Linie. Wenn der Preis die Take-Profit-Linie berührt, wird er die Position für Take-Profit verlassen.
Diese Strategie erlaubt auch, nur lang, nur kurz, Intraday-Handel oder Positionshandel zu wählen.
Diese Strategie hat folgende Vorteile:
Die Verwendung des EMA-Indikators, um Geräusche zu filtern und mittelfristige Trends reibungslos zu erfassen.
Annahme von EMA-Crossovers zwischen kürzeren und längeren Perioden als Handelssignale, um Überhandelungen zu vermeiden.
Die Einstellung von Stop-Loss und Take-Profit, um das Risiko-Rendite-Verhältnis jedes Handels zu kontrollieren, ist gut für das Geldmanagement.
Nur lang, nur kurz, intraday und Positionshandel für verschiedene Händlertypen zulässig machen.
Unterstützung mehrerer Handelswerte wie Aktien, Devisen, Kryptowährungen usw.
Diese Strategie birgt auch einige potenzielle Risiken:
Der EMA-Indikator hat eine Verzögerungseffekt und kann einige kurzfristige Trendwendepunkte verpassen.
Unangemessene Auswahl kürzerer und längerer EMA-Perioden kann zu unordentlichen Handelssignalen führen.
Zu lange gehaltene Positionen können zu größeren Marktschwankungen führen.
Mechanische Stop-Loss- und Take-Profit-Verfahren können dazu führen, dass Positionen zu früh beendet oder die Gewinne vorzeitig reduziert werden.
Die entsprechenden Risikomanagementmessungen:
Optimieren Sie die EMA-Parameter, um die beste Periodenkombination zu finden.
Hinzufügen anderer Indikatoren als Hilfsbeurteilung.
Dynamische Anpassung von Stop Loss und Take Profit.
Manuelle Intervention bei ungewöhnlichen Marktbedingungen.
Diese Strategie kann in folgenden Aspekten optimiert werden:
Optimale Optimierung der EMA-Parameter, um für verschiedene Handelsvermögenswerte geeignete Kurz- und Langzeitkombinationen zu finden.
Hinzu kommen weitere Indikatoren wie MACD, KD für die Synergie zwischen mehreren Indikatoren.
Fügen Sie maschinelle Lernmodelle hinzu, um dynamische Stop-Loss- und Take-Profits zu generieren.
Verbinden Sie fortschrittlichere RISK-Indikatoren für die Feature Engineering.
Hinzufügen von adaptiven Handelskomponenten für die Parameteroptimierung.
Zusammenfassend ist dies ein ausgezeichneter Trend nach der Strategievorlage. Seine Kernstärke liegt darin, den EMA-Indikator zu verwenden, um Geräusche zu filtern und stetige Gewinne zu erzielen, während ein umfassendes Risikoverdienstmanagement verfügt. Durch kontinuierliche Optimierung kann diese Strategie zu einer universellen quantitativen Strategie auf allen Märkten werden und lohnt sich für Händler zu lernen und zu üben.
/*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("EMA Crossover Strategy by Vikrant Singh", overlay=true) // Input for EMA Lengths var bool runningPOS = false var float stopLossLevel = na var float targetLevel = na shortLength = input(11, title="Short EMA Length") longLength = input(21, title="Long EMA Length") // Input for Stop-Loss and Target stopLossPct = input(1, title="Stop-Loss (%)") targetPct = input(3, title="Target (%)") longOnly = input(true, title="Long Only") intraDay = input(true, title="intraday?") // Calculate EMAs emaShort = ta.ema(close, shortLength) emaLong = ta.ema(close, longLength) // Calculate crossover conditions crossoverCondition = ta.crossover(emaShort, emaLong) crossunderCondition = ta.crossunder(emaShort, emaLong) // Entry condition (long position just before crossover) if crossoverCondition and not runningPOS and longOnly and (hour <= 15) strategy.entry("Long", strategy.long) runningPOS := true stopLossLevel := close * (1 - stopLossPct / 100) targetLevel := close * (1 + targetPct / 100) //Entry condition (short position just before crossover) if crossunderCondition and not runningPOS and not longOnly and (hour <= 15) strategy.entry("Short", strategy.short) runningPOS := true stopLossLevel := close * (1 + stopLossPct / 100) targetLevel := close * (1 - targetPct / 100) // Exit conditions (square off on reverse crossover) //Exit long if (crossunderCondition or (low < stopLossLevel) or (high > targetLevel) ) and longOnly and runningPOS strategy.close("Long",comment = "Exit long")// ("Long", from_entry="Long",stop=stopLossLevel, limit=targetLevel) runningPOS := false //Exit short if (crossoverCondition or (high > stopLossLevel) or (low < targetLevel) ) and not longOnly and runningPOS strategy.close("Short", comment = "Exit Short") runningPOS := false if intraDay and runningPOS if (hour >= 15) strategy.close_all(comment = "Intraday square off") //strategy.close("Long",comment = "intraday square off") runningPOS := false // Plot EMAs plot(emaShort, color=color.blue, title="Short EMA") plot(emaLong, color=color.red, title="Long EMA")