Die MACD Trend Prediction Strategie ist eine Trend-Folge-Strategie, die auf dem MACD-Indikator und dem EMA-Indikator basiert. Im Gegensatz zu traditionellen MACD-Strategien, die Handelssignale durch Kreuzung von Signallinien erzeugen, erzeugt diese Strategie Handelssignale durch Änderungen des Abstands zwischen der MACD-Linie und der Signallinie, um Trendänderungen zu erfassen.
Berechnen Sie die Schnelllinie DEMAfast: Berechnen Sie zwei EMA-Werte der Schnelllinie MMEfast und berechnen Sie die Schnelllinie DEMAfast nach der Formel DEMAfast = ((2 * MMEfast) - MMEfastb).
Berechnung der langsamen Linie DEMAslow: Berechnen Sie zwei EMA-Werte der langsamen Linie MMEslow und berechnen Sie die langsame Linie DEMAslow nach der Formel DEMAslow = ((2 * MMEslow) - MMEslowb).
Berechnen Sie die MACD-Linie: Die MACD-Linie ist die Differenz zwischen der schnellen Linie DEMAfast und der langsamen Linie DEMAslow, LigneMACDZeroLag.
Berechnung der Signallinie: Berechnen Sie zwei EMA-Werte der MACD-Linie MMEsignal und berechnen Sie die Signallinie Lignesignal nach der Formel Lignesignal = ((2 * MMEsignal) - MMEsignalb).
Vergleichen Sie MACD-Linie und Signallinie: Erzeugen Sie ein Kaufsignal, wenn die MACD-Linie größer als die Signallinie ist, und erzeugen Sie ein Verkaufssignal, wenn die MACD-Linie kleiner als die Signallinie ist.
Bei der obigen Berechnung wird der DEMA-Algorithmus verwendet, der die Verzögerung des MACD-Indikators effektiv verringern kann.
Die Verwendung des DEMA-Algorithmus kann die Verzögerung des MACD-Indikators verringern und die Handelssignale empfindlicher machen.
Es stützt sich nicht auf MACD-Crossover-Signale, sondern erfasst Trendveränderungen durch Abstandsveränderungen zwischen MACD und Signallinien, die früher in Trends eintreten können.
Die Strategie beurteilt den Trend genau, und der Gewinnfaktor kann bei guter Rentabilität 1,6-3,5 erreichen.
Die Strategielogik ist einfach und klar, leicht verständlich und umsetzbar, geeignet für den quantitativen Handel.
Der MACD kann als Rückstandsindikator viele ungültige Handelssignale in den Bereichsmärkten erzeugen.
Obwohl der DEMA-Algorithmus die Verzögerung reduziert, kann er die Verzögerung nicht vollständig beseitigen.
Als Trend nach Strategie kann der Gewinn in verschiedenen Märkten nicht gut sein.
Die Parameter sma, lma, tsp müssen für verschiedene Perioden und Sorten optimiert werden.
Es kann notwendig sein, Stop-Loss-Strategien zu den Kontrollverlusten hinzuzufügen.
Optimierung der SML, LMA und TSP-Parameter, um sie an verschiedene Perioden und Handelsvarianten anzupassen.
Hinzufügen dynamischer Stop-Loss-Strategien wie ATR zur Steuerung von Handelsverlusten.
Verwenden Sie Trendbeurteilungsindikatoren, um den Handel auf unterschiedlichen Märkten zu vermeiden.
Zusätzliche Positionsgröße zur Anpassung der Positionen an die Marktvolatilität.
Optimierung der Ein- und Ausstiegslogik zur Verfeinerung der Handelssignalregeln.
Die MACD Trend Prediction Strategie verbessert die Berechnung des MACD, indem sie den DEMA-Algorithmus verwendet, um die Verzögerung zu reduzieren, und beurteilt den Trend durch Abstandsänderungen zwischen MACD und Signallinien. Als Trend-Folgende Strategie kann sie effektiv Trendänderungen erfassen. Der Gewinnfaktor kann 1,6-3,5 erreichen, mit bestimmten Vorteilen. Aber es braucht noch weitere Optimierung von Parametern, Stop-Loss-Strategien, Filterung von Marktbereichen usw., um sich an mehr Marktumgebungen anzupassen. Dies wird die Entwicklungsrichtung dieser Strategie sein.
/*backtest start: 2022-10-26 00:00:00 end: 2023-11-01 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © moritz1301 //@version=4 strategy("MACD Trendprediction Strategy V1", shorttitle="MACD TPS", overlay=true) sma = input(12,title='DEMA Courte') lma = input(26,title='DEMA Longue') tsp = input(9,title='Signal') dolignes = input(true,title="Lignes") MMEslowa = ema(close,lma) MMEslowb = ema(MMEslowa,lma) DEMAslow = ((2 * MMEslowa) - MMEslowb ) MMEfasta = ema(close,sma) MMEfastb = ema(MMEfasta,sma) DEMAfast = ((2 * MMEfasta) - MMEfastb) LigneMACDZeroLag = (DEMAfast - DEMAslow) MMEsignala = ema(LigneMACDZeroLag, tsp) MMEsignalb = ema(MMEsignala, tsp) Lignesignal = ((2 * MMEsignala) - MMEsignalb ) MACDZeroLag = (LigneMACDZeroLag - Lignesignal) bgcolor(LigneMACDZeroLag<Lignesignal ? color.red : color.green) if (LigneMACDZeroLag>Lignesignal) strategy.entry("Buy", strategy.long, comment="BUY") if (LigneMACDZeroLag<Lignesignal) strategy.close("Buy", strategy.long, comment="SELL")