Советники: Sprut - страница 3

 

Это отличная программа для тех, кто любит сеточные стратегии, и ее можно легко настроить. Однако в этой версии для португальского сайта MQL5 есть несколько ошибок, которые необходимо исправить, чтобы избежать повторных котировок и/или ошибок исполнения. К ним относятся:


В строке 148, с "for(int i=0;i<CountOrders;i++)" на "for(int i=1;i<CountOrders;i++)", т . е. меняется счетчик с числа "0" на "1".

В строке 185 с "price=price_sell_limit-(double)i*ExtStepLimit;" на "price=price_sell_limit+(double)i*ExtStepLimit;". Другими словами, отрицательный знак "-" инвертируется в положительный знак "+".

 

Доброе утро.

Не могли бы вы уточнить, позиции, которые закрываются при достижении прибыли/убытка, относятся только к торгуемому символу? Или все позиции на счете?

Спасибо.

 
psrs55 :

Доброе утро.

Не могли бы вы уточнить, позиции, которые закрываются при достижении прибыли/убытка, относятся только к торгуемому символу? Или все позиции на счете?

Спасибо.

Закрываются по символу и магическому числу:

//+------------------------------------------------------------------+
//| Закрыть все позиции|
//+------------------------------------------------------------------+
void CloseAllPositions()
  {
   for(int i=PositionsTotal()-1;i>=0;i--) // возвращает количество текущих позиций
      if(m_position.SelectByIndex(i))     // выбирает позицию по индексу для дальнейшего доступа к ее свойствам
         if(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==m_magic)
            m_trade.PositionClose(m_position.Ticket()); // закрыть позицию по указанному символу
  }
 
Joao Raimundo Alexandre Neto т.е. изменить счетчик с числа "0" на "1".

В строке 185 с "price=price_sell_limit-(double)i*ExtStepLimit;" на "price=price_sell_limit+(double)i*ExtStepLimit;". Другими словами, отрицательный знак "-" инвертируется в положительный знак "+".

Новая корректирующая строка 148, с "for(int i=0;i<CountOrders;i++)" на "for(int i=1;i<=CountOrders;i++)", т.е . измените счетчик с числа "0" на "1", а затем добавьте знак "<".

 

 Советник испытал под свои задачи, как помощника в ручной торговле. Советник отличный, стабильный. Как по мне так настройками облеплен слегка излишне, но все работает..., можно приспособиться. Мартингейл не испытывал, так как он мне сейчас не нужен, поэтому про него сказать ничего не могу.

НЕКОТОРЫЕ ОСОБЕННОСТИ.... Количество ордеров БайСтоп, СеллСтоп, БайЛимит выставляет согласно настройкам. Ордер СеллЛимит выставляет только один, не зависимо от количества заданного в настройках. Время жизни отложенного ордера в 60 минут следует считать нулевым отсчетом, то есть чтобы задать время жизни отложенного ордера в 1 час в настройках надо прописать 120 минут, 2 часа- 180 минут и т.д...

 
Я хотел бы попросить об обновлении: когда FirstOrder останавливается, может ли он снова вернуть его в определенное место?
 
неисполнимый