- Functions in the loop
- OrderDelete Function or the broker issue
- OrderDelete Problem
Your code is twice as wide as my screen and to be honest, I can't be bothered to scroll back and forth in order to read it.
If you make your code easier to read, on different lines and with indentation, you will probably get more people willing to help you.
double OpenPoint = iOpen(Symbol(), PERIOD_W1, 0); int total, i, ticket, OrdOpen; total = OrdersTotal(); for(i=0; i<total; i++) { if(OrderSelect(i, SELECT_BY_POS)==true) { if(OrderSymbol() == Symbol() && OrderType() == OP_BUYSTOP && Ask < OpenPoint) bool res=OrderDelete(ticket); if(OrderSymbol() == Symbol() && OrderType() == OP_SELLSTOP && Bid > OpenPoint) res=OrderDelete(ticket); } } return(0);
You haven't made the variable "ticket" equal to a valid ticket number.
You need to either make the variable "ticket" equal to OrderTicket() inside the OrderSelect() IF statement or just use OrderTicket() inside the OrderDelete().
if(OrderSymbol() == Symbol() && OrderType() == OP_BUYSTOP && Ask < OpenPoint) bool res=OrderDelete(OrderTicket()); if(OrderSymbol() == Symbol() && OrderType() == OP_SELLSTOP && Bid > OpenPoint) res=OrderDelete(OrderTicket());
You should also consider counting down in your FOR loop. See Loops and Closing or Deleting Orders.
You haven't made the variable "ticket" equal to a valid ticket number.
You need to either make the variable "ticket" equal to OrderTicket() inside the OrderSelect() IF statement or just use OrderTicket() inside the OrderDelete().
.
Thanks, Thirteen! I'll give it a whirl.
OrderDelete(OrderTicket());
Thanks, Thirteen! I'll give it a whirl.
Thirteen, it works like a charm. Thanks again!
for(i=0; i<total; i++)Count DOWN. Loops and Closing or Deleting Orders - MQL4 forum
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use