when i have some orders and i use OrderSelect(,by pos) to select orders if i write OrderSelect(0,by pos),it returns my newest order(or modification) or my last order?
- inquiry on Program Logic of Trailing Stop
- How many orders are selected with OrderSelect(SELECT_BY_POS ,MODE_HISTORY)?
- OrderModify Error 130, Stop is valid, but it does not work
the first order (by pos)
smsafaee:
when i have some orders and i use OrderSelect(,by pos) to select orders if i write OrderSelect(0,by pos),it returns my newest order(or modification) or my last order?
It returns the earliest open order in the terminal. Not necessarily the oldest order on the current chart nor the oldest opened by the EA. Always use a select loop. Always count down when there could be multiple open orders (multiple charts) when modifying/closing/deleting. If you actually need the first order or last, just remember the ticket and reselect.when i have some orders and i use OrderSelect(,by pos) to select orders if i write OrderSelect(0,by pos),it returns my newest order(or modification) or my last order?
int ticketLast=0, ticketFirst=0; for(pos = OrdersTotal()-1; pos >= 0 ; pos--) if ( OrderSelect(pos, SELECT_BY_POS) // Only my orders w/ && OrderMagicNumber() == magic.number // my magic number && OrderSymbol() == Symbol() ){ // and my pair. if (ticketLast == 0) ticketLast = OrderTicket(); ticketFirst = OrderTicket(); } if (ticketFirst != 0 && OrderSelect(ticketFirst, SELECT_BY_TICKET){ // do something with the first. }

You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register