Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 285

 
SpikeOne:

Seien Sie gegrüßt, liebe Programmierprofis!

Ich habe eine tolle Idee, es gibt so einen Expert Advisor https://www.mql5.com/ru/code/11030 überprüft und getestet die Idee der Arbeit in der Nacht auf sie.

Die Idee ist folgende: Ich starte meinen Expert Advisor um Mitternacht in Moskau und nachdem ich 3-4 am Morgen erreicht habe, muss ich warten, bis die Aufträge mit einem bestimmten Take-Profit geschlossen werden, nachdem ich den Take-Profit erreicht habe, deaktiviere ich ihn und am nächsten Tag starte ich ihn wieder um Mitternacht.

Ist es möglich, dies zu realisieren? Wenn ja, dann sagen Sie mir bitte, an welcher Stelle des Codes es möglich ist, die Überprüfung der Bedingungen für die Zeit (z.B. 3 Uhr morgens) und die Überprüfung, ob der Take Profit geschlossen ist, einzufügen.

Das Ergebnis sollte sein, dass der Expert Advisor am Morgen mit Gewinn abschließt.

Entscheiden Sie zuerst: Was werden Sie tun, wenn es morgens keinen Gewinn gibt?! (Es sei denn, es heißt: "Wenn es Profit gibt, gibt es ein Morgen")... :)))))))
 
TarasBY:
Entscheiden Sie zuerst: Was werden Sie tun, wenn es morgens keinen Gewinn gibt?! (Es sei denn, es heißt: "Wenn es Profit gibt, gibt es ein Morgen")... :)))))))

Ich habe Ihnen gesagt, dass ich es getestet habe und dass es trotzdem einen Gewinn gibt. Meine Einstellungen sind nicht Standard. Es sollte so sein, dass bei Erreichen von 3 Uhr nachts auf die Gewinnmitnahme gewartet wird und der EA ausgeschaltet wird.
 
SpikeOne:

Ich habe ja schon geschrieben, dass ich es getestet habe, da ist auf jeden Fall ein Gewinn drin. Meine Einstellungen sind nicht Standard. Und zwar so, dass bei Erreichen von 3 Uhr nachts der Take Profit abgewartet und der Expert Advisor heruntergefahren wird.

Aus programmiertechnischer Sicht ist dies absurd.

Es besteht die Möglichkeit eines solchen Ergebnisses. Deshalb muss sie vorhergesehen werden. Andernfalls kann es zu einer unbestimmten Situation kommen, in der Sie zum Beispiel Ihre Einlage verlieren können.

 
Zhunko:

Aus programmiertechnischer Sicht ist dies absurd.

Es besteht die Möglichkeit eines solchen Ergebnisses. Deshalb muss sie vorhergesehen werden. Andernfalls kann es zu einer undefinierten Situation kommen, in der z. B. eine Einlage verloren geht.


Wenn Sie ein Martin sind, besteht immer die Möglichkeit, die Kaution zu verlieren. Ist es möglich, dies zu tun, ohne zu bedenken, dass dies absurd ist? Können Sie mir wenigstens die Stelle im Code zeigen, an der die Aufträge bei Gewinnmitnahme geschlossen werden, damit ich etwas zum Anfangen habe?
 
SpikeOne:

Wenn Sie ein Martin sind, besteht immer die Möglichkeit, die Kaution zu verlieren. Können Sie mir wenigstens die Stelle im Code zeigen, an der die Aufträge bei Gewinnmitnahme geschlossen werden, damit ich etwas zum Anfangen habe?

Natürlich können Sie das! Der richtige Programmierer wird alle Fälle in Betracht ziehen.

 

Wer kann mir sagen, warum ich MT4 nicht laden kann? Ein Bildschirmfoto des Fehlers wird angezeigt.


 
SpikeOne:

Es besteht immer die Möglichkeit, die Kaution für eine Schwalbe zu verlieren. Ist es überhaupt möglich, dies zu tun, ohne zu bedenken, dass es absurd ist? Können Sie mir wenigstens die Stelle im Code zeigen, an der Aufträge bei Take Profit geschlossen werden, damit ich einen guten Start habe?


Bei einem Martin gibt es immer eine Wahrscheinlichkeit, den erwarteten Gewinn aus dem Take Profit des ersten Lots zu erzielen. Und wenn Sie Pech haben, geht Ihnen entweder die Einlage aus oder Sie überschreiten die maximal zulässige Losgröße.

Und lohnt es sich, so viel Geld zu riskieren, um den ursprünglichen Einsatz zurückzugewinnen? Zumal Murphy's Laws nie abgeschafft wurden..... Und es ist nicht absurd, es ist einfach das praktische Leben, nicht die Theorie))

 
Wenn es möglich ist, können Sie mir vielleicht helfen, die Tests durchzuführen, und ich kann beweisen, dass das Programm mit meinen ursprünglichen Daten und bei Tests funktioniert.
 

Guten Tag noch einmal!) Die bisherigen Probleme mit dem Abschluss sind gelöst, aber es sind neue Fragen aufgetaucht. Der Kern der Frage ist, wie man die aktuellen Indikatorwerte (insbesondere MACD) auf dem Null-Balken mit den Werten desselben Indikators auf dem ersten und zweiten Balken (d.h. den vorherigen) vergleichen kann. Ich verstehe nicht wirklich, wie man das macht, daher bin ich für jede Hilfe sehr dankbar)))

 
ElhoroS:

Guten Tag noch einmal!) Die bisherigen Probleme mit dem Abschluss sind gelöst, aber es sind neue Fragen aufgetaucht. Der Kern der Frage ist, wie man die aktuellen Indikatorwerte (insbesondere MACD) auf dem Null-Balken mit den Werten desselben Indikators auf dem ersten und zweiten Balken (d.h. den vorherigen) vergleichen kann. Ich verstehe nicht wirklich, wie man das macht, daher bin ich für jede Hilfe sehr dankbar)))

   double macd_1=iMACD(Symbol(),Period(),fast_ema,slow_ema,signal,PRICE_CLOSE,1); // макдак на первом баре
   double macd_2=iMACD(Symbol(),Period(),fast_ema,slow_ema,signal,PRICE_CLOSE,2); // макдак на втором баре
Bei der Nullleiste werden die Indikatordaten nicht fixiert. Bei jedem Tick, in der Tat, wird sich ändern, weil die Null-Bar noch nicht gebildet worden ist. Daher werden die Daten aus dem ersten Balken entnommen. Wenn Sie den Indikator ab dem Null-Balken verwenden möchten, ändern Sie PRICE_CLOSE in PRICE_OPEN - dies ist der einzige Preis, der sich am Null-Balken nicht ändert, aber der Indikator weicht leicht von seiner Standarddarstellung ab - nur ein wenig.