Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Узнай самые обсуждаемые темы на форуме. Заходи в раздел Стена!
Александр
95
Александр 2016.03.05 15:51 

Спасибо!

Victor Nikolaev
Модератор
14364
Victor Nikolaev 2016.03.05 16:30  
Александр:

Советник должен открывать ордер, который закрывается в конце часа. После закрытия ордера смотрится последний ордер в истории, если он в плюсе открывается такой же, если в минусе должен открываться в увеличенным лотом. Ошибка в том, что советник открывает только один ордер увеличенным лотом, а должен каждый последующий. Т.е. ордер закрыт в минусе 0,01 лотом, сдедующий открывается 0,02 лотом, если и он в минусе закрылся, то открывается 0,04 и т.д.

 

Для вставки кода в редакторе есть кнопка SRC. Пользуйтесь ей пожалуйста.

Советник рассчитан на работу в тестере 

Lilita Bogachkova
1279
Lilita Bogachkova 2016.03.05 22:08  
Александр:

Советник должен открывать ордер, который закрывается в конце часа. После закрытия ордера смотрится последний ордер в истории, если он в плюсе открывается такой же, если в минусе должен открываться в увеличенным лотом. Ошибка в том, что советник открывает только один ордер увеличенным лотом, а должен каждый последующий. Т.е. ордер закрыт в минусе 0,01 лотом, сдедующий открывается 0,02 лотом, если и он в минусе закрылся, то открывается 0,04 и т.д.

 

Вы не правильным объемом закрывали открытие ордера.
   if(OrdersTotal()>0) // Если уже совершена покупка или продажа.
     {
      if(Fun_New_Bar()==false) // Если нет нового бара выходим.
        {
         return(0);
        }
      if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES))// Если есть новый бар выбираем ордер (он у нас должен быть всего один).
        {       
         if(OrderType()==OP_BUY && MagicNumber) // Если это Buy..
           {
            if(OrderClose(OrderTicket(),OrderLots(),Bid,0)) // ..закрываем его.
               return(0);
           }
         if(OrderType()==OP_SELL && MagicNumber) // Если это Sell..
           {
            if(OrderClose(OrderTicket(),OrderLots(),Ask,0)) // ..закрываем его.
               return(0);
           }
        }
     }
Александр
95
Александр 2016.03.06 09:13  
lilita bogachkova:
Вы не правильным объемом закрывали открытие ордера.
Огромное спасибо! А то я всю голову сломал уже.
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий