![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Hallo zusammen!
Ich bin auf diesen Fehler gestoßen (oder vielleicht habe ich etwas falsch verstanden)
Wenn man sich die Historie für einen Monat ansieht, zeigt sie angemessene Daten, d.h. verdient 740, getauscht -250
Wenn ich mir den gesamten Zeitraum anschaue, sind die 500 verdienten Punkte und der Tausch fast identisch
Deshalb verstehe ich auch nicht, wie es sein kann, dass der Verdienst für den gesamten Zeitraum geringer ist als die monatliche Summe.
Bei Bedarf kann ich Berichte über den Verlauf beifügen
Wenn Sie also einen 5. schwebenden Buy-Stop-Auftrag mit einer offenen Position von 3 Lots und 4 bestehenden Buy-Stop-Aufträgen von je 3 Lots (mit einem Limit von 15 Lots) platzieren, sollten Sie keinen Erfolg haben.
Im Allgemeinen ja - in Bezug auf das, was in der Hilfe beschrieben ist.
Aber logischerweise - nicht unbedingt. Auf den Börsenmärkten gibt es nur Limit-Orders im Stapel, während Stop-Orders auf dem Server des Brokers gespeichert werden und zwei Parameter haben - den Aktivierungspreis (Price" in MT) und den Preis der platzierten Limit-Order (der schlechteste Preis, zu dem der Handel ausgeführt werden kann). Dies ist ähnlich wie das BuyStopLimit und SellStopLimit in MT5, nur dass das Limit gleich dem Stoppkurs oder höher (für BuyStopLimit) oder niedriger (für SellStopLimit) sein kann. An den Aktienmärkten führt das Setzen eines höheren Limits (für Käufe) zu einem Abschluss, während dies bei MT nicht möglich ist. So haben an den Börsen, insbesondere an den unterentwickelten Märkten (z.B. an der ukrainischen Börse), die Stops oft (und besonders am Tag des Verfalls eines vierteljährlichen Index-Futures zwischen 16:30 und 16:35 Uhr) keine Zeit zu arbeiten, und die Tasse ist mit Limit-Orders gefüllt, die unter normalen Bedingungen sofort zur Ausführung führen würden.
Also - Limit auf dem Markt - feste Verpflichtung zum Kauf / Verkauf (wenn Geld plötzlich knapp werden, kann der Makler den Auftrag zu entfernen, aber früher als es zur Ausführung kommen wird), während STOP - einfach eine Aufzeichnung auf dem Server Broker, so dass im Moment des Erreichens der Aktivierung Preis der Makler kann freie Mittel zu schätzen und zu entscheiden - aussetzen Limit oder nicht. Deshalb sage ich ja, dass man bei Grenzwerten die Grenzwerte einhalten muss, bei Stopps aber theoretisch nicht.
Zu DoubleToString gekommen ? :)
Sehen Sie sich NormalizeDouble an:
Sie müssen bedenken, dass eine normalisierte Zahl bei der Ausgabe in das Journal mit Print() mehr Dezimalstellen enthalten kann, als Sie erwarten würden.
Nichts Verwirrendes?
Ah, schauen Sie sich NormalizeDouble an:
Irgendetwas verwirrend?
Nein, nichts Verwirrendes. In Ihrem Beispiel
Es gab keinerlei Hinweis auf die Verwendung der Funktion NormalizeDouble() und normalisierter Zahlen. Dementsprechend ist meine Bemerkung"Have you got to DoubleToString?:)" wurde von einem Zitat der FunktionDoubleToString() begleitet, ohne dass es auch nur den Hauch einer Verlegenheit gab.Und niemand hat bisher die Relevanz dieses Zitats widerlegt.Nein, nichts ist verwirrend. In Ihrem Beispiel.
Es gab nie einen Hinweis auf die Verwendung der Funktion NormalizeDouble() und normalisierter Zahlen. Dementsprechend ist meine Bemerkung"Have you got to DoubleToString?:)" wurde von einem Zitat der FunktionDoubleToString() begleitet, ohne dass es auch nur den Hauch einer Verlegenheit gab.Und niemand hat bisher die Relevanz dieses Zitats widerlegt.Eigentlich beziehe ich mich nicht auf Ihren Kommentar, sondern auf das Andocken an NormalizeDouble().
Im Allgemeinen ja - in Bezug auf das, was in der Hilfe beschrieben ist.
Aber logischerweise - nicht unbedingt. Auf den Börsenmärkten gibt es nur Limit-Orders im Stapel, während Stop-Orders auf dem Server des Brokers gespeichert werden und zwei Parameter haben - den Aktivierungspreis ("Price" in MT) und den Preis der Limit-Order, die platziert wird (der schlechteste Preis, zu dem der Handel ausgeführt werden kann). Dies ist ähnlich wie das BuyStopLimit und SellStopLimit in MT5, nur dass das Limit gleich dem Stoppkurs oder höher (für BuyStopLimit) oder niedriger (für SellStopLimit) sein kann. An den Aktienmärkten führt das Setzen eines höheren Limits (für Käufe) zu einem Abschluss, während dies bei MT nicht möglich ist. So haben an den Börsenmärkten, insbesondere an den unterentwickelten (z.B. an der ukrainischen Börse), oft (und besonders am Tag des Verfalls eines vierteljährlichen Index-Futures zwischen 16:30-16:35) die Stopps keine Zeit zu arbeiten, und die Tasse ist mit Limit-Ordern gefüllt, die unter normalen Bedingungen sofort zur Ausführung führen würden.
Also - Limit auf dem Markt - feste Verpflichtung zum Kauf / Verkauf (wenn Geld plötzlich knapp werden, kann der Makler den Auftrag zurückziehen, aber früher als es zur Ausführung kommen wird), während STOP - einfach eine Aufzeichnung auf dem Server Broker, so dass im Moment des Erreichens der Aktivierung Preis der Makler kann freie Mittel zu schätzen und zu entscheiden - aussetzen Limit oder nicht. Deshalb sage ich, dass bei Grenzwerten die Grenzen eingehalten werden müssen, während sie bei Anschlägen theoretisch nicht eingehalten werden müssen.
Vielen Dank für die ausführliche Erklärung.
Valery, haben Sie versucht, eine Auto-Strategie in MT5 Strategy Tumbler zu implementieren? Ich habe es vor etwa einem Monat versucht und es hat nicht funktioniert, niemand hat im Forum geantwortet. Ich weiß nicht, ob es sich um einen Fehler oder ein Missverständnis meinerseits handelt. Bringen Sie etwas Licht ins Dunkel. :)
Guten Tag!
Bitte beraten Sie, ich habe ein iCustom Indikator in einem normalen Programm Körper, es funktioniert gut und bekommt den Griff.
Wenn ich ihn in der EX5-Bibliothek platziere, erhalte ich den Indikator handle=-1 und das Hauptprogramm kann den Indikator nicht aufrufen:
"Laden von DZMACD EURGBP,M15 fehlgeschlagen"
"Benutzerdefinierter Indikator 'DZMACD' kann nicht geladen werden [4002]"
Gleichzeitig arbeiten Standardindikatoren wie iMA oder iMACD ganz normal in der gleichen ex5-Bibliothek, sie erhalten den Griff.
Ich weiß nicht, was ich falsch mache oder ob es ein Fehler ist?
intday;// Tag
Eigentlich beziehe ich mich nicht auf Ihren Kommentar, sondern auf das Dokument NormalizeDouble().
Der Wortlaut der Nachricht lautete wie folgt:
Sind Sie zu DoubleToString gekommen ? :)
Ah, schauen Sie sich NormalizeDouble an:
Ist Ihnen denn gar nichts peinlich?
Das heißt, es gab ein direktes Zitat aus "meinem Kommentar" mit dem Vorschlag "schauen Sie dort oben etwas anderes nach" und der Frage "ist das verwirrend?".
Wenn Sie nur neue Forschungsergebnisse in der Form "...über ein Dock von NormalizeDouble()" präsentieren wollten, würden Sie es so schreiben, ohne unnötige Informationen zu zitieren. Ich denke schon :/
Da Ihr Beitrag jedoch einen benannten Link und genau zu meiner Replik verwendet - musste ich klarstellen, dass NormalizeDouble() nichts mit meiner Replik oder Ihrem ursprünglichen Beitrag zu tun hatte, den ich mir erlaubt habe zu kommentieren.
Guten Tag!
Bitte beraten, ich habe iCustom Indikator in der üblichen Körper des Programms funktioniert gut, es wird handel, alles funktioniert.
Wenn ich ihn in der EX5-Bibliothek platziere, erhalte ich Handel= -1 und das Hauptprogramm kann den Indikator nicht aufrufen:
"Laden von DZMACD EURGBP,M15 fehlgeschlagen"
"Benutzerdefinierter Indikator 'DZMACD' kann nicht geladen werden [4002]"
Gleichzeitig funktionieren Standard-Indikatoren wie iMA oder iMACD in der gleichen ex5-Bibliothek einwandfrei, sie erhalten den Griff.
Ich kann nicht verstehen, was ich falsch mache, oder ist es ein Fehler?
ERR_WRONG_INTERNAL_PARAMETER
4002
Fehlerhafter Parameter in internem Client-Terminal-Funktionsaufruf