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

 
Alexey Viktorov:

Manchmal ist genau das der Fall, dessen bin ich mir bewusst... Aber in diesem Fall, nach dem Vorschlag, nicht ein Skript, sondern einen Berater zu machen, kam folgendes zurück...


Ich habe das Wesentliche der Frage bereits verloren. Was war die ursprüngliche Aufgabe? Warum gibt es keine Interaktion zwischen Indikatoren und EAs und Skripte, alles ist da, aber der Mechanismus ist ziemlich kompliziert, ich habe eine Arbitrage EA, die wie folgt funktioniert.

 
Galim_V:

Vielen Dank, Igor. Das Terminal lässt also keine Kontrollkästchen für das Programm? Und wenn ich nicht bei jedem Tick nach Aufträgen suchen will, muss ich dafür Bedingungen erfinden?

Nun, das ist eine Frage der Vorstellungskraft, suchen Sie nach Beispielen für Expert Advisors in Codobase.

In der Vergangenheit haben wir das folgende Schema für Expert Advisors entwickelt: Bei jedem Tick macht ein EA

1. Neuberechnung des Auftrags

2. Rufzeichen

3. Aufträge schließen und öffnen

4. die Informationen in das Protokoll oder auf den Bildschirm drucken

Theoretisch können Sie mit dieser EA-Struktur nach einem Verbindungsabbruch und nach einem Neustart des Terminals weiterarbeiten; im Prinzip ist die Leistung von MQL im Moment sehr gut.

Sie können globale Variablen des Programms mit dem statischen Modifikator als Flags verwenden, aber in diesem Fall müssen Sie sich überlegen, wie Sie im Falle eines Verbindungsabbruchs oder eines Neustarts des Terminals vorgehen wollen

Schauen Sie sich die fertigen Beispiele an und versuchen Sie, sie an Ihre Bedürfnisse anzupassen. Wenn Sie sie verstanden haben, schreiben Sie den Code des Expert Advisors so, wie Sie es für richtig halten.

https://www.mql5.com/ru/code/mt4/experts

HH: Als Alternative können Sie versuchen, mit verschiedenen magischen Zahlen zu arbeiten, d.h. Sie stellen eine Pending Order, dann Control Market Orders mit dieser magischen Zahl, dann eine neue Pending Order mit einer neuen ein.... Ich erinnere mich nicht einmal daran, ob das Ticket einer Pending Order geändert wird, wenn sie zu einer Market Order wird, wahrscheinlich nicht - wir sollten es überprüfen, es ist auch möglich, dass die Tickets gleich sind, d.h. wir merken uns das Ticket für eine Pending Order und suchen dann nach diesem Ticket für eine Market Order. Aber meiner Meinung nach würde das die Implementierung nur verkomplizieren, und wir müssten uns überlegen, wie wir das Terminal neu starten können... Die Mühe lohnt sich nicht, es ist einfacher, die Reihenfolge bei jedem Tick neu zu berechnen.

MQL5 Code Base: Советники
MQL5 Code Base: Советники
  • www.mql5.com
Сеточный советник "Поворот паука" заданным объемом открывает начальный ордер со скрытыми СЛ и ТП. При срабатывании СЛ открывается противоположный ордер таким же объемом и СЛ, но ТП ордера увеличивается на размер убытка предыдущего ордера. Так позиция переворачивается пока не закроется по ТП. При уходе цены в прибыль, на определенных условиях...
 
Igor Makanu:

Nun, es ist eine Frage der Vorstellungskraft, schauen Sie sich die Beispiele von EAs in kodobase an

In der Vergangenheit haben die EAs das folgende Schema entwickelt: Bei jedem Tick macht ein EA

1. Neuberechnung des Auftrags

2. Rufzeichen

3. Aufträge schließen und öffnen

4. die Informationen in das Protokoll oder auf den Bildschirm drucken

Theoretisch können Sie mit dieser EA-Struktur nach einem Verbindungsausfall und nach einem Neustart des Terminals wieder arbeiten; tatsächlich ist die Leistung von MQL im Moment sehr gut, Sie können nach diesem Schema arbeiten = scheinbar keine zusätzlichen Aktionen bei jedem Tick, aber garantiert nach dem Neustart arbeiten

Sie können globale Variablen des Programms mit dem statischen Modifikator als Flags verwenden, aber in diesem Fall müssen Sie sich überlegen, wie Sie im Falle eines Verbindungsabbruchs oder eines Neustarts des Terminals vorgehen wollen

Schauen Sie sich zunächst fertige Beispiele an, versuchen Sie dann, sie an Ihre Bedürfnisse anzupassen, und wenn Sie sie verstanden haben, schreiben Sie den Expertencode, wie Sie es für richtig halten

https://www.mql5.com/ru/code/mt4/experts

Vielen Dank für die ausführliche Antwort.

 
Vitaly Gorbunov:

Ich habe bereits den Überblick über meine Frage verloren. Was war die ursprüngliche Aufgabe? Warum gibt es keine Interaktion zwischen Indikatoren und Skripten, alles ist da, aber der Mechanismus ist ziemlich kompliziert, ich habe eine Arbitrage EA, die auf diese Weise funktioniert.

Es ist wahr... Was war die ursprüngliche Aufgabe? Ich erinnere mich auch nicht...:)))))))))))

 
Alexey Viktorov:

Wirklich... Was war die ursprüngliche Aufgabe? Ich erinnere mich auch nicht...:)))))))))))


Niemals:

Ich habe die folgende Frage.

Starten Sie das Terminal und ein beliebiges Kursdiagramm darauf. Zum Beispiel EUR/USD.

Bringen Sie einen bestimmten Indikator in diesem Diagramm an. Zum Beispiel ein SMA-Indikator.

Führen Sie ein Script für dieses Diagramm aus. Zum Beispiel ein Skript, das eine Ellipse erstellt ELLIPSSCRIPT.

Fragen:

Wie exportiert man Werte aus dem SMA-Indikator in ELLIPSSCRIPT?

Wie kann man zum Beispiel die Werte von vier Ellipsenkoordinaten (Zeit, Kurs, Zeit, Kurs) aus einem Indikator in ein Skript exportieren?

Kann ich Array-Werte exportieren und wie geht das?

Wie beschreibt man exportierte Werte in den Indikatoreigenschaften und importierte Werte in den Skripteigenschaften?

 
Igor Makanu:

mit unterschiedlichen magischen Zahlen, d.h. Sie platzieren einen schwebenden Auftrag, dann Kontrollmarktaufträge mit dieser magischen Zahl, dann einen neuen schwebenden Auftrag mit einer neuen magischen Zahl .... Ich erinnere mich nicht einmal daran, ob das Ticket einer Pending Order geändert wird, wenn sie zu einer Market Order wird, wahrscheinlich nicht - wir sollten es überprüfen, es ist auch möglich, dass die Tickets gleich sind, d.h. wir merken uns das Ticket für eine Pending Order und suchen dann nach diesem Ticket für eine Market Order. Aber meiner Meinung nach würde das die Implementierung nur verkomplizieren, und wir müssten uns überlegen, wie wir das Terminal neu starten können... Nun, das ist die Mühe nicht wert, es ist einfacher, die Reihenfolge bei jedem Tick neu zu berechnen.

Die Nummer des Tickets ändert sich nicht. Der Gewinn oder Verlust erscheint). Für mich war es wichtig, nicht nach einer schwarzen Katze in einem dunklen Raum zu suchen, wenn sie nicht da ist. Ich danke Ihnen vielmals.

 
Igor Makanu:


Ja, ja.

Und was hindert Sie daran, diese Ellipse im Indikator selbst zu zeichnen?

ohne Exportieren...... Importieren....

 
Igor Makanu:


Genau!!!!!

Niemals:

Ich habe die folgende Frage.

Starten Sie das Terminal und ein beliebiges Kursdiagramm darauf. Zum Beispiel EUR/USD.

Bringen Sie einen bestimmten Indikator in diesem Diagramm an. Zum Beispiel ein SMA-Indikator.

Führen Sie ein Script für dieses Diagramm aus. Zum Beispiel ein Skript, das eine Ellipse erstellt ELLIPSSCRIPT.

Fragen:

Wie exportiert man Werte aus dem SMA-Indikator in ELLIPSSCRIPT?

Wie kann man zum Beispiel die Werte von vier Ellipsenkoordinaten (Zeit, Kurs, Zeit, Kurs) aus einem Indikator in ein Skript exportieren?

Kann ich Array-Werte exportieren und wie geht das?

Wie beschreibt man die exportierten Werte in den Indikatoreigenschaften und wie die importierten Werte in den Skripteigenschaften?

Und dann wechselt die Frage auf eine andere Ebene... Das Skript ist "ausführen und warten, bis der Indikator den Befehl gibt" .......

Wie kann ich einem solchen Programmierer einen vernünftigen Tipp geben? ????

Obwohl er hier, nach mehreren Tagen der Diskussion, es....

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien.

Alle Fragen von Neulingen über MQL4, Hilfe und Diskussion von Algorithmen und Codes

Alekseu Fedotov, 2018.09.13 19:49

Ja, ja.

Und was hindert Sie daran, diese Ellipse im Indikator selbst zu zeichnen?

Ohne Export...... Import....

Aber... Ich glaube nicht, dass ihn noch jemand will.
 
Alexey Viktorov:

Genau!!!!!

was soll ich sagen? wie man so schön sagt: die richtige Frage ist die halbe Antwort

ich habe versucht, den Unterschied zwischen einem Skript, einem Indikator und einem Expert Advisor zu erklären. ich weiß, dass Daten aus Indikatorpuffern und Grafikobjekten aus einem Objektnamen oder durch Ausprobieren aller Objekte entnommen werden können und der Datenaustausch entweder über eine Datei oder globale Variablen des Terminals erfolgt. dann begannen sie zu erklären, dass es globale Variablen des MQL-Programms und globale Variablen des Terminals gibt und sie konnten mir nicht einmal helfen, die Hilfe zu lesen .... es ist auf russisch!!! - Es ist schwer, ohne Hilfe auf Russisch auszukommen - ich habe vor ein paar Monaten angefangen, mit Matlab zu arbeiten, und es ist so schwer, es im Internet richtig zu verstehen - man muss es einfach immer wieder lesen.

 
Das Ziel muss die Mittel heiligen. Wenn Sie den Quellcode aller erforderlichen Komponenten haben, ist es einfacher, alles in einem EA zu kombinieren. Wenn dies nicht möglich ist, muss die Kommunikation zwischen den Modulen aller Komponenten organisiert werden, aber das ist keine Aufgabe für Anfänger.
Grund der Beschwerde: