Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1187

 
Сергей Таболин:

Ich könnte mich irren, aber ich glaube, Sie haben keine Ahnung, wie der EA überhaupt funktioniert. Was meinen Sie mit "Programm wird ausgeführt"?

Ein Tipp: Finden Sie zunächst heraus, was OnInit, OnTick und OnDeinit sind. Ich denke, dass sich alles fügen wird ))))

Nach Ihrer Antwort zu urteilen, verstehen Sie selbst nicht wirklich, wie das Programm funktioniert. Da es sich um eine dumme Frage handelt. Ja, genau wie der vorherige Kommentator meint, dass es aufhört. Aus meiner Erfahrung mit der Programmierung in anderen Sprachen denke ich, dass es seinen Rumpf in einer Schleife ausführt, und wenn ein Ereignis eintritt, taucht es in dieses ein. Wenn das Programm seinen Körper in einer Schleife ausführt, erklärt das, warum das Programm so geschrieben ist.
 

Guten Tag zusammen, ich teste einen Expert Advisor in MT4.
Können Sie mir bitte sagen, wie ich die MQL4 Funktion Print() verwenden kann, um nur 1 Mal im MT4 Tester Log zu drucken und nur mit dem Wert der letzten Stunde. Hier ist ein einfacher Code.

int g;
void OnTick()
{
if (Hour()>g)
{
Print("------------------------------------=",Hour());
g=Hour();
}
}

Print() wird stündlich in der Log-Datei МТ-4 ausgedruckt.

2020.06.24 15:54:12.250 2010.01.04 06:00:00  ОПТИМ КОДА EURUSD,M1: ------------------------------------=6
2020.06.24 15:54:12.249 2010.01.04 05:00:00  ОПТИМ КОДА EURUSD,M1: ------------------------------------=5
2020.06.24 15:54:12.249 2010.01.04 04:00:00  ОПТИМ КОДА EURUSD,M1: ------------------------------------=4
2020.06.24 15:54:12.248 2010.01.04 03:00:00  ОПТИМ КОДА EURUSD,M1: ------------------------------------=3
2020.06.24 15:54:12.247 2010.01.04 02:00:00  ОПТИМ КОДА EURUSD,M1: ------------------------------------=2
2020.06.24 15:54:12.247 2010.01.04 01:00:00  ОПТИМ КОДА EURUSD,M1: ------------------------------------=1
2020.06.24 15:54:12.214 2010.01.01 00:00:00  ОПТИМ КОДА test started
2020.06.24 15:54:12.196 TestGenerator: spread set to 2
2020.06.24 15:54:09.838 Expert ОПТИМ КОДА EURUSD,M1: loaded successfully
2020.06.24 15:54:09.827 Expert ОПТИМ КОДА EURUSD,M1: removed

Ich möchte aber, dass Print() im MT-4 Logger nur einmal mit dem letzten Wert der Stunde ausgegeben wird. Es wäre logisch, den vorletzten, d.h. den vorherigen Print ( )-Eintrag zu löschen, nachdem der letzte im Protokoll erschienen ist. Ich weiß, wie man einen Auftrag, ein grafisches Objekt löscht. Aber ich weiß noch nicht, wie ich den Print()-Eintrag aus dem Logbuch löschen kann.

Ich danke Ihnen für Ihre Hilfe.

Документация по MQL5: Общие функции / Print
Документация по MQL5: Общие функции / Print
  • www.mql5.com
Данные типа double выводятся с точностью до 16 десятичных цифр после точки, при этом данные могут выводиться либо в традиционном либо в научном формате – в зависимости от того, как запись будет наиболее компактна. Данные типа float выводятся с 5 десятичными цифрами после точки. Для вывода вещественных чисел с другой точностью либо в явно...
 
Valeriy Yastremskiy:
Nein. Das Häkchen wird vom Prüfer nicht abgeschnitten. Wenn der EA läuft, werden eingehende Ticks übersprungen. Nach Beendigung des Vorgangs startet das nächste Häkchen das Gerät erneut im Standby-Modus.
Nach Ihrer Logik scheint es, als würde das Programm nie zur Loseinstellungsfunktion gehen. Aber so ist das Programm vom offiziellen Herausgeber geschrieben worden. Ich habe die Reihenfolge der Funktionen in früheren Beiträgen beschrieben.
 
Ich frage noch einmal, denn ich habe Zweifel an den vorherigen Kommentaren. Das offizielle Beispiel schlägt vor, das Losvolumen im Hauptteil des Programms zu zählen, aber ist es nicht logisch, es bei jedem Tick zu berechnen? Wofür steht das im Programmtext?
 
Ich kann keinen EA installieren. Die Schaltfläche "Installieren" lässt sich nicht anklicken. Um genau zu sein, passiert nichts, wenn ich die Taste drücke.
 
Сергей Таболин:

Kalash oder Maxim? ))))))))))))


Frage:

Es gibt ein Drehbuch. Es kann nicht mit den üblichen Mitteln vom EA aus gestartet werden. Wir müssen sie also dem Expert Advisor als Funktion hinzufügen. Aber ich möchte nicht die gleichen Änderungen im Expert Advisor vornehmen, wenn ich das Skript bearbeite. Wie kann man das tun? Mit Hilfe von Einschlüssen?

Klassen) und Objekte
Oder durch Einfügen)
 
Ivan_Invanov:
Nach Ihrer Logik scheint es, dass die Software niemals die Funktion zur Einstellung des Loses aufrufen wird. Aber so ist das Programm vom offiziellen Herausgeber geschrieben worden. Ich habe die Reihenfolge der Funktionen in früheren Beiträgen beschrieben.
Initialisierung und Deinitialisierung funktionieren einmal. Am Anfang und am Ende.
 
Ivan_Invanov:
Nach Ihrer Antwort zu urteilen, verstehen Sie selbst nicht wirklich, wie das Programm funktioniert. Es scheint also eine dumme Frage zu sein. Genau wie der vorherige Kommentator meint, dass es aufhört. Aus meiner Erfahrung mit der Programmierung in anderen Sprachen denke ich, dass es seinen Rumpf in einer Schleife ausführt, und wenn ein Ereignis eintritt, taucht es in dieses ein. Wenn das Programm seinen Körper in einer Schleife ausführt, erklärt das, warum das Programm so geschrieben ist.

Ihrem Kommentar nach zu urteilen, haben Sie das auch nicht verstanden. (((

Das sind keine "anderen Sprachen", das ist MQL!

Ein Rat an Sie: Finden Sie heraus, wie dieser Haufen funktioniert.

Alle anderen Funktionen sind abgeleitet.

Finden Sie es heraus.

 
Ivan_Invanov:
Ja, ich verstehe es nicht, also frage ich. Ich weiß, dass ontick ein Ereignis ist, aber ich verstehe nicht, wohin der EA danach geht. Er geht in den Hauptteil des Programms und berechnet das Losvolumen, oder er geht nicht? Warum ist der EA des offiziellen Herausgebers so geschrieben worden?

Und Sie glauben, dass jemand hier anfangen wird, die Dokumentation für Sie persönlich umzuschreiben? Nur für Sie? Hier drin? Streichen Sie das selbst....

 
Ivan_Invanov:
Ja, das verstehe ich nicht, das ist es, was ich frage. Ich weiß, dass ontick ein Ereignis ist, es ist mir nur nicht klar, wohin der EA dann geht. Warum hat der Verleger sie so geschrieben?

Sie würden den Code zeigen (aber Sie müssen verstehen, dass, wenn Sie den Code zeigen, dann ist das Urheberrecht klar ersichtlich) und die Jungs werden sich das Schema des EAs ansehen und sagen, was aufgerufen wird und was nicht, ob ein Geschäft eröffnet wird oder nicht.

Grund der Beschwerde: