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

 
Alexey Viktorov:

Es handelt sich praktisch um eine einzige Codezeile. Aber dafür müssen wir ein Positionsticket bekommen. Hier ist ein Expert Advisor von OnInit, der eine Position mit 0,2 Lot eröffnet und die Hälfte davon mit OnTick schließt.

Oder hier ist der vollständige Code der Klasse CTrade

Ich danke Ihnen!

 
Artyom Trishkin:

Gehen Sie hier zum Abschnitt Artikel und stöbern Sie - es gibt eine Menge über OOP, auch für Anfänger.

Ich behaupte nichts. Aber warum nicht, wo man .... lesen kann.

Globale und lokale Variablen: Die Wahl der Deklaration der Sichtbarkeit von Variablen wird durch die Notwendigkeit bestimmt, die Werte der Funktionsvariablen in anderen Funktionen und natürlich im ontischen Berater zu verwenden. Das heißt, wenn die Funktion nur den ihr übergebenen Wert benötigt, ist es korrekt, alle Variablen der Funktion als lokal zu deklarieren. Wenn die Funktion eine Berechnung durchführt und die Variablen, denen die Ergebnisse der Berechnung zugewiesen werden, in anderen Funktionen verwendet werden, müssen diese Variablen auf globaler Ebene deklariert werden.

Das Gleiche gilt für Klassen und die Sichtbarkeitsebene von Variablen, Funktionen und Methoden. Wenn wir definieren, was wir von der Klasse wollen, welche Funktionen, Variablen, Strukturen und wir deklarieren sie als öffentlich. Wenn die Klassenmitglieder nur innerhalb der Klasse verwendet werden, machen wir sie privat oder geschützt, je nachdem, ob wir Vererbung wünschen.

Wenn man das Handbuch liest, hat man den Eindruck, dass man über die Eigenschaften von etwas informiert wird und wie man es benutzt, raten Sie selbst...

Im Allgemeinen geht man davon aus, dass die Sprache schneller und ohne zusätzliche Artikel erlernt werden kann, wenn das Handbuch besser erklärt wird. Ich kann nicht darauf verzichten (ich spreche natürlich nur von mir). ). Hut ab vor den Autoren der Artikel.

 

Hat MQL ein Analogon von try, catch und throw aus C++?

 

Grüße. Können Sie mich bitte beraten?

Ich habe einen Indikator, der Objekte in einem Diagramm erstellt, und einen EA, der mit diesen Objekten arbeitet (indem er durch ihre Liste geht).

Der EA erkennt die Objekte jedoch erst beim nächsten Tick, nachdem sie erstellt worden sind.

Ist es möglich, dass der EA Objekte auf dem gleichen Tick erkennen kann, wenn sie erstellt werden?

 
Andrey Sokolov:

Grüße. Können Sie mich bitte beraten?

Ich habe einen Indikator, der Objekte in einem Diagramm erstellt, und einen EA, der mit diesen Objekten arbeitet (indem er durch ihre Liste geht).

Der EA erkennt die Objekte jedoch erst beim nächsten Tick, nachdem sie erstellt worden sind.

Ist es möglich, dass der EA Objekte auf dem gleichen Tick erkennen kann, wenn sie erstellt werden?

Es ist möglich, einen Indikator-Algorithmus in einen EA zu übertragen. Solche Indikatoren, die keine Puffer haben, sind viel einfacher in einen EA zu übertragen.

 
Alexey Viktorov:

Es ist möglich, einen Indikator-Algorithmus in einen EA zu übertragen. Solche Indikatoren, die keine Puffer haben, sind viel einfacher in einen EA zu übertragen.

Das ist verständlich, aber das ist bisher die Frage.

Wenn ich gleichzeitig Nachrichten vom Indikator und vom EA ausdrucke, dann kommt die erste vom Indikator.

AuchChartRedraw(0); sowohl am Ende des Indikators als auch am Anfang des EA haben nicht geholfen.

 
Andrey Sokolov:

Das ist verständlich, aber das ist jetzt die Frage.

"Wie", was? Wie stellen Sie sich vor, etwas zu lesen, das noch nicht geschrieben wurde, oder etwas zu sehen, das noch nicht gezeichnet wurde?

 
Alexey Viktorov:

"So", was ist das? Wie stellen Sie sich vor, etwas zu lesen, das noch nicht geschrieben wurde, oder etwas zu sehen, das noch nicht gezeichnet wurde?

"Lesen" auf dem gleichen Tick, aber nach dem Zeichnen ist möglich?

"So", was ist das? "Damit der Expert Advisor mit Objekten arbeiten kann


Ich werde es überOnChartEvent versuchen

 
Andrey Sokolov:

"Lesen" auf demselben Tick, aber nach dem Zeichnen ist es möglich?

"So", was ist das? " - damit der EA an den Objekten arbeiten kann.
Nein, natürlich nicht. Stellen Sie sich vor, ich schreibe diese Nachricht und Sie lesen sie zur gleichen Zeit. Ist das möglich? Auch ich lese nicht die Nachricht, sondern nur den Text, der für die Nachricht eingegeben wurde. Solange es kein Objekt gibt, gibt es auch keine Eigenschaften des Objekts. Und mehr noch, versuchen Sie, dieEigenschaften des Objekts GERADE nach seiner Erstellung im Indikator selbst zu lesen. Das wird nicht funktionieren. Zwischen der Erstellung eines Objekts und dem Zugriff auf seine Eigenschaften muss eine gewisse Zeitspanne liegen.
 
Andrey Sokolov:

Ich werde versuchen, OnChartEvent zu verwenden

In OnChartEvent müssen Sie auch den genauen Namen des Objekts kennen. Und die gibt es erst, wenn es kein Objekt mehr gibt.