[Archiv!] Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht daran vorbei. Könnte nirgendwo ohne dich hingehen - 2. - Seite 502
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
editieren | löschen Hilfe, um eine Funktion zur Auftragserteilung zu finden, die Slippage berücksichtigt und ohne 130-134 Fehler ist.
Zeigen Sie mir Ihre Variante.
Print(GetLastError());
Bei allen SL- und TP-Werten, die er ausgibt, gibt er 134, oft auch gar keine Order auf.
öffnet unter der Bedingung if(NumberOfOrders(NULL)==0)
Im Testprogramm wird statt eines Auftrags immer ein ganzes Bündel erteilt, d.h. ich kann nicht verstehen, warum ein Auftrag erteilt werden soll, wenn es keine anderen offenen Aufträge für dieses Paar gibt.
NumderOrder=OrderSend(Symbol(),OP_BUY,0.01,Ask,3,Ask-SL*Point,Ask+TP*Point, "BUY",0,0,Red);
Print(GetLastError());
Bei allen SL- und TP-Werten, die er ausgibt, gibt er 134, oft auch gar keine Order auf.
öffnet unter der Bedingung if(NumberOfOrders(NULL)==0)
Im Testprogramm wird statt eines Auftrags immer ein ganzes Bündel erteilt, d.h. ich kann nicht verstehen, warum ein Auftrag erteilt werden soll, wenn es keine anderen offenen Aufträge für dieses Paar gibt.
ERR_NOT_ENOUGH_MONEY 134 Nicht genug Geld für den Abschluss der Transaktion
Guten Tag. Ich mache ein EA, es öffnet 2 Aufträge in einer bestimmten Bedingung (bildlich gesprochen: wenn der Preis geht nach oben und unten). Wenn der Preis steigt, öffnet er 2, wenn der Preis fällt, schließt er diese 2 und öffnet eine neue 2. Ein Auftrag geht ohne Gewinnmitnahme, der zweite Auftrag mit Gewinnmitnahme. Bei der zweiten gibt es ein Problem. Wenn die Zeit ihres Todes gekommen ist, ist sie nicht ausgewählt, hier ist der Code, um Aufträge zu entfernen:
Dasselbe gilt für OP_BUY. Ich vergleiche die Kommentare, um sicher zu sein, dass es sich um einen Auftrag handelt, der von meinem EA und nicht manuell oder von einem anderen EA eröffnet wurde. Hier ist das Problem mit OrderSelect, es will einfach keine Order mit einem Take Profit auswählen. Wenn die Zahl a erreicht ist, gibt OrderSelect false zurück. Im Protokoll des Testers ist kein Fehler zu finden, und auch GetLastError sagt, dass alles in Ordnung ist (gibt 0 zurück). Warum wird sie nicht ausgewählt? Warum keine Fehlermeldung, wenn sie nicht ausgewählt werden konnte? Ich danke Ihnen allen.
die Bedingung
wird bei jeder Iteration überprüft.
Überlegen Sie, was a gleich ist und was OrdersTotal() -1 nach der ersten Iteration gleich ist
OrderClose(OrderTicket(), NormalizeDouble(OrderLots(), Digits), NormalizeDouble(Ask, Digits), 0);
Solree:
NormalizeDouble(OrderLots(), Ziffern)
Sie müssen den zulässigen Schritt der Losänderung berücksichtigen.
Wenn der Schritt zum Beispiel 0,01 ist, dann normalisieren Sie mit 2
und wenn der Schritt 0,1 ist, dann sollte die Normalisierung 1 sein