Diskussion zum Artikel "Aufbau eines nutzerdefinierten Systems zur Erkennung von Marktregimen in MQL5 (Teil 1): Der Indikator"

 

Neuer Artikel Aufbau eines nutzerdefinierten Systems zur Erkennung von Marktregimen in MQL5 (Teil 1): Der Indikator :

Dieser Artikel beschreibt die Erstellung eines MQL5-Systems zur Erkennung von Marktregimen unter Verwendung statistischer Methoden wie Autokorrelation und Volatilität. Es enthält Code für Klassen zur Klassifizierung von Trend-, Spannen- und Volatilitätsbedingungen sowie einen nutzerdefinierten Indikator.

Bevor wir uns mit den Einzelheiten der Umsetzung befassen, ist es wichtig zu verstehen, was Marktregelungen sind und warum sie für Händler wichtig sind. Die Märkte verhalten sich im Laufe der Zeit nicht einheitlich, sondern sie wechseln zwischen verschiedenen Verhaltenszuständen oder „Regimen“. Diese Systeme haben einen erheblichen Einfluss auf die Preisentwicklung und folglich auch auf die Performance der Handelsstrategien.

Was sind Marktregime?

Marktregime sind bestimmte Muster des Marktverhaltens, die durch spezifische statistische Eigenschaften der Preisbewegungen gekennzeichnet sind. Es gibt zwar verschiedene Möglichkeiten, Marktregime zu klassifizieren, aber wir werden uns auf drei Haupttypen konzentrieren, die für die Entwicklung von Handelsstrategien am wichtigsten sind:
  1. Trend-Regime: Die Märkte weisen starke Richtungsbewegungen mit minimaler Mittelwertumkehr auf. Der Preis neigt dazu, sich beständig in eine Richtung zu bewegen, wobei es zu flachen Rücksetzern kommt. Statistisch gesehen weisen tendenzielle Märkte eine positive Autokorrelation der Renditen auf, was bedeutet, dass Kursbewegungen in eine Richtung wahrscheinlich von Bewegungen in dieselbe Richtung gefolgt werden.
  2. Ranging Regimes: Die Märkte oszillieren zwischen Unterstützungs- und Widerstandsniveaus mit starken Tendenzen zur Rückkehr zum Mittelwert. Der Preis neigt dazu, zwischen definierten Grenzen zu pendeln, anstatt in eine der beiden Richtungen auszubrechen. Statistisch gesehen weisen die Renditen von Wertpapiermärkten eine negative Autokorrelation auf, was bedeutet, dass auf Aufwärtsbewegungen wahrscheinlich Abwärtsbewegungen folgen und umgekehrt.
  3. Volatile Regimes: An den Märkten kommt es zu großen, sprunghaften Kursbewegungen mit unklarer Richtung. Diese Regime treten häufig in Zeiten der Unsicherheit, der Nachrichtenlage oder des Marktstresses auf. Statistisch gesehen weisen die volatilen Regimes eine hohe Standardabweichung der Renditen mit unvorhersehbaren Autokorrelationsmustern auf.

Zu verstehen, in welchem Regime sich der Markt derzeit befindet, ist für Handelsentscheidungen von entscheidender Bedeutung. Eine Strategie, die für Märkte mit einem Trend optimiert ist, wird wahrscheinlich unter schwankenden Bedingungen schlecht abschneiden, während Strategien der Rückkehr zum Mittelwert, die für schwankende Märkte entwickelt wurden, während starker Trends katastrophale Folgen haben können.


Autor: Sahil Bagdi

 
Ihr Code lässt sich nicht kompilieren.... fehlt IsStrongSignal(value) ...
 
Robert Angers #:
Ihr Code lässt sich nicht kompilieren.... fehlt IsStrongSignal(value) ...

Auf welche Datei beziehen Sie sich?

 

Der Marktregime-Indikator weist 24 Fehler und 1 Warnung auf, wenn ich versuche, ihn zu kompilieren:

'MarketRegimeIndicator.mq5' 1

Datei 'C:\Users\rauma\AppData\Roaming\MetaQuotes\Terminal\10CE948A1DFC9A8C27E56E827008EBD4\MQL5\Include\MarketRegimeEnum.mqh' nicht gefunden MarketRegimeIndicator.mq5 14 11

Datei 'C:\Benutzer\rauma\AppData\Roaming\MetaQuotes\Terminal\10CE948A1DFC9A8C27E56E827008EBD4\MQL5\Include\MarketRegimeDetector.mqh' nicht gefunden MarketRegimeIndicator.mq5 15 11

'CMarketRegimeDetector' - unerwartetes Token, wahrscheinlich fehlt der Typ? MarketRegimeIndicator.mq5 29 1

'*' - Semikolon erwartet MarketRegimeIndicator.mq5 29 23

'Detector' - nicht deklarierter Bezeichner MarketRegimeIndicator.mq5 64 5

'CMarketRegimeDetector' - Deklaration ohne Typ MarketRegimeIndicator.mq5 64 20

CMarketRegimeDetector' - Klassentyp erwartet MarketRegimeIndicator.mq5 64 20

Funktion nicht definiert MarketRegimeIndicator.mq5 64 20

'new' - Ausdruck vom Typ 'void' ist illegal MarketRegimeIndicator.mq5 64 16

'=' - Verwendung einer illegalen Operation MarketRegimeIndicator.mq5 64 14

'Detector' - nicht deklarierter Bezeichner MarketRegimeIndicator.mq5 65 8

'==' - illegale Operation MarketRegimeIndicator.mq5 65 17

Detector' - nicht deklarierter Bezeichner MarketRegimeIndicator.mq5 72 5

Detektor' - nicht deklarierter Bezeichner MarketRegimeIndicator.mq5 73 5

Detektor' - nicht deklarierter Bezeichner MarketRegimeIndicator.mq5 74 5

Detektor' - nicht deklarierter Bezeichner MarketRegimeIndicator.mq5 101 9

';' - unerwartetes Token MarketRegimeIndicator.mq5 103 68

'(' - unausgewogene linke Klammer MarketRegimeIndicator.mq5 101 7

leere kontrollierte Anweisung gefunden MarketRegimeIndicator.mq5 103 68

'Detector' - nicht deklarierter Bezeichner MarketRegimeIndicator.mq5 133 8

'!=' - illegale Operation MarketRegimeIndicator.mq5 133 17

'Detector' - nicht deklarierter Bezeichner MarketRegimeIndicator.mq5 135 16

'Detector' - Objektzeiger erwartet MarketRegimeIndicator.mq5 135 16

Detektor' - nicht deklarierter Bezeichner MarketRegimeIndicator.mq5 136 9

'=' - unzulässige Verwendung einer Operation MarketRegimeIndicator.mq5 136 18

24 Fehler, 1 Warnung 25 2


 
Rau Heru #:

Der Marktregime-Indikator hat 24 Fehler und 1 Warnung, wenn ich versuche, ihn zu kompilieren:

'MarketRegimeIndicator.mq5' 1

Datei 'C:\Benutzer\rauma\AppData\Roaming\MetaQuotes\Terminal\10CE948A1DFC9A8C27E56E827008EBD4\MQL5\Include\MarketRegimeEnum.mqh' nicht gefunden MarketRegimeIndicator.mq5 14 11

Datei 'C:\Benutzer\rauma\AppData\Roaming\MetaQuotes\Terminal\10CE948A1DFC9A8C27E56E827008EBD4\MQL5\Include\MarketRegimeDetector.mqh' nicht gefunden MarketRegimeIndicator.mq5 15 11

Der Indikator sucht nach diesen Dateien im Ordner C:\Users\rauma\AppData\Roaming\MetaQuotes\Terminal\10CE948A1DFC9A8C27E56E827008EBD4\MQL5\Include\

#property copyright "Sahil Bagdi"
#property link      "https://www.mql5.com/de/users/sahilbagdi"
#property version   "1.00"
#property indicator_chart_window
#property indicator_buffers 3
#property indicator_plots   3

// Den Marktregime-Detektor einbeziehen
#include <MarketRegimeEnum.mqh>
#include <MarketRegimeDetector.mqh>
 
Sahil Bagdi #:

Auf welche Datei beziehen Sie sich?

MarketRegimeDetector.mqh

bei Zeile 472

Ich nehme an, Sie beziehen sich auf

IsStrongSignal' - nicht deklarierter Bezeichner MarketRegimeDetector.mqh 472 16

'strategySignal' - irgendein Operator erwartet MarketRegimeDetector.mqh 472 31