Помогите исправить советник

 

Помогите исправить советник. если он работает один, то все нормально, а если открывать ордера в ручную или другим советников начинает глючить (делает модификации не туда куда нужно, но чаще всего зависает).

Файлы:
k2.mq4  15 kb
 
В советнике указан автор, почему бы не обратиться к автору? К тому же, судя по автору, советник писан на заказ, так-что это святой долг автора.
 
titto32:

Помогите исправить советник. если он работает один, то все нормально, а если открывать ордера в ручную или другим советников начинает глючить (делает модификации не туда куда нужно, но чаще всего зависает).

Ужасный код... Даже ковыряться неохота... К автору с зениткой в гости за такое... чудо.
 
Integer:
В советнике указан автор, почему бы не обратиться к автору? К тому же, судя по автору, советник писан на заказ, так-что это святой долг автора.

Автор ковыряется уже третий день никак не может довести до ума, по крайней мере он так говорит.
 

Код - монстр Франкенштейна!

Программер такое напишет только в пьяном угаре, да и то хоть как-то структурирует, хоть бы даже по переменным..

 

Я бы тоже не смог, как минимум код хочется ужать в пару раз.

косяк в том что в логике идет прямая отсылка к OrdersTotal

     if(OrdersTotal() - nn*n < n)
      {
       j=0;
       RefreshRates();
       OrderSelect (0, SELECT_BY_POS, MODE_TRADES);
       tp = OrderOpenPrice() - takeprofit*Point;
       for (ii=OrdersTotal()-1-n*nn;ii>=0;ii--)  
         {
          RefreshRates();
          OrderSelect (ii, SELECT_BY_POS, MODE_TRADES);
          if(NormalizeDouble(OrderTakeProfit(), Digits) != NormalizeDouble(tp, Digits))
            {
          RefreshRates();
          OrderSelect (ii, SELECT_BY_POS, MODE_TRADES);
          c = OrderModify(OrderTicket(), OrderOpenPrice(), OrderStopLoss(), tp, 0, Green);
 
ktest0:

Код - монстр Франкенштейна!

Программер такое напишет только в пьяном угаре, да и то хоть как-то структурирует, хоть бы даже по переменным..

Зато в первых рядах исполнителей на пятёре (16)... Жаль, блин, заказчиков... реально...
Причина обращения: