Скрипты: Pending orders DOWN - страница 2

 
Vladimir Karputov:

Входной параметр - объём позиции был поставлен на будущее: когда наберётся несколько предложений по модернизации, тогда он будет включен в коле. Пока же скрипт ставит отложенные ордера минимально-возможным объёмом.

Так это же очевидное желание, зачем ждать нескольких предложений, когда можно сделать сразу так, чтобы скрипт был максимально гибким... Это риторический вопрос...

Тогда попрошу помочь с последним: даун-вниз от цены селл? ап - вверх от цены бай? И из-за чего может не выставляться ордер? Вроде настройки все проставлены, но ордера нет...

Спасибо Вам огромное за помощь!

 
KentR:

Так это же очевидное желание, зачем ждать нескольких предложений, когда можно сделать сразу так, чтобы скрипт был максимально гибким... Это риторический вопрос...

Тогда попрошу помочь с последним: даун-вниз от цены селл? ап - вверх от цены бай? И из-за чего может не выставляться ордер? Вроде настройки все проставлены, но ордера нет...

Спасибо Вам огромное за помощь!

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

 

Проверил... Похоже, что теперь значение в первом поле слишком большое и мне нужны знаки после запятой... Возможно ли это?

 
Повторю текст: после смены значения первой ячейки, ее влияние на цену поменялось и мне теперь нужны дробные значения, меньше 1... Я так понимаю, что текущая проблема из-за этого
 
KentR:

Проверил... Похоже, что теперь значение в первом поле слишком большое и мне нужны знаки после запятой... Возможно ли это?

Скрипт не при чём. Ответ отмечен на Вашем скриншоте значком "ошибка". В общем торгуйте на другом символе.

 

 Здравствуйте,скрипт действительно замечательный и в единственном числе на MQ5,но хотелось бы иметь в своем арсенале такой же,но с лотом,ну скажем 1 или 0.5.

Спасибо за труды и с наступающими праздниками.

 
Михаил Рымарь:

 Здравствуйте,скрипт действительно замечательный и в единственном числе на MQ5,но хотелось бы иметь в своем арсенале такой же,но с лотом,ну скажем 1 или 0.5.

Спасибо за труды и с наступающими праздниками.

В данной серии изначально была идея использовать именно минимальный лот. Поэтому пока только так.

 

Здравствуйте, скрипт отличный и прекрасно работает.

Пользуюсь таким же для выставления сети вверх, и хотелось бы попросить вас: можете ли совместить их в один? Имею ввиду скрипт, который выставлял бы сети ордеров и вверх, и вниз одновременно, с одинаковыми параметрами для сети в лонг, и шорт. 

 
mason_one:

Здравствуйте, скрипт отличный и прекрасно работает.

Пользуюсь таким же для выставления сети вверх, и хотелось бы попросить вас: можете ли совместить их в один? Имею ввиду скрипт, который выставлял бы сети ордеров и вверх, и вниз одновременно, с одинаковыми параметрами для сети в лонг, и шорт. 

Спасибо за проявленный интерес. Публикую скрипт (не советник) который выставляет сетку отложенных ордеров и вверх и вниз - Pending orders UP DOWN.

 




Здравствуйте,
Почему не меняется объём позиций.(в терминале) ? - хотя отображается при смене параметра перед запуском,А в версии бай - всё меняется .....

нашёл:

Чтобы скрипт выставлял одинаковый объем у всех отложенных ордеров на Buy и Sell нужно немного изменить код:

//--- start work DOWN
   start_price_ask=m_symbol.Ask()-m_gep;
   start_price_bid=m_symbol.Bid()-m_gep;
//--- pending orders DOWN
   for(int i=0; i<InpQuantity; i++)
     {
      double price_ask     = start_price_ask-i*m_step;
      double price_bid     = start_price_bid-i*m_step;
      if(InpDownOrders==buy_limit)
        {
         double sl         = (ExtStopLoss==0.0)   ? 0.0 : price_ask - ExtStopLoss;
         double tp         = (ExtTakeProfit==0.0) ? 0.0 : price_ask + ExtTakeProfit;
         m_trade.BuyLimit(m_symbol.LotsMin(),m_symbol.NormalizePrice(price_ask),m_symbol.Name(),    // m_symbol.LotsMin() нужно заменить на InpLots
                          m_symbol.NormalizePrice(sl),
                          m_symbol.NormalizePrice(tp));
        }
      else
        {
         double sl         = (ExtStopLoss==0.0)   ? 0.0 : price_bid + ExtStopLoss;
         double tp         = (ExtTakeProfit==0.0) ? 0.0 : price_bid - ExtTakeProfit;
         m_trade.SellStop(m_symbol.LotsMin(),m_symbol.NormalizePrice(price_bid),m_symbol.Name(),    // m_symbol.LotsMin() нужно заменить на InpLots
                          m_symbol.NormalizePrice(sl),
                          m_symbol.NormalizePrice(tp));
Причина обращения: