Diese Strategie ist eine trendfolgende algorithmische Handelsstrategie. Sie berechnet zwei EMA-Linien mit unterschiedlichen Parametern und erzeugt Handelssignale, wenn das Goldene Kreuz und das Todekreuz zwischen den beiden EMAs auftreten. Die Strategie kombiniert auch mehrere EMA-Linien für den Gewinn-Ausgang und setzt Stop-Loss-Punkte zur Risikokontrolle.
Die Strategie verwendet 4 EMA-Linien, darunter eine schnelle EMA und eine langsame EMA, deren Crossover verwendet wird, um Kauf- und Verkaufssignale zu generieren.
Speziell wird ein Kaufsignal erzeugt, wenn die schnelle EMA über die langsame EMA überschreitet. Wenn die schnelle EMA unter die langsame EMA überschreitet, wird ein Verkaufssignal erzeugt. Dies ist eine typische Dual-EMA-Crossover-Strategie. Um Trends besser zu verfolgen und die Rentabilität zu erhöhen, wird die Strategie nach dem Eintritt in eine Position selektiv einen Teil oder die gesamte Position verlassen, wenn die schnelle EMA über die zweite EMA-Linie überschreitet oder wenn die schnelle EMA unter die dritte EMA-Linie überschreitet.
Darüber hinaus setzt die Strategie sowohl lange als auch kurze Stop-Loss-Punkte fest, um übermäßige Verluste zu vermeiden.
Im Vergleich zu einer typischen Crossover-Strategie mit doppelter EMA umfassen die Hauptvorteile dieser Strategie:
Durch die Einrichtung mehrerer EMA-Linien für den Gewinn-Ausgang können die Gewinne besser festgehalten und eine Gewinnschrumpfung bei nachfolgenden Rückzügen verhindert werden.
Die Short-Position hat einen kleineren Stop-Loss, der größeren normalen Marktschwankungen standhält und häufige Stop-Loss verhindert.
Die Festlegung von EMA-Linien mit unterschiedlichen Parametern für den Gewinn-Ausgang ermöglicht die Wahl des optimalen Ausgangspunkts basierend auf den Marktbedingungen.
Die Gesamtstrategie hat eine gute Trendverfolgungsfähigkeit, um größere Gewinne aus mittelfristigen bis langfristigen Trends zu erzielen.
Zu den wichtigsten Risiken dieser Strategie gehören:
Auf den Märkten mit Bandbreiten sind die von den EMA-Linien erzeugten Handelssignale häufig, was zu einem Überhandel führen kann.
Der Short-Stop-Loss kann nur extreme Marktbedingungen verhindern und kann keine erheblichen Abzüge im Strategie-Konto verhindern.
Die Gefahr von Abzügen besteht weiterhin, und bei einer langfristigen Anpassung können sich die Gewinne erheblich verringern.
Die Strategie ist empfindlich gegenüber Parameter-Tuning. Eine unsachgemäße Konfiguration kann zu einem Strategieversagen führen.
Angesichts der genannten Risiken kann die Strategie in folgenden Aspekten optimiert werden:
Erhöhung der Maschinellen Lernalgorithmen zur Unterstützung der Trendbeurteilung und Verringerung der Wahrscheinlichkeit von Fehltrades.
Erhöhung des anpassungsfähigen Stop-Loss-Mechanismus zur dynamischen Anpassung des Stop-Loss-Mechanismus anhand der Marktvolatilität.
Festlegen der Kapitalnutzung, um eine übermäßige Kapitalbesetzung zu vermeiden und den Positionsmanagementmechanismus zu verbessern.
Wählen Sie Handelsprodukte mit offensichtlichen Trends und hohen Schwankungen aus.
Erhöhung des Parameteroptimierungsmoduls zur automatischen Optimierung und Aktualisierung der Parameter.
Insgesamt ist die Dual-EMA-Crossover-Strategie eine kostengünstige Trendfolgestrategie. Sie hat Vorteile wie mehrere EMA-Linien für die Gewinnentnahme, kleine Short-Stops und eine gute Trendfolgekapazität. Allerdings gibt es bei dieser Strategie immer noch einige Risiken. Sie erfordert eine weitere Optimierung des Parameter-Tuning und die Einbeziehung von Machine-Learning-Algorithmen, um die Stabilität zu verbessern. Im Allgemeinen ist diese Strategie für Anleger mit etwas Handelserfahrung geeignet, um Algorithmenhandel durchzuführen.
/*backtest start: 2023-02-19 00:00:00 end: 2024-02-25 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © RealTraderAkeme //@version=5 strategy("AKEME_EMA_CROSS_V6", overlay=true) ////////////////////////////////////////////////////////////PARAMETERS///////////////////////////////////////////////////////////////// emaFast_op = input(title="Fast_EMA", defval=6) emaSlow_op = input(title="Slow_EMA", defval=26) emaExit_op = input(title="Sell_EMA_Exit",defval=10) emabuyExit_op = input(title="Buy_EMA_Exit",defval=20) Order_Value = input(defval=1000, title="Order_Value in Pounds") Direction_Of_Trade = input(title="Trade Direction", defval="Both") ////////////////////////////////////////////////////////////INPUTS////////////////////////////////////////////////////////////////// fastEMA = ta.ema(close, emaFast_op) slowEMA = ta.ema(close,emaSlow_op) emaExit = ta.ema(close,emaExit_op) emabuyExit = ta.ema(close,emabuyExit_op) Entry_Ratio = strategy.openprofit/Order_Value //////////////////////////////////////////////////////////GRAPHS////////////////////////////////////////////////////////////////// plot(fastEMA, color=color.orange, linewidth = 2) plot(slowEMA,color = color.blue, linewidth = 2) plot(emaExit,color = color.gray, linewidth = 2) plot(series=emabuyExit, color= color.rgb(210, 74, 235), linewidth=2) /////////////////////////////////////////////////////Conditions////////////////////////////////////////////////////////////////////// longOK = (Direction_Of_Trade == "Long") or (Direction_Of_Trade == "Both") shortOK = (Direction_Of_Trade == "Short") or (Direction_Of_Trade == "Both") ///////////////////////////////////////////////////////////ENTRIES&EXITS/////////////////////////////////////////////////////////////// longCondition = ta.crossover(fastEMA, slowEMA) and longOK if (longCondition) strategy.entry("Buy", strategy.long) shortCondition = ta.crossunder(fastEMA, slowEMA) and shortOK if (shortCondition) strategy.entry("Sell", strategy.short) if (strategy.position_size > 0 and shortCondition) strategy.exit(id="exit Buy", stop=close) if (strategy.position_size < 0 and longCondition) strategy.exit(id="exit Sell", stop=close) /////////////////////////////////////////////////////TAKE PROFIT CONDITIONS//////////////////////////////////////////////////////// if ta.crossunder(fastEMA, emabuyExit) and Entry_Ratio > 0.08333 strategy.close("Buy",comment = "Exit") if ta.crossover(fastEMA, emaExit) and Entry_Ratio > 0.016666 strategy.close("Sell",comment = "Exit") if Entry_Ratio > 0.4166666 //0.4166666 strategy.close("Buy",comment = "Exit", qty_percent = 100) if Entry_Ratio > 0.0833333//0.0833333 strategy.close("Sell",comment = "Exit")//50 if Entry_Ratio > 0.1111111//4000 strategy.close("Sell",comment = "Exit", qty_percent = 50) if ta.crossover(fastEMA, emaExit) and Entry_Ratio > 0.278 //Percentage strategy.close("Sell",comment = "Exit") ////////////////////////////////////////////STOP LOSS AS PERCENTAGE OF ENTRY CONDITIONS/////////////////////////////////////////// if Entry_Ratio < -0.05555555555 strategy.close("Buy",comment = "Exit") if Entry_Ratio < -0.027777777777 strategy.close("Sell",comment = "Exit")// The Sell Stoloss is half the buying stoploss.