Kombinierte Strategie aus Momentum-Indikator und Stochastik-Indikator


Erstellungsdatum: 2023-12-26 14:30:23 zuletzt geändert: 2023-12-26 14:30:23
Kopie: 0 Klicks: 761
1
konzentrieren Sie sich auf
1623
Anhänger

Kombinierte Strategie aus Momentum-Indikator und Stochastik-Indikator

Überblick

Die Strategie verwendet eine Kombination aus einem Trendindex und einem Zufallsindikator, um ein Handelssignal zu erzeugen. Die DI+, DI- und ADX-Linien im Trendindex werden verwendet, um die Richtung und Stärke des Trends zu bestimmen, und die %K-Linien im Zufallsindikator werden verwendet, um zu bestimmen, ob ein Überkauf oder Überverkauf stattfindet. Die Strategie erzeugt ein Mehrkopfsignal, wenn die DI+ höher als die DI-, ADX höher als 25 und 20% K niedriger ist.

Strategieprinzip

Die Kernlogik dieser Strategie basiert auf folgenden Teilen:

  1. Trends im Trend-IndexWenn DI+ höher ist als DI-, zeigt dies einen mehrköpfigen Trend an. Wenn DI- höher ist als DI+, zeigt dies einen ungebundenen Trend an. ADX wird verwendet, um die Stärke eines Trends zu bestimmen. Je größer der Wert, desto deutlicher ist der Trend.

  2. Überkaufen und Überverkaufen durch ZufallsindikatorenDie %K-Linie in einem Zufallsindikator zeigt die Position des aktuellen Schlusskurses gegenüber dem Höchst- und Tiefstpreis in einem bestimmten Zeitraum an, um zu beurteilen, ob ein Markt überkauft oder überverkauft ist. Wenn %K unter 20 liegt, ist es überverkauft, wenn es über 80 ist, ist es überkauft.

  3. Das Signal erzeugt LogikDie Strategie erzeugt ein Mehrkopfsignal in Kombination mit einem Trendindex und einem Zufallsindikator, wenn DI+ höher ist als DI- (Mehrkopftrend), ADX höher als 25 (der Trend ist deutlich) und %K niedriger als 20 (Überverkauf); ein Hoherkopfsignal wird erzeugt, wenn DI- höher ist als DI+ (Hoherkopftrend), ADX höher als 25 und %K höher als 80 (Überkauf).

  4. Dynamische Stop-Loss-Methode: Aufzeichnen der Höchst- und Tiefstpreise nach dem letzten Einstiegspunkt und nutzen diese als dynamische Stop-Loss-Punkte. Dadurch können Gewinne oder Risiken entsprechend der Marktschwankungen gesperrt oder kontrolliert werden.

Analyse der Stärken

Diese Strategie hat folgende Vorteile:

  1. Die Kombination von Trendindex und Zufallsindikator bietet eine hohe Zuverlässigkeit. Der Trendindex beurteilt die Richtung des Haupttrends, der Zufallsindikator fängt lokale Merkmale ein, die sich gegenseitig ergänzen.

  2. Ein innovativer dynamischer Stop-Loss-Mechanismus. Die Stop-Loss-Punkte werden nach den jüngsten Schwankungen festgelegt, um das Risiko entsprechend der tatsächlichen Marktlage zu kontrollieren und die Stop-Loss-Effekte zu verbessern.

  3. Wenige Strategieparameter, leicht umzusetzen. Die wichtigsten Parameter sind nur die Länge der Indikatoren, die leicht angepasst und optimiert werden können.

  4. Die Strategie kann in den Finanzmärkten wie Aktien, Devisen und Kryptowährungen angewendet werden.

  5. Die Software wurde in der Python-Skript-Plattform entwickelt und kann direkt in den Handelsplattformen eingesetzt werden.

Risikoanalyse

Es gibt einige Risiken bei dieser Strategie, die zu beachten sind:

  1. Wenn die Tendenz schwankt, kann es zu falschen Signalen kommen. Die ADX ist relativ niedrig und die Positionen sollten reduziert werden, um das Risiko zu vermeiden.

  2. Der Zufallsindikator selbst ist ein Nachlaufindikator, der zum Zeitpunkt der Signalisierung möglicherweise bereits eine Marktumkehr erzeugt hat. Er sollte in geeigneter Kombination mit anderen Vorlaufindikatoren verwendet werden.

  3. Die dynamische Stop-Loss-Mechanik kann nicht vollständig den Schlag der großen Börse vermeiden. Es wird empfohlen, die Stop-Loss-Distanz vernünftigerweise einzustellen.

  4. Eine falsche Einstellung der Parameter kann auch die Effektivität der Strategie beeinträchtigen. Die richtigen Parameter für die Kennzahlenlänge sollten gewählt werden.

  5. Die Gesamtmarktumgebung muss genau beobachtet werden. Die Strategie sollte bei einem großen Black Swan-Ereignis ausgesetzt werden, um außergewöhnliche Verluste zu vermeiden.

Optimierungsrichtung

Diese Strategie kann in folgenden Bereichen optimiert werden:

  1. Hinzufügen von anderen Beurteilungsindikatoren, die eine Mehrfachfilterung erzeugen und die Reliabilität der Signale verbessern. Zum Beispiel die Aufnahme von Gleichheitsbeurteilungstrends, MACD-Abweichungen usw.

  2. Optimieren Sie die Parameter-Einstellungen und wählen Sie die optimale Kombination von Parametern. Die am besten geeignete Indikatorlänge kann durch Rückverfolgung der historischen Daten bestimmt werden.

  3. Verschiedene Parameter für verschiedene Sorten und Handelszyklen eingestellt. Sorten, die für hochfrequente Geschäfte geeignet sind, können die Berechnungszeit verkürzen.

  4. In Kombination mit der GetInfo-Funktion und der Logging-Funktion werden detaillierte Transaktionslogs und Kennzahlen für die Analyse und Optimierung von Strategien ausgegeben.

  5. In der Pine-Editor-Funktion wurde ein Graphing hinzugefügt, das die Trading-Signalpunkte anzeigt. Gleichzeitig kann die Bewegung der Stop-Loss-Linie angezeigt werden.

  6. Die Entwicklung von Alarmfunktionen, die Nachrichten senden, wenn bestimmte Bedingungen erfüllt werden, um eine rechtzeitige Intervention zu erleichtern.

Zusammenfassen

Die Strategie nutzt die Vorteile von Trendindizes und Zufallsindikatoren, um die Trendrichtung zu bestimmen und gleichzeitig überkaufende und überverkaufte Bereiche zu lokalisieren, wodurch Handelssignale erzeugt werden. Gleichzeitig ist die dynamische Stop-Loss-Methode innovativ gestaltet, um die Risikokontrolle intelligenter und automatisierter zu machen. Die Strategie-Signal ist zuverlässig, umfassend und benutzerfreundlich und ist eine effiziente, praktische und quantifizierte Handelsstrategie.

Strategiequellcode
/*backtest
start: 2022-12-19 00:00:00
end: 2023-12-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("DMI with Stochastic and Dynamic Stop-Loss", shorttitle="DMI_Stoch_SL", overlay=true)

length = input(14, title="DMI Length")
adxThreshold = input(25, title="ADX Threshold")
stochKLength = input(14, title="Stochastic %K Length")
stochDLength = input(3, title="Stochastic %D Length")

[diPlus, diMinus, adx] = ta.dmi(length, length)
stochKLine = ta.stoch(close, high, low, stochKLength)

var float lowestClose = na
var float highestClose = na
lowestClose := na(lowestClose) ? close : math.min(lowestClose, close)
highestClose := na(highestClose) ? close : math.max(highestClose, close)

longCondition = (diPlus > diMinus) and (adx > adxThreshold) and (stochKLine < 20)
shortCondition = (diMinus > diPlus) and (adx > adxThreshold) and (stochKLine > 80)

if longCondition
    strategy.entry("Buy", strategy.long)
    strategy.exit("Exit Buy", "Buy", stop=lowestClose)

if shortCondition
    strategy.entry("Sell", strategy.short)
    strategy.exit("Exit Sell", "Sell", stop=highestClose)