English Русский 中文 Español 日本語 Português
Vergleichende Analyse von 30 Indikatoren und Oszillatoren

Vergleichende Analyse von 30 Indikatoren und Oszillatoren

MetaTrader 4Handel | 30 März 2016, 11:06
1 074 0
Александр
Александр

Einführung

Die Fülle der heutzutage entwickelten Indikatoren und Oszillatoren führt zwangsläufig zu dem Problem, den effizientesten von ihnen auszuwählen. Sehr häufig stehen beginnende Trader zum ersten Mal dieser großen Menge an verfügbaren Analyse- und Prognose-Werkzeugen gegenüber, und beginnen diese auf historischen Daten und Demokonten zu testen. Danach wird eine Reihe von Schlussfolgerungen über die Effizienz oder Nutzlosigkeit des einen oder anderen Indikators in bestimmten Situationen gezogen:

Eine solche Einschätzung ist jedoch nicht immer objektiv, wegen der großen Anzahl an Parametern (Symbol, Chart-Periode), Volatilität, usw.) und der deshalb entstehenden großen Menge zu analysierender Informationen. Zuverlässigere Schlussfolgerungen über bestimmte Indikatoren und Oszillatoren können getroffen werden, nach der Durchführung ihrer vergleichenden Analyse.

Tatsächlich ist die vergleichende Analyse von Indikatoren und Oszillatoren unmöglich, ohne dabei zu berücksichtigen, sie gleichzeitig an ein Kurs-Chart zu binden. Allerdings überladen bereits zehn verschiedene Indikatoren auf einem Chart dieses deutlich. Die erhaltenen Zahlen werden verworren und ungeeignet zur Analyse. Ein in diesem Artikel beschriebener Expert Advisor kann dieses Problem lösen und macht die Durchführung der vergleichenden Analyse komfortabler.



Expert Advisor

Beachten Sie, dieser EA ist nicht für die Ausführung von Live-Trading gedacht, und enthält aus diesem Grund keinen Money-Management Block. Der Block für die Handelsausführung ist auf eine sehr einfache Weise implementiert. Die Hauptaufgabe dieses Expert Advisors ist die Bereitstellung von Informationen über das Vorhandensein oder Fehlen von Signalen von verschiedenen Indikatoren in Verbindung mit einem Kurs-Chart.

Das Programm analysiert die folgenden Indikatoren und Oszillatoren:


  1. Acceleration/Deceleration — АС
  2. Accumulation/Distribution - A/D
  3. Alligator & Fractals
  4. Gator Oscillator
  5. Average Directional Movement Index - ADX
  6. Average True Range - ATR
  7. Awesome Oscillator
  8. Bears Power
  9. Bollinger Bands
  10. Bulls Power
  11. Commodity Channel Index
  12. DeMarker
  13. Envelopes
  14. Force Index
  15. Ichimoku Kinko Hyo (1)
  16. Ichimoku Kinko Hyo (2)
  17. Ichimoku Kinko Hyo (3)
  18. Money Flow Index – MFI
  19. Moving Average
  20. MACD (1)
  21. MACD (2)
  22. Moving Average of Oscillator (Гистограмма MACD) (1)
  23. Moving Average of Oscillator (Гистограмма MACD) (2)
  24. Parabolic SAR
  25. RSI
  26. RVI
  27. Standard Deviation
  28. Stochastic Oscillator (1)
  29. Stochastic Oscillator (2)
  30. Williams Percent Range

Für die Umsetzung dieser Aufgabe wird eine digitale Matrix, bestehend aus "-1", "0" und "1" in das Chart gezeichnet. Jede Matrix-Linie gehört zu einem bestimmten Indikator oder Oszillator. Die Matrixspalten werden in jedem Augenblick gebildet (entsprechend der gewählten Chart-Periode). Das Erscheinen von "-1" in einer bestimmten Matrixzeile bezeichnet das Vorhandensein eines Signals zum Verkaufen, erzeugt durch einen bestimmten Indikator (Oszillator). Das Erscheinen von "1" - Vorhandensein eines Kauf-Signals, "0" bezeichnet das Fehlen jeglichen Signals. Abb. 1 veranschaulicht das Programm-Betriebsergebnis.

Abb. 2 veranschaulicht die Analyse den RVI Betrieb basierend auf der Matrix. In der Zeile 26 (sie enthält Daten über diesen Indikator) wird "1" aufgezeichnet, wenn die Hauptlinie sich über die Signal-Linie bewegt (der Indikator empfiehlt zu kaufen), "-1" - wenn die Signal-Linie über der Hauptlinie ist (Verkaufen - Sell-Signal). Durch die Indikator-Eigenschaften enthält die Linie kein "0".


Aufgrund der Charakteristik von Indikatoren und Oszillatoren, können wir zwei Arten von Indizes in der Matrix erkennen: gleichbleibend wichtige, die entsprechenden Flags (Werte in der Matrix) die nie gleich Null sind, und punktuell wichtige, deren Flags Null akzeptieren können und Signale nur in bestimmten Augenblicken erstellen (zum Beispiel, Parabolic SAR). Es ist in Abb. 3 dargestellt.

Es wird empfohlen die erhaltenen Informationen zu analysieren und ein Paket aus Indikatoren auf die folgende Weise zu bilden. Zuerst wählen sie den Chartteil mit einem Trend. Dann wird die Periode möglicher Trades bestimmt. Der Beginn eines solchen Trends kann ein seitwärts laufender Zeitraum vor den ausgewählten Trend oder der Trend-Entstehung sein, das Ende des Zeitraums ist der letzte Augenblick, in dem der Trend noch profitabel ist. So werden vorausschauende und späte Indikator-Signale nicht berücksichtigt. In Abb. 4 ist ein solcher Zeitraum durch grüne Linien angegeben. Danach werden die Informationen von Indikatoren (Oszillatoren) innerhalb dieses Zeitraums analysiert: Alle Indikatoren die den Trend richtig anzeigen, werden genommen. die anderen werden beiseitegeschoben. Danach kann das Paket erweitert oder eingegrenzt werden, durch die gleiche Analyse in anderen Zeitrahmen, als Ergebnis wird das endgültige Paket gebildet.

Das Programm erlaubt die Prüfung gebildeter Pakete. Zu diesem Zweck werden in einer entsprechenden Zeile des Strategie-Ausführungsblocks Bedingungen aufgezählt (Indikatoranzeigen), auf denen basierend die endgültige Entscheidung über Verkaufen (oder Kaufen) getroffen wird.

Somit bietet die kombinierte Analyse des Kursverhaltens und durch jeden bestimmten Indikator (Oszillator) erzeugte Signal, die Möglichkeit der Auswahl der effizientesten von ihnen, zur weiteren Bildung eines Pakets aus Indikatoren.



Algorithmus

In der ersten Phase werden die Werte aller "flags" (-1, 0, 1) für jeden Indikator (Oszillator) bestimmt. Angenommen, dass ein Indikator (z.B. MACD) Signale auf unterschiedliche Arten erzeugt (Konvergenz/Divergenz, kreuzen der Null-Linie, usw.), enthält der Programm-Code die Beschreibung der bestimmenden Grundsätze. Zum Beispiel ist die Analyse des Oszillators "Williams Percent Range" wie folgt implementiert:

//30. Williams Percent Range
//Buy: crossing -80 upwards
//Sell: crossing -20 downwards
if (iWPR(NULL,piwpr,piwprbar,1)<-80&&iWPR(NULL,piwpr,piwprbar,0)>=-80)
{f30=1;}
if (iWPR(NULL,piwpr,piwprbar,1)>-20&&iWPR(NULL,piwpr,piwprbar,0)<=-20)
{f30=-1;}

Danach werden einzigartige Objekte des Typs 'Text' aus den erhaltenen digitalen Werten der Flags gebildet (zur Vermeidung von doppelten Objektnamen wird der aktuelle Zeitwert verwendet) und angezeigt:

timeident=TimeCurrent(); //Time to form the unique object name
for (i=0;i<=29;i++) //Loop for displaying values
 
//Forming unique object names
{ident=DoubleToStr(30-i,0)+"   "+DoubleToStr(timeident,0); 
 
//Creating objects, indicating their location
ObjectCreate(ident,OBJ_TEXT,0,timeident,WindowPriceMin()+Point*5*(i+1));
 
info=DoubleToStr(f[30-i],0); //Forming a text line to be displayed
ObjectSetText(ident,info,6,"Arial", Black);} //Describing the format of displaying and displaying

Um das gebildete Paket zu überprüfen, enthält das Programm "Den Block zur Verarbeitung einer Strategie und zum Platzieren der Haupt-Flag (The block of processing a strategy and placing the Main Flag)". Dieser Block enthält Bedingungen, die angeben welcher EA kaufen muss (wenn die Main-Flag gleich 1 ist) und verkaufen (wenn die Main-Flag gleich -1 ist). Sind die beschriebenen Bedingungen nicht erfüllt, bleibt die Main-Flag gleich Null und es werden keine Trades ausgeführt. Der EA enthält außerdem einen Block zu Schließen von Positionen (er ist kommentiert).


 
if(f8==1&&f21==1) //Set of conditions, providing which Buy is executed
flag=1;
if(f8==-1&&f21==-1) //Set of conditions, providing which Sell is executed
flag=-1;

Die Parameter von jedem Indikator (Oszillator) werden in Form von Variablen beschrieben, die deren automatische Optimierung ermöglichen (ursprüngliche Parameter sind die allgemein akzeptierten).



Fazit

Wie oben gesagt, ist der angebotene Expert Advisor kein fertiges automatisiertes Handelssystem. seine Hauptaufgabe ist die Durchführung einer vergleichenden Analyse von Indikatoren und Oszillatoren, zur weiteren Bildung eines Pakets. Der EA demonstriert, dass die von Indikatoren erzeugte Signale ohne das Überladen des Desktops eines Traders, die Analyse sehr komfortabel machen.

Die Flexibilität des EA liegt in dem Folgenden: ein neuer Satz an Indikatoren kann in die Matrix eingefügt und gebildete Pakte können auf historischen Daten getestet werden.

Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalartikel: https://www.mql5.com/ru/articles/1518

Beigefügte Dateien |
Matrix.mq4 (32.39 KB)
Expert Advisors Basierend auf Beliebten Handelssystemen und Alchemie der Handelsroboter Optimierung (Teil II) Expert Advisors Basierend auf Beliebten Handelssystemen und Alchemie der Handelsroboter Optimierung (Teil II)
In diesem Artikel fährt der Autor fort mit dem Analysieren der Umsetzung von Algorithmen einfachster Handelssysteme und beschreibt einige relevante Einzelheiten der Verwendung von Optimierungsergebnissen. Der Artikel wird nützlich sein für beginnende Trader und EA-Autoren.
Ein Trader Assistent Basierend auf Erweeiterter MACD Analyse Ein Trader Assistent Basierend auf Erweeiterter MACD Analyse
Das Skript 'Trader's Assistant' hilft Ihnen eine Entscheidung beim Öffnen von Positionen zu treffen, auf Grundlage der erweiterten Analyse des MACD-Status für die letzten drei Balken im Echtzeit-Trading auf jedem Zeitrahmen. Es kann außerdem für Backtests verwendet werden.
Die Modellierung der Requotes im Tester und die Stabilitätsanalyse des Expert Advisors Die Modellierung der Requotes im Tester und die Stabilitätsanalyse des Expert Advisors
Requote - ist eine Plage vieler Experten, insbesondere bei denjenigen, die ziemlich empfindlich sind, um einen Trade zu schließen oder zu öffnen. Der Artikel bietet eine Methode an, um die Stabilität des Expertes vor Requotes zu überprüfen.
Expert Advisors Basierend auf Beliebten Handelssystemen und Alchemie der Handelsroboter Optimierung (Teil III) Expert Advisors Basierend auf Beliebten Handelssystemen und Alchemie der Handelsroboter Optimierung (Teil III)
In diesem Artikel fährt der Autor fort mit dem Analysieren der Umsetzung von Algorithmen einfachster Handelssysteme und führt ein in die Automatisierung von Backtests. Der Artikel wird nützlich sein für beginnende Trader und EA-Autoren.