Ist es möglich, irgendeine Funktion des "mql code"-Postings in diesem Forum zu erstellen? - Seite 3

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
Und dieser Beitrag darüber, wie man Nullabweichungen findet/behebt: https://www.mql5.com/en/forum/general
Es werden einige Funktionen erklärt:
- Sammlung nützlicher MT4-Funktionen zur Kodierung von wolfe.
- Professionelle MM-Funktion von Nicholishen.
- Geldverwaltungsfunktion von Kalenzo.
- einige einfache MM-Codes.
- FILE_READ | FILE_WRITE Funktion.
- DefindTrade(..) Funktion von phoenix.
- Datumsformat-Funktion.
- alert display Funktion.
- sleep()-F unktion.
- Funktion für Hoch und Tief.
- iCustom Funktion: guter Dreier von Codersguru.
- E-Mail/SMS-Funktionen Links.
- alle Funktionen von Codersguru Website.
- Funktion, die ein Array zurückgibt.
- IsStopped( ) Funktion.
- Wie man die Funktion Hour() verwendet.
- Funktion zum effektiven Schließen aller Aufträge.
- Alert Once.
- Alerts: viele Funktionen und Beispiele.
- Sehr WICHTIG für ALLE MTF-Indikatoren.
- Einfaches iCustom und Alerts!: sehr guter Thread von Codersguru.
- Höchster Stand.
- Wie man nur bei Kerzenschluss alarmiert.
- icustom Funktion Links.
- Null-Abweichung Fixierung.
- Zero Devide Fixing total.
- die anderen Money-Management-Funktionen.
- wie man eine Order pro MetaTrader, oder eine Order pro Simbol (eurusd, gbpusd ...), oder eine Order pro Chart, oder eine pro Kerze codiert.
Tastenkombinationen im MetaTrader:
https://www.mql5.com/en/forum/178343
https://www.mql5.com/en/forum/172885
https://www.mql5.com/en/forum/176626
Wenn der Makler eine weitere Ziffer hinzufügt?
https://www.mql5.com/en/forum/179191
Ermitteln des aktuellen Sitzungshöchststandes.
Kodierung eines benutzerdefinierten Indikators ohne die mq4-Datei.
Ungewöhnlicher Fehler
Hallo Leute,
Ich habe einen EA kodiert und bin auf einen ungewöhnlichen Fehler gestoßen. Also, ich möchte Ihre Hilfe mit diesem Fehler auf MT4, die ich glaube, einige von Ihnen, in all Ihrer Erfahrung, kann bereits die gleiche konfrontiert haben.
Den gesamten EA zu lesen ist vielleicht unpraktisch, der Quellcode ist sehr groß.
Nach erfolgreicher Kompilierung, im Tester, meldet das MT4 Journal folgenden Fehler
Zeit: 2011.01.28 23:35:36
Meldung: 2007.07.13 00:00 InterCandles EURUSDFXF,H4: Stack-Überlauf.
Selbst Erhöhung der Stackgröße in den Himmel über
#Eigenschaft stacksize 167692160
die, glaube ich, 16MB Speicher zuweist, bleibt der Fehler bestehen.
Hat jemand das gleiche Problem der"Stack Overflow" in der Tester konfrontiert, oder kann darauf hinweisen, ob das Problem MT4 intern ist, oder in der EA (möglicherweise in Array, verschachtelte Deklarationen, zu große ex4-Datei, etc)?
Ich danke Ihnen für Ihre Hilfe und entschuldige mich dafür, dass ich Ihre Zeit in Anspruch genommen habe.
Ich danke Ihnen.
Lösung des Problems
Nun, bevor jemand antwortet, habe ich die Lösung gefunden.
Vor der Verwendung der Funktion, kurz nachdem der Tester den EA geladen hat - der die angehängte Bibliothek verlinkt -, wird die Meldung "stack overflow" im Journal angezeigt.
Das Problem wurde bei der Funktion mit dem Namen "power" in der angehängten Datei gefunden. Meine Schlussfolgerungen sind die folgenden:
1) Sicherlich gibt es kein Problem mit dem Namen; keine MQL-Funktionskollision in der Symboltabelle des EX4. Andere Bezeichnungen wurden getestet.
2) Offenbar wurde keine Grenze der Funktionen erreicht. Weitere Funktionen wurden nach dem Entfernen der problematischen Funktion hinzugefügt und der Fehler trat nicht auf. Funktioniert nur durch Entfernen dieser Funktion, nicht nur durch Aufheben der Verknüpfung in der EX4-Datei durch den MT4-Compiler.
3) Die Rekursion wird über viele Aufrufe ausgeführt und die Ergebnisse werden auf dem Stack abgelegt. Der Stapel wächst linear asymptotisch, wenn das Argument "Exponent" exponentiell wächst. Potenziell kann der Stapel seine Grenze erreichen und überlaufen. Der Fehler "Stack Overflow" tritt unabhängig von der Ausführung dieser Funktion auf.
Daher vermute ich, dass der MT4-Compiler über eine Vorrichtung zur Erkennung von [einigen Klassen von] Rekursionen verfügt, die in der Sprache nicht erlaubt sind, um einen potenziellen Stack-Überlauf während der EA-Ausführung zu vermeiden.
Details (Einstellungen) von EA auf dem Chart angezeigt
SEHR SICHERSTELLEN, dass eine ordermodify() erfolgreich ist
Globale Variablen-Ersetzung
wie man erkennt, ob eine Datei existiert: Ich weiß, dass in einem EA können wir versuchen, eine Datei mit FileOpen(...) zu lesen und erhalten den Fehler mit ...