![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
Wäre es sinnvoll, dies auf diese Weise zu tun?
Ich würde auch gerne eine Pause von if() einlegen.
So etwas habe ich in den gängigen Programmiersprachen noch nicht gesehen...
О. Das ist es, genau das Richtige.
Die positive Aussage in dieser Aussage ist, dass es schlecht ist, wenn es nicht in anderen Sprachen ist, es bedeutet, dass es etwas Fremdes und Unnötiges ist.
Meiner Meinung nach stimmt das überhaupt nicht.
Ich stimme zu. Aber man muss die Situation auch von einer höheren Ebene der Zweckmäßigkeit aus betrachten. Die Priorität von MQ, und auch unsere(!), ist es, MQL als Sprache des automatisierten Handels zu verbessern und seine Handels- und Analysemöglichkeiten zu entwickeln. Und MQ hat in dieser Richtung noch viele ungelöste Probleme.
Und die Implementierung von nicht standardisierten Programmierstrukturen, die nichts mit dem Handel zu tun haben - dafür wurde MQL nicht geschaffen. Wenn die Entwickler sich irgendwie von anderen Sprachen abheben wollten, hätten sie zum Beispiel Prolog und nicht C++ verwendet. :) (Obwohl es für mich persönlich, als Prolog-Fan, interessant gewesen wäre, das zu sehen. :) )
Ich denke, egal wie sehr die Programmierer hier nach einem Breakif fragen, es ist unwahrscheinlich, dass MQ Zeit darauf verschwendet. Und meiner Meinung nach werden sie das Richtige tun. Und ich schlage allen vor, MQ nicht mit Anfragen zu belästigen, die sie von dringenderen Aufgaben ablenken, nämlich MQL als automatisierte Handelssprache zu verbessern.
SK. schrieb (a):
Komplexe Konstrukte werden nicht nur auf der Grundlage von Schleifen und Listen gebildet. Sie werden ebenfalls auf der Grundlage von Wenns gebildet. Daher wäre ein kontrollierter Übergang zu einem externen Schließbügel sinnvoll.
Ich bin ganz für Goto. :)
Die Logik eines solchen Programms wäre transparenter. Schließlich ist breakif ein frühzeitiger Ausstieg aus einer if-Konstruktion. Wie jeder vorzeitige Ausstieg sollte er unter einer Bedingung erfolgen, d.h. innerhalb eines weiteren if. Wir sprechen also von breakif als Ausstiegsoperator nicht für ein, sondern für zwei(!) if's, was das Verständnis der Logik eines Programms erschwert und auch vom allgemeinen Konzept der Breaks(breakfor, breakwhile, etc.) als Operatoren, die nur für ein Konstrukt aussteigen, abweicht. Vielleicht ist das der Grund, warum die Entwickler anderer Sprachen einen solch fragwürdigen Operator noch nicht eingeführt haben...
Und ich schlage allen vor, MQ nicht mit Anfragen zu belästigen, die von den dringenderen Aufgaben der Verbesserung von MQL als automatisierte Handelssprache ablenken.
Ich bin sehr dafür. :) Die Logik eines solchen Programms wird transparenter sein.
Liebe Entwickler! Bitte lassen Sie sich nicht "von den dringenderen Aufgaben der Verbesserung von MQL als automatisierte Handelssprache" ablenken.
Wir werden Sie nicht mehr belästigen.
Das Einzige, was Sie noch tun müssen, ist, die Meinung von ds2 zu berücksichtigen.
Inspiriert durch den Artikel von Skeptic Filozov - ah, tragen Sie den durchschnittlichen Gewinn und Verlust in Pips und die maximalen und minimalen Trades ebenfalls in den Testbericht ein.
Anfragen nur lesen
Funktionen eingeben oder aktuelle Funktionen auf alle Unterordner des Terminals zugreifen lassen
wo es Material zu verarbeiten gibt: z.B. Baumstämme
Nur-Lese-Modus".
Planen Sie einen weiteren Ordner \experts\services
Dort würden alle möglichen Informationen aus dem DM zentral geschrieben werden.
Zum Beispiel eine automatisch aktualisierte, formatierte Kalenderdatei, Nachrichten "in Zahlen" usw...
Wenn Sie klären müssen, worum es in der Anfrage geht, ist das kein Problem. ;)
In der Grafik wäre es schön,
1. hairline zu haben, da Linien der Dicke 1 grob aussehen.
2. es wäre schön, wenn die Zeilen mit Ziffern+2 gerundet angezeigt würden.
Zurzeit sind die Linien an den Ziffern des Werkzeugs abgerundet, was zu einem Sprungbrett führt.
-Im Umfeld moderner grafischer Produkte fällt dies auf und ist in der Praxis nicht mehr sinnvoll.
z.B. in Form von
Dieser empfängt/startet auch wie Start, aber nicht von einem Server, sondern von einem lokalen Timer des Terminals.
Der erforderliche Zeitraum der technologischen Zecken wird niemandem schaden: von 1 bis 3 Sekunden.
Diese Änderung kann direkt in MQL-4 eingeführt werden, ohne auf die Version 5 zu warten. Sozusagen um des Testens willen und um des Geschäfts willen.
FEHLER in METALANG
Die Initiierung von Doppelvariablen durchläuft die Kompilierung ohne Fehler oder Warnung.
Eine lokale Variable maskiert eine globale Variable. Es liegt kein Fehler vor.
Korey, Null, weil die externe Variable maskiert ist:
- Es handelt sich um eine nicht initialisierte Deklaration einer lokalen Variable innerhalb der Funktion start(). Standardmäßig ist er auf Null initialisiert. Alle Funktionen, die in start() aufgerufen werden und den Eingabeparameter Lot haben, erhalten den Wert einer lokalen Variable, nicht einer externen. Die einzige Ausnahme bilden die Funktionen innerhalb von init(), die vor start() ausgeführt werden. Dort muss der Lot-Parameter (wenn er nicht ähnlich maskiert ist) den Wert einer externen Variablen erhalten, d.h. 0,2.
Sie haben den falschen oder unvollständigen Code zitiert. Von wo aus rufen Sie my_funck() auf?
Wenn es sich um eine Maskierung handelt, warum erhalten dann die anderen Funktionen 0 und nicht 0,2, wie in der Extern vorgeschrieben?
Sie müssen die Angaben selbst überprüfen. Hier ist ein einfaches Skript:
und die Ergebnisse des Skripts.