Schau, wie man Roboter kostenlos herunterladen kann
Finden Sie uns auf Twitter!
und werden Sie Mitglied unserer Fangruppe
Interessantes Skript?
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Hat Ihnen das Skript gefallen?
Bewerten Sie es im Terminal MetaTrader 5
Ansichten:
800
Rating:
(24)
Veröffentlicht:
2016.04.06 15:21
\MQL4\Include\
Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance

Achtung: Diese Bibliothek ist nicht dokumentiert und arbeitet eventuell nicht in anderen Versionen des MetaTraders

Zu den normalen MQL4 Funktionen gibt es noch die sehr hilfreiche Funktion MarketInfo(), welche sehr viele Informationen über das aktuelle Finanzinstrument liefert. Aber manchmal werden weitere Informationen über das Finanzinstrument benötigt. Zum Beispiel die Liste der Symbole, wie sie in dem MarketWatch-Fenster aufgelistet sind, deren Reihenfolge, die vollständige Beschreibung des Instrumentes oder eine Liste über die beim Broker verfügbaren Finanzinstrumente.

Wir haben herausgefunden dass bei jeder Änderung in dem MarketWatch Fenster der Client-Terminal die Datei symbols.sel in dem history-Verzeichnis ändert. Die Analyse der Struktur dieser Datei hat uns gezeigt, dass das Terminal für jedes Finanzinstrument eine 128 Byte große Struktur bildet. Die ersten zwölf Bytes werden für den Symbolnamen verwendet, die anderen Bytes werden mit Informationen wie: Bid, Ask, High, Low, etc gefüllt. Die Reihenfolge der Finanzinstrumente ist die gleiche, wie sie in dem MarketWatch Fenster zu sehen ist. Jede Änderung der Reihenfolge in dem Fenster wird auch in der Datei nachvollzogen.


Hinweis: Die ersten 4 Bytes werden für die MQL Version reserviert und sind konstant


Aber die Informationen in dieser Datei sind nicht komplett. Insbesondere wenn das MarketWatch Fenster nicht alle Finanzinstrumente auflistet. Daher reicht es nicht aus diese Datei zu analysieren, wenn sie alle verfügbaren Symbole ihres Brokers auswerten möchten. Eine gute Idee basiert auf der Analyse der Datei symbols.raw was von kaisa vorgeschlagen wurde. Aber der Gebraucht über die Implementation einer API Funktion ist nicht die beste Lösung.

Dieses Problem kann mit "reinem" MQL-Code gelöst werden. Die Analyse der Struktur dieser Datei hat ergeben, dass jedes Symbol in einer binären Struktur mit der Größe von 1936 bytes abgelegt wird. Die ersten 12 Bytes sind für den kurzen Symbolnamen, und der nächste 64-Bytes Block enthält eine ausführliche Symbolbeschreibung.

Auf der Basis dieser Analyse wurde eine Bibliothek entwickelt, die sehr viele Funktionen für mehr Informationen über das Finanzinstrument beinhaltet.

Hier ist eine Liste der verfügbaren Funktionen:

SymbolsList

- Liefert eine Liste der Symbole zurück (Gemäß "Market Watch" oder alle Symbole).

SymbolDescription

- Liefert eine detaillierte Beschreibung des angegebenen Finanzinstrumentes.

SymbolType - Gibt den Typ des Finanzinstrumentes zurück.

Ein Beispiel für die Verwendung dieser Bibliothek wird in dem folgenden Skript SymbolsSample.mq4 gezeigt.


Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/ru/code/9102

MACD_Signals MACD_Signals

Signal-Indikator basierend auf MACD

Flipperautomat Flipperautomat

Flipperautomat

Fibo Pivot Lines GMT Fibo Pivot Lines GMT

Fibo Pivot Lines GMT Indikator.

LeManSignal LeManSignal

Dieser Indikator zeigt Tradingsignale.