Die Sprache MQL5 von Grund auf selbst erlernen - Seite 63

 
MrBrooklin:

Hallo Peter! Ich bin froh, Sie wieder am Telefon zu haben. Einerseits haben Sie Recht, was die Schwierigkeit der Aufgabe angeht, andererseits hat sie mich dazu gebracht, das Selbststudium aus einem anderen Blickwinkel zu betrachten. Daran ist also nichts auszusetzen. Umso mehr, wenn ich es schaffe, mit Trailing Stops umzugehen und jedem das fertige Ergebnis zu liefern, wird es mein kleiner Sieg beim Erlernen von MQL5 sein.

Jetzt veröffentliche ich absichtlich keine geschriebenen Codezeilen und Kommentare, weil ich zumindest einige Ergebnisse selbst erzielen muss, ohne die Hilfe von jemandem. Die Trailing-Stop-Aufgabe ist klar, die Starthilfe durch die Teilnehmer dieses Themas ist gegeben, und jetzt hängt alles von mir ab. Alles, was ich jetzt brauche, ist Geduld.

Mit freundlichen Grüßen, Vladimir.

Ich verstehe die entscheidende Rolle von Super-Tasking beim Selbststudium und hoffe, dass Sie die einfachste Version selbst schreiben können, aber die Sache ist die:

Viel interessanter als der Trailing-Stop sind die sprachlichen Hilfsmittel - Bedingungen, Schleifen, Funktionen usw., mit denen sich fantastische Dinge realisieren lassen, unter denen der Trailing-Stop nur ein Sandkorn im Meer ist.) Die Beherrschung dieses Instrumentariums wird die Tür zu einer neuen, erstaunlichen und bisher unbekannten Welt öffnen.

Es ist seltsam, einen Menschen zu sehen, der den Rahmen von Leonardos Mona Lisa bewundert, so seltsam wie es ist, eine Faszination für Trailing, Bypassing-Funktionen, Schleifen und Arrays zu sehen, d.h. viel interessantere Dinge, mit denen man JEDES Problem lösen kann. Natürlich stellt sich dieses Verständnis nicht sofort ein.

Viel Erfolg beim Erreichen Ihres Ziels!
 
Реter Konow:
Ich weiß, dass Überforderung beim Selbststudium eine wichtige Rolle spielt, und ich hoffe, dass Sie in der Lage sein werden, selbst eine einfache Version zu schreiben, aber die Sache ist die:

Viel interessanter als das Trailing sind die Werkzeuge der Sprache - Bedingungen, Schleifen, Funktionen und viele andere Dinge, die es Ihnen ermöglichen, fantastische Dinge zu implementieren, unter denen das Trailing nur ein Sandkorn im Ozean ist). Die Beherrschung dieses Instrumentariums wird die Tür zu einer neuen, erstaunlichen und bisher unbekannten Welt öffnen.

Es ist seltsam, eine Person zu sehen, die den Rahmen von Leonardos Mona Lisa bewundert, so seltsam wie es ist, eine Faszination für das Herumschleppen von Funktionen, Schleifen und Arrays zu sehen, d.h. viel interessantere Dinge, mit denen man JEDES Problem lösen kann. Natürlich stellt sich dieses Verständnis nicht sofort ein.

Ich wünsche Ihnen, dass Sie Ihr Ziel erreichen!

Vielen Dank, Peter, für deinen Wunsch! Glauben Sie mir, es ist nicht immer möglich, einen Menschen zu verstehen, vor allem, wenn man ihn überhaupt nicht kennt. Daran ist auch nichts auszusetzen.

Während ich den Code eines EA mit dem Arbeitstitel Trailing Stop schreibe, besuche ich regelmäßig dieses Thema, denn ich bin der Initiator seiner Erstellung und muss daher die Fragen beantworten, die an mich gerichtet werden. Wenn ich etwas vorzuweisen habe, wird die Kommunikation viel interessanter werden.

Mit freundlichen Grüßen, Vladimir.

 
Ich kann ein interessantes Finanzvideo in die Filiale stellen.
Sehr interessant, wortwörtlich, wer das Programmieren nicht beherrscht, wird in naher Zukunft so etwas wie ein Behinderter sein.... etwa ab Minute 40.
Hier ist

https://youtu.be/aVqismh5zJI
 

Guten Tag und gute Laune an alle!

Meine Quarantäne ist vorbei und ich bin wieder normal. Es ist schade, dass jetzt weniger Zeit für das Selbststudium bleibt. Während dieser Abwesenheit habe ich erhebliche Fortschritte beim Erlernen der Programmiersprache MQL5 und beim Schreiben von EA-Code gemacht. Ich werde die Mitglieder dieses Themas noch nicht um Hilfe bitten, da ich meinen Expert Advisor nicht von wichtigen Dingen abhalten möchte. Erstens möchte ich sie nicht von ihrer wichtigen Arbeit ablenken. Zweitens wird mir die unabhängige Suche nach Fehlern ermöglichen, die Sprache viel tiefer zu studieren. Ich setze mir keine Frist, um den gesamten Code zu schreiben, also mache ich auch kein Pferderennen. Auf diese Weise kann ich das Gelernte besser verinnerlichen.

Mit freundlichen Grüßen, Vladimir.

 
Vasiliy Sokolov:

Sie beginnen wieder an der falschen Stelle, und der Code enthält einen Fehler. Beginnen Sie mit den Funktionen. Schreiben Sie den Rahmenalgorithmus nur mit Ihren eigenen Funktionen. Dann werden wir überlegen, wie wir sie umsetzen können. Beginnen Sie mit der Standardvorlage, die beim Erstellen eines neuen EA im Metaeditor geöffnet wird.

Der Trailing-Stop sollte besser zunächst für das Nettokonto gesetzt werden. Auf diese Weise wird es einfacher, mit der Position zu arbeiten, da es nur eine Position für ein Symbol gibt. In der zweiten Version kann es in ein Hybridfahrzeug umgewandelt werden.

Hallo Wassili! Ich hoffe, ich habe den Fehler im Code der Schleife behoben. Er hätte so geschrieben werden müssen:

   for(int i=PositionsTotal()-1; i>=0; i--)

Alles andere mache ich so, wie Sie mir geraten haben. Nochmals vielen Dank!

Mit freundlichen Grüßen, Vladimir.

 

Hallo zusammen und gute Laune!

Ich studiere weiter MQL5. Ich bin schon lange nicht mehr weitergekommen, weil ich eine einfache Sache nicht verstehe. Ich habe einen Code geschrieben, der um 9 Uhr morgens eine Kaufposition mit 0,1 Lot eröffnen und um 23:50 Uhr zwangsweise schließen soll, wenn weder Stop Loss noch Trailing Stop während des Handelstages ausgelöst werden. Ich habe den Code in der Funktion OnTick() platziert. Wenn der Strategietester gestartet wird, werden derzeit innerhalb von 1-2 Sekunden zwei Kaufpositionen von je 0,1 Lot eröffnet. Wenn ich das Lot z.B. auf 0,01 reduziere, dann werden innerhalb von 8-10 Sekunden 22 Positionen eröffnet. Das Anfangsguthaben beträgt 50000 Rubel. Währungspaar EURUSD. Ich vermute, es hat etwas mit Zecken und Marge zu tun. Ich habe mir viele Informationen auf meiner Website angesehen, aber es hat bisher nichts gebracht.

Bitte beraten Sie mich, was ich tun sollte oder welche Bedingung ich angeben sollte, um nur eine Position mit dem angegebenen Lot zu eröffnen und keine weiteren.

Mit freundlichen Grüßen, Vladimir.


 
MrBrooklin:

Könnten Sie mich bitte beraten, was ich tun sollte oder welche Bedingung ich festlegen sollte, um nur eine Position mit dem angegebenen Lot zu eröffnen und keine weiteren?

Mit freundlichen Grüßen, Vladimir.

Hallo! Legen Sie ein Limit für offene Positionen fest;

input int               MaxOpenedPositions=1;
//ниже подсчёт открытых позиций, код Вы уже начали писать)

for(int i=PositionsTotal()-1; i>=0; i--)
 
VVT:

Hallo! Legen Sie ein Limit für offene Positionen fest;

Hallo!

Danke für den Hinweis. Um ehrlich zu sein, dachte ich schon daran, die Aktualisierung von Kursen nach dem Öffnen der ersten Position irgendwie zu verhindern. Ich werde versuchen, die Zahl der offenen Stellen zu begrenzen.

Mit freundlichen Grüßen, Vladimir.

 
MrBrooklin:

Hallo zusammen und gute Laune!

Ich studiere weiter MQL5. Ich bin schon lange nicht mehr weitergekommen, weil ich eine einfache Sache nicht verstehe. Ich habe einen Code geschrieben, der um 9 Uhr morgens eine Kaufposition mit 0,1 Lot eröffnen und um 23:50 Uhr zwangsweise schließen soll, wenn während des Handelstages weder Stop Loss, noch Trailing Stop, noch Take Profit ausgelöst wurden. Ich habe den Code in der Funktion OnTick() platziert. Wenn der Strategietester gestartet wird, werden derzeit innerhalb von 1-2 Sekunden zwei Kaufpositionen von je 0,1 Lot eröffnet. Wenn ich das Lot z.B. auf 0,01 reduziere, dann werden innerhalb von 8-10 Sekunden 22 Positionen eröffnet. Das Anfangsguthaben beträgt 50000 Rubel. Währungspaar EURUSD. Ich vermute, es hat etwas mit Zecken und Marge zu tun. Ich habe mir viele Informationen auf meiner Website angesehen, aber es hat bisher nichts gebracht.

Bitte beraten Sie mich, was ich tun sollte oder welche Bedingung ich angeben sollte, um nur eine Position mit dem angegebenen Lot zu eröffnen und keine weiteren.

Mit freundlichen Grüßen, Vladimir.


Wenn die Position mit unserer Magie und auf unserem Symbol Null ist, dann prüfen Sie die Zeit und eröffnen Sie eine Position. Wenn sie 1 ist, dann eröffnen Sie keine Position, prüfen Sie die Schlusszeit und schleichen Sie. Wir können Schriftrollen verwenden oder wenn wir iff prüfen wollen.

 
Valeriy Yastremskiy:

Wenn die Positionen mit unserem Magik und auf unserem Symbol Null sind, prüfen wir die Zeit und öffnen eine Position, wenn sie 1 ist, öffnen wir keine Position, wir prüfen die Schlusszeit und Schleppnetz, wenn sie mehr als 1 ist, schlagen wir Alarm und arbeiten nicht. Wir können Schriftrollen verwenden oder prüfen, obf.

Hallo Valery! Vielen Dank für Ihren Hinweis. Den if-else-Operator habe ich bereits beherrscht, jetzt muss ich auch den switch-Operator beherrschen. Muss ich Alert() verwenden, oder ist es nur für weitere Informationen da?

Mit freundlichen Grüßen, Vladimir.