Нужна помощь! Проверка направления последних 3-х ордеров в истории в мультивалютном эксперте

 
Привет всем.
Нужна помощь: Пишу советника и возникла проблема.
Мне нужно посмотреть по символу (магик значения не имеет - он не используется, зато торгую сразу на нескольких валютах, на каждом графике свой советник) каким было направление последнего, предпоследнего и предпредпоследнего ордеров.
Если 2 последних или 3 последних ордера открывались в одну сторону, выдать 1. Если 2 последних в разную - выдать 2.
Перепробовал разные коды - не помогло. По идее при 2 убыточных сделках в одну сторону должен перевернуться но почему-то и дальше ставит в ту же сторону. Естественно сносит депо.

Если у кого есть такая фишка, реализованная в отдельной функции, прошу, поделитесь! Третий день дерусь с МТ4 в попытке сделать эту функцию но пока безрезультатно.


Или хотя бы напишите код проверки двух последних сделок по конкретному символу если обе сделки с убытком и в одном направлении.
 

Речь идёт только о закрывшихся ордерах?

 
Да, только закрытые ордера.
Но проблема в том что 1 советник торгует с 1 парой, а советников будет много.
 
А если как-нибудь так?
int Revers() {
  int cnt=0;
  int bcnt=0;
  int scnt=0;
  double bProfit = 0;
  double sProfit = 0;
  int LastHstOrder=OrdersHistoryTotal()-1;
  for (int i= LastHstOrder; i>=0; i--) {
    if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==false) {
      Print("Ошибка при доступе к исторической базе (",GetLastError(),")");
      return(-1);
    }
    if (OrderSymbol()==Symbol() && OrderType() <= OP_SELL) {
      cnt++;
      if (OrderType() == OP_BUY) {
        bcnt++;
        bProfit += OrderProfit();
      }
      if (OrderType() == OP_SELL) {
        scnt++;
        sProfit += OrderProfit();
      }
      if (cnt == 3) {
        if (bcnt > 1 && bProfit < 0) return(1);
        if (scnt > 1 && sProfit < 0) return(2);
        return(0);
      }
    }
  }
  return(0);
}
 
Большое спасибо! Попробую! Может вы также подскажете как на реквотах не пролетать? Просто присвоить значение ордерсенд тикету и переотправлять его при ошибке с паузами в 1000?
 

Я пользуюсь советниками только в тестере, для проверки стратегий - не доверяю автоторговле.

 
Ясно, спасибо за помощь!