Wenn der für alle Orders funktionieren soll, dann versuchs mal ohne MagicNumber-Abfrage. Nur nach OrderType() gehn.
For-Loops sind echt nicht mein Gebiet, aber kanns sein, dass Deine immer nur eine Order sucht, und die Restlichen nicht?
Code:
for(i=OrdersTotal()-1;i>=0;i--){
if(OrderSelect(i,SELECT_BY_POS)){
if(OrderType()==OP_SELL{
Sell-TS einrichten...}
if(OrderType()==OP_BUY){
Buy-TS einrichten...}
Beschwert Euch von mir aus, dass ich wieder nen Thread kapere, aber:
Wenn ein EA nur SL, TP, BreakEven, TrailingStop nachträglich einfügen/anpassen soll, er eigentlich nur Orders, die schon im Markt sind, modifizieren soll, muss er dann eigentlich Init/Deinit haben? Statt OnStart() könnte man vielleicht OnEvent() oder sowas benutzen? Man müsste man ihn nicht mal in den Chart ziehn, sondern nur im EA-Verzeichnis haben. Aktivieren oder Stoppen müsste man ihn auch nicht, oder?