For example:
Code:
double lot = Lots;
int ticket = GetLastOrder(Symbol(), OP_BUY, MODE_HISTORY);
if (ticket >= 0) {
OrderSelect(ticket, SELECT_BY_TICKET, MODE_HISTORY);
if (OrderProfit() > 0) lot = 2*OrderLots();
}
int GetLastOrder(string symbol, int type, int mode) {
int cnt = -1;
if (mode == MODE_TRADES) cnt = OrdersTotal(); else
if (mode == MODE_HISTORY) cnt = HistoryTotal(); else
return(-1);
int ticket = -1;
datetime dt = 0;
for (int i=0; i < cnt; i++) {
if (!OrderSelect(i, SELECT_BY_POS, mode)) continue;
if (OrderSymbol() != symbol) continue;
if (OrderMagicNumber() != Magic) continue;
if (OrderCloseTime() > dt && OrderType() == type) {
dt = OrderCloseTime();
ticket = OrderTicket();
}
}
return(ticket);
}