[Archiv!] Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht daran vorbei. Könnte nirgendwo ohne dich hingehen - 2. - Seite 395
![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Vielen Dank für die Tipps!!! Ich habe mein Problem gelöst. Es hat sich herausgestellt, dass der Broker, den ich gesucht habe, bei der Platzierung einer Market-Order, d.h. gemäß den Bedingungen, mir nicht erlaubt, gleichzeitig Stop-Levels zu platzieren. Jetzt werden die Aufträge ohne Stopp-Levels platziert, und ich setze die Stopp-Levels unmittelbar nach jedem Auftrag. Ich habe dabei ein Problem: Nur ein sehr kleiner Teil der Aufträge wird geändert, während die meisten Aufträge in der Sektion "Expert Advisors" die folgenden Ergebnisse anzeigen:
2011.05.19 09:46:55 Spacenewcomer-Svecha CLM1,M15: open #30906670 sell 0.01 CLM1 at 99.79 ok2011.05.19 09:46:55 Spacenewcomer-Svecha CLM1,M15: ungültiges Ticket für OrderModify Funktion
2011.05.19 09:55:40 Spacenewcomer-Svecha ESM1,M5: open #30906787 buy 0.01 ESM1 at 1337.50 ok
2011.05.19 10:00:03 Spacenewcomer-Svecha EURUSD,M15: ungültiges Ticket für OrderModify-Funktion
Hier ist der Text des Codes:
{res=OrderSend(Symbol(),OP_SELL,0.01,Bid,3,0,0, "basic",_MagicNumber,0,Red);
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+StopLoss*Point,Ask-TakeProfit*Point,0,Red);
return(0);
}
Außerdem ist es der erste Auftrag, der nach dem Start des Expert Advisors geändert wird!
Offensichtlich habe ich im Code die falsche Reihenfolgeänderung eingestellt... Bitte, helfen Sie mir!
OrderSelect(res, SELECT_BY_TICKET);
OrderModify(OrderTicket(),, OrderOpenPrice(),NormalizeDouble(Ask+StopLoss*Point, Digits),NormalizeDouble( Ask-TakeProfit*Point, Digits),0,Red);
res=OrderSend(Symbol(),OP_SELL,0.01,Bid,3,0,0, "basic",_MagicNumber,0,Red);
OrderSelect(res, SELECT_BY_TICKET);
OrderModify(OrderTicket(), OrderOpenPrice(),NormalizeDouble( Ask+StopLoss*Point,Digits),NormalizeDouble( Ask-TakeProfit*Point,Digits),0,Red);
Liebe Programmierer, ich bitte um Hilfe bei der Modifizierung des Expert Advisors: Ich habe eine offene Position und nach einiger Zeit gibt es ein zweites Signal, um die Position in die gleiche Richtung zu öffnen. Ich möchte, dass der neue Auftrag nur dann durch das zweite Signal erfüllt wird, wenn der erste Auftrag bereits im Plus ist. Ich habe dies durch den Vergleich von Kontostand und Eigenkapital umgesetzt (wenn das Eigenkapital höher ist als der Kontostand, ist der eröffnete Auftrag im Plus).
Können Sie einen Code vorschlagen, um den Gewinn/Verlust des letzten offenen Auftrags zu ermitteln?
Wenn seine Ticketnummer gespeichert ist, dann einfach
Wenn seine Ticketnummer gespeichert ist, genügt es
Ich danke Ihnen! Können Sie mir sagen, wie ich das Ticket der letzten Bestellung speichern kann?
Nun, die einfachste Möglichkeit ist, eine globale Variable int ticket zu deklarieren
und ersetzen Sie ticket = OrderSend(...) überall durch ticket = OrderSend(...)
es wird immer die Nummer des zuletzt geöffneten Auftrags gespeichert
Oder siehe nur Thema "Nützliche Funktionen von KimIV"!
Nun, die einfachste Möglichkeit ist, eine globale Variable int ticket zu deklarieren
und ersetzen Sie ticket = OrderSend(...) überall durch ticket = OrderSend(...)
es wird immer die Nummer des zuletzt geöffneten Auftrags gespeichert
oder siehe Thema "Nützliche Funktionen von KimIV" nur
Helfen Sie mir, einen Fehler zu finden,
Dankeschön
Ich weiß es nicht... Dachte, es würde funktionieren, es funktioniert auch nicht ohne, habe es so gemacht und es funktioniert....
PRICE_OPEN !!!! - Sie können diesen Preis nicht verwenden! Sie funktioniert nur bei Indikatoren. Verwenden Sie Bid oder Ask.
Ich danke Ihnen!!! Ja, das ist auf jeden Fall eine Möglichkeit.
Jungs eine kompliziertere Frage......
Wie man einen EA dazu bringt, alle Aufträge zu schließen, wenn ein bestimmter Gewinn erreicht ist .... Nur Aufträge für ein Symbol schließen ...
Beispiel: EA arbeitet auf 3 Paare Betrag zu schließen alle Aufträge auf ein Symbol 100p ...
Wenn der EUR mehr als 100 Pence hat, werden nur EUR-Aufträge geschlossen, während andere 200 Pence haben können ...
Wenn ich accountbalanse() nehme, dann schließt der Advisor nur, wenn die Summe der drei Paare mehr als 100p beträgt. Diese Option passt mir nicht !!!!
Hilfe bitte.........