Diskussion zum Artikel "Ein manuelles Chart- und Handelswerkzeug (Teil III). Optimierungen und neue Werkzeuge"
Es gibt einige Probleme beim Kompilieren der englischen Version. In der Datei "Utilites.mqh" hat der Übersetzer das Leerzeichen durch etwas anderes ersetzt.
Wenn Sie also beim Kompilieren die Fehlermeldung "Declaration without type" sehen, machen Sie einen Doppelklick auf den String mit dieser Meldung - die IDE wird diesen String im Editor öffnen. Dann müssen Sie EIN falsches Symbol auswählen (wie üblich wird es zwischen dem Hauptcode und den Kommentaren sein) und Strg+H drücken oder Suchen -> Ersetzen im Hauptmenü wählen.
In der oberen Zeile (Suchen) fügt die IDE das "falsche" Symbol ein, und in der unteren Zeile (Ersetzen) müssen Sie ein einfaches Leerzeichen einfügen. Dann drücken Sie die Taste "Replace all"...
Nun, die letzte Operation ist Kompilieren(Strg+F7).
Ich werde versuchen, die richtige Datei so bald wie möglich an den Moderator zu schicken.
Hallo. Tolles Tool, das Sie erstellt haben. Ich bin auch ein Handbuch und war auf der Suche nach einem solchen.
Aber ich habe normalerweise mehrere Fenster (Zeitrahmen) eines Tools auf mehreren Monitoren geöffnet.
Gibt es eine Möglichkeit für MQL, diese
gezeichneten Objekte auf allen geöffneten Fenstern eines Tools erscheinen zu lassen? Zum Beispiel, wie es in Tigertrade und anderen Plattformen gemacht wird.
Sie haben z.B. bei 5m gezeichnet, und die gleiche Ebene erscheint im Fenster mit 1m.
Ich bin überrascht, dass es keine solchen Werkzeuge in MQL gibt.
Ich danke Ihnen sehr
Hallo. Sie haben ein tolles Werkzeug geschaffen. Ich bin auch ein Hand-Trucker und war auf der Suche nach einem von diesen.
Aber ich habe normalerweise mehrere Fenster (Zeitrahmen) eines Tools auf mehreren Monitoren geöffnet.
Gibt es eine Möglichkeit für MQL, diese
gezeichneten Objekte auf allen geöffneten Fenstern eines Werkzeugs erscheinen zu lassen? Zum Beispiel, wie es in Tigertrade und anderen Plattformen gemacht wird.
Ich habe z.B. eine Ebene bei 5m gezeichnet, und die gleiche Ebene erscheint im Fenster mit 1m.
Es ist überraschend, dass es in MQL keine solchen Werkzeuge gibt.
Ich danke Ihnen vielmals.
Die Datei "Utilites.mqh" weist 101 Fehler auf, von denen die folgenden Fehler sind:
'New_Bar_First_Start' - Deklaration ohne Typ Utilites.mqh 80 5
mode' - Komma erwartet Utilites.mqh 80 25
New_Bar_First_Start' - Deklaration ohne Typ Utilites.mqh 1491 26
'mode' - Komma erwartet Utilites.mqh 1491 46
mode' - nicht deklarierter Bezeichner Utilites.mqh 1511 18
Is_Select_On_Create' - nicht deklarierter Bezeichner Graphics.mqh 307 45
Print_Warning_Messages' - nicht deklarierter Bezeichner Graphics.mqh 249 8
Print_Warning_Messages' - nicht deklarierter Bezeichner Graphics.mqh 361 8
CMouse' ist keine Klasse, Struktur oder Vereinigung Graphics.mqh 940 26
'Bar' - nicht deklarierter Bezeichner Graphics.mqh 940 34
Bar' - irgendein Operator erwartet Graphics.mqh 940 34
'(' - Semikolon erwartet Graphics.mqh 940 37
')' - Ausdruck erwartet Graphics.mqh 940 38
'allPrefixes' - nicht deklarierter Bezeichner Graphics.mqh 944 37
'[' - Array erforderlich Graphics.mqh 944 48
CMouse' ist keine Klasse, Struktur oder Vereinigung Graphics.mqh 959 6
Below' - nicht deklarierter Bezeichner Graphics.mqh 959 14
Below' - irgendein Operator erwartet Graphics.mqh 959 14
'(' - unausgewogene linke Klammer Graphics.mqh 959 5
')' - Ausdruck erwartet Graphics.mqh 959 20
')' - unerwartetes Token Graphics.mqh 959 21
illegales 'else' ohne passendes 'if' Graphics.mqh 968 3
Variable 'tmp_price' nicht verwendet Graphics.mqh 950 3
Variable 'tmp_time' nicht verwendet Graphics.mqh 954 3
'Simple_Vertical_Style' - nicht deklarierter Bezeichner Graphics.mqh 420 26
Simple_Vertical_Width' - nicht deklarierter Bezeichner Graphics.mqh 422 26
Simple_Horizontal_Style' - nicht deklarierter Bezeichner Graphics.mqh 430 28
Simple_Horizontal_Width' - nicht deklarierter Bezeichner Graphics.mqh 432 28
CMouse' ist keine Klasse, Struktur oder Vereinigung Graphics.mqh 434 14
'Window' - nicht deklarierter Bezeichner Graphics.mqh 434 22
'Window' - irgendein Operator erwartet Graphics.mqh 434 22
')' - unerwartetes Token Graphics.mqh 434 29
'Print_Warning_Messages' - nicht deklarierter Bezeichner Graphics.mqh 439 10
DEBUG_MESSAGE_PREFIX' - nicht deklarierter Bezeichner Graphics.mqh 442 15
allPrefixes' - nicht deklarierter Bezeichner Graphics.mqh 451 9
'[' - Array erforderlich Graphics.mqh 451 20
Print_Warning_Messages' - nicht deklarierter Bezeichner Graphics.mqh 462 10
DEBUG_MESSAGE_PREFIX' - nicht deklarierter Bezeichner Graphics.mqh 464 15
'CMouse' ist keine Klasse, Struktur oder Vereinigung Graphics.mqh 469 39
Preis' - nicht deklarierter Bezeichner Graphics.mqh 469 47
Preis' - irgendein Operator erwartet Graphics.mqh 469 47
'(' - ':' Doppelpunktzeichen erwartet Graphics.mqh 469 52
')' - Ausdruck erwartet Graphics.mqh 469 53
':' - unerwartetes Token Graphics.mqh 469 55
'(' - Ausdruck erwartet Graphics.mqh 469 52
'=' - Operand erwartet Graphics.mqh 469 24
Ausdruck hat keine Wirkung Graphics.mqh 469 57
'CMouse' ist keine Klasse, Struktur oder Vereinigung Graphics.mqh 470 37
'Time' - nicht deklarierter Bezeichner Graphics.mqh 470 45
Time' - irgendein Operator erwartet Graphics.mqh 470 45
'(' - ':' Doppelpunkt-Zeichen erwartet Graphics.mqh 470 49
')' - Ausdruck erwartet Graphics.mqh 470 50
':' - unerwartetes Token Graphics.mqh 470 52
'(' - Ausdruck erwartet Graphics.mqh 470 49
'=' - Operand erwartet Graphics.mqh 470 23
Ausdruck hat keine Wirkung Graphics.mqh 470 54
mögliche Verwendung einer nicht initialisierten Variablen 'Current_Object_Time' Graphics.mqh 478 5
mögliche Verwendung der nicht initialisierten Variablen 'Current_Object_Price' Graphics.mqh 479 5
'Print_Warning_Messages' - nicht deklarierter Bezeichner Graphics.mqh 516 8
DEBUG_MESSAGE_PREFIX' - nicht deklarierter Bezeichner Graphics.mqh 518 13
DEBUG_MESSAGE_PREFIX' - nicht deklarierter Bezeichner Graphics.mqh 573 11
DEBUG_MESSAGE_PREFIX' - nicht deklarierter Bezeichner Graphics.mqh 610 11
allPrefixes' - nicht deklarierter Bezeichner Graphics.mqh 672 37
'[' - Array erforderlich Graphics.mqh 672 48
allPrefixes' - nicht deklarierter Bezeichner Graphics.mqh 674 39
'[' - Array erforderlich Graphics.mqh 674 50
implizite Umwandlung von 'unknown' in 'string' Graphics.mqh 674 39
'CMouse' ist keine Klasse, Struktur oder Vereinigung Graphics.mqh 676 19
'Bar' - nicht deklarierter Bezeichner Graphics.mqh 676 27
Bar' - irgendein Operator erwartet Graphics.mqh 676 27
'(' - Semikolon erwartet Graphics.mqh 676 30
')' - Ausdruck erwartet Graphics.mqh 676 31
'CMouse' ist keine Klasse, Struktur oder Vereinigung Graphics.mqh 681 6
'Below' - nicht deklarierter Bezeichner Graphics.mqh 681 14
Below' - irgendein Operator erwartet Graphics.mqh 681 14
'(' - unausgewogene linke Klammer Graphics.mqh 681 5
')' - Ausdruck erwartet Graphics.mqh 681 20
')' - unerwartetes Token Graphics.mqh 681 21
illegales 'else' ohne passendes 'if' Graphics.mqh 687 3
Variable 'levels_descriptions' nicht verwendet Graphics.mqh 666 10
Variable 'time1' nicht verwendet Graphics.mqh 675 12
variable 'time2' nicht verwendet Graphics.mqh 675 19
'Pitchfork_Shiff_Colour' - nicht deklarierter Bezeichner Graphics.mqh 771 23
Pitchfork_Shiff_Width' - nicht deklarierter Bezeichner Graphics.mqh 772 23
Pitchfork_Shiff_Style' - nicht deklarierter Bezeichner Graphics.mqh 773 23
Pitchfork_Reverce_Colour' - nicht deklarierter Bezeichner Graphics.mqh 779 25
Pitchfork_Reverce_Width' - nicht deklarierter Bezeichner Graphics.mqh 780 25
Pitchfork_Reverce_Style' - nicht deklarierter Bezeichner Graphics.mqh 781 25
Pitchfork_Main_Colour' - nicht deklarierter Bezeichner Graphics.mqh 787 25
Pitchfork_Main_Width' - nicht deklarierter Bezeichner Graphics.mqh 788 25
Pitchfork_Main_Style' - nicht deklarierter Bezeichner Graphics.mqh 789 25
CMouse' ist keine Klasse, Struktur oder Vereinigung Graphics.mqh 824 26
Preis' - nicht deklarierter Bezeichner Graphics.mqh 824 34
Preis' - irgendein Operator erwartet Graphics.mqh 824 34
'(' - Semikolon erwartet Graphics.mqh 824 39
')' - Ausdruck erwartet Graphics.mqh 824 40
'CMouse' ist keine Klasse, Struktur oder Vereinigung Graphics.mqh 825 21
'Bar' - nicht deklarierter Bezeichner Graphics.mqh 825 29
Bar' - irgendein Operator erwartet Graphics.mqh 825 29
'(' - Semikolon erwartet Graphics.mqh 825 32
')' - Ausdruck erwartet Graphics.mqh 825 33
'CMouse' ist keine Klasse, Struktur oder Vereinigung Graphics.mqh 829 6
Below' - nicht deklarierter Bezeichner Graphics.mqh 829 14
Below' - irgendein Operator erwartet Graphics.mqh 829 14
'(' - unausgewogene linke Klammer Graphics.mqh 829 5
')' - Ausdruck erwartet Graphics.mqh 829 20
')' - unerwartetes Token Graphics.mqh 829 21
illegales 'else' ohne passendes 'if' Graphics.mqh 833 3
Variable 'base' nicht verwendet Graphics.mqh 827 19
'Short_Level_Length_In_Pixels' - nicht deklarierter Bezeichner Graphics.mqh 1050 6
Short_Level_Length_Pix' - nicht deklarierter Bezeichner Graphics.mqh 1053 20
101 Fehler, 11 Warnungen 101 12

- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Neuer Artikel Ein manuelles Chart- und Handelswerkzeug (Teil III). Optimierungen und neue Werkzeuge :
In diesem Artikel werden wir die Idee des Zeichnens von grafischen Objekten auf Charts mit Hilfe von Tastenkombinationen weiterentwickeln. Der Bibliothek wurden neue Werkzeuge hinzugefügt, darunter eine gerade Linie, die durch beliebige Scheitelpunkte gezeichnet wird, und eine Reihe von Rechtecken, die die Auswertung der Umkehrzeit und des Levels ermöglichen. Außerdem zeigt der Artikel die Möglichkeit, den Code zu optimieren, um die Leistung zu verbessern. Das Implementierungsbeispiel wurde umgeschrieben, sodass Shortcuts neben anderen Handelsprogrammen verwendet werden können. Erforderliche Code-Kenntnisse: etwas höher als die eines Anfängers.
Die erste Funktion bezieht sich auf den Effekt der Linienverschiebung bei kleineren Zeitrahmen. Wenn Sie Linien auf die übliche Art und Weise zeichnen, wird beim Wechsel zwischen den Zeitrahmen etwas Ähnliches erscheinen:
Der linke Rand der Linie, der genau mit einem Extremum bei D1 zusammenfällt, ist bei H4 nach links verschoben und fällt somit nicht mit dem Extremum zusammen. Dies ist ein offensichtlicher Effekt, da das Extremum eines Tages nicht auf den Tagesanfang fallen muss. Wenn Sie beim manuellen Zeichnen eine höhere Genauigkeit benötigen, können Sie die Linie ungefähr zeichnen und dann zu niedrigeren Zeitrahmen wechseln, um die Kanten anzupassen.
Diese Lösung bietet sich an, wenn Sie nur einen oder zwei Charts haben. Was aber, wenn Sie 20 davon haben? Oder sogar 100? Das kann lästig sein.
Da das Programm über eine automatische Zeichenfunktion verfügt, können wir diese Aufgabe dem Programm anvertrauen, wenn wir jedes Objekt zeichnen.
Autor: Oleh Fedorov