Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Wie ermittle ich, wann der nächste Balken eröffnet wird, d.h. der Balken, der sich noch nicht gebildet hat?
Ist es möglich, eine solche Anfrage in eine Schleife zu legen, um einen Auftrag zu eröffnen? )
Nicht erwünscht. Stellen Sie sich zum Beispiel vor, dass der Server anstelle von TRADE_RETCODE_DONE eine Antwort zurückgibt, dass eine Bestellung aufgegeben wurde. Dann würde Ihr Code den Server mit der gleichen Art von Anfragen überlasten.
Wäre das besser?
Unwahrscheinlich. Sehen Sie sich die Beschreibung der Funktion OrderSend() an. Es sollte Ihnen sagen, dass Sie bei erfolgreicher Ausführung noch den Rückgabecode überprüfen müssen. Wir müssen also den mühsamsten Weg gehen: Wir nehmen eine Liste von Rückgabecodes und denken uns das Programmverhalten für jeden dieser Codes aus. D.h. "wir haben OrderSend() gesendet , den Returncode erhalten und auf den erhaltenen Retcode reagiert".
Der zweite Punkt. Es ist besser, das Ereignismodell zu verwenden. D.h. die Funktion wird nicht in einer Schleife ausgeführt, nachdem ein Tick eingetroffen ist, und nach mehreren erfolglosen Versuchen wird die Funktion beendet und auf einen neuen Tick gewartet.
Irgendwann musst du es sowieso tun :) Ich spreche aus eigener Erfahrung.
Entschuldigung, wie kann ich eine Bedingung so einstellen, dass im Tester keine Bedingung vorliegt, aber im Tester im visuellen Modus eine Bedingung vorliegt?
Die Eigenschaftsliste lässt dies nicht zu, und aus irgendeinem Grund funktioniert diese Bedingung bei mir nicht:
if(MQL5InfoInteger(MQL5_TESTER)!=1 || MQL5InfoInteger(MQL5_TESTER)==1 && MQL5InfoInteger(MQL5_VISUAL_MODE)==1)
Aus dieser Bedingung ergibt sich, dass es in drei Situationen funktionieren wird:
1) Wenn das Prüfgerät in Betrieb ist
2) Wenn das Prüfgerät NICHT funktioniert
3) Wenn das visuelle Prüfgerät funktioniert
damit die Funktion immer funktioniert, sollten Sie wahrscheinlich die zweite Bedingung entfernen und die erste und dritte mit && verbinden