Happytigra

 
Уровень 6

  Торгую в компаниях:


Группа "Стол заказов MQL"

Рейтинг 2081



РЕКОМЕНДУЮ



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

Добрый день.
Прошу доработать советник, который делали здесь, в заказе Доработать советник
В нем я заметила такую особенность, что если сделка закрывается в минус не по SL, а в результате гепа после выходных, то следующая сделка опять начинается с 0,01, т.е. не идет умножение лота.
Можно ли это поправить, например поставить условие что если сделка закрывается в минус, тогда следующая открывается с умножением лота.
Советник лежит тут: Советник
  • 0
  • Просмотров: 2853
  • 2 июля 2015, 14:40
  • Happytigra
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Индикаторы Bears и Bulls Power.
Следующая запись в группе  
Советник
01 июля 2015
03 июля 2015

Комментарии (11)

+
0
В нем я заметила такую особенность, что если сделка закрывается в минус не по SL, а в результате гепа после выходных, то следующая сделка опять начинается с 0,01, т.е. не идет умножение лота.


В советнике для расчета лота сравниваются цены открытия и закрытия ордера.
Покажите на примере, где такое произошло после гепа?


//+------------------------------------------------------------------+
int isClosePosByProfit_or_Loss()
  {
// закрылись в прибыль = 1, в убыток = 0, нет закрытых ордеров = -1
   int i,k=OrdersHistoryTotal();

   for(i=k-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
        {
         if(OrderSymbol()==Symb && OrderMagicNumber()==MagicNumber)
           {
            if(OrderCloseTime()>LastTime && OrderTicket()!=LastTicket)
              {
               double opPr = OrderOpenPrice();
               LastTime    = OrderCloseTime();
               LastTicket  = OrderTicket();
               LastLot     = OrderLots();
               if(OrderType()==0)
                 {
                  if(OrderClosePrice() >= opPr) return(1); // закрылись в прибыль
                  else                          return(0); // закрылись в убыток
                 }
               if(OrderType()==1)
                 {
                  if(OrderClosePrice() <= opPr) return(1); // закрылись в прибыль
                  else                          return(0); // закрылись в убыток
                 }
              }
           }
        }
     }
   return(-1);
  }
//+------------------------------------------------------------------+

Редактирован: 2 июля 2015, 15:00
avatar

  34  AM2 Сообщений: 15871 - Андрей

  • 2 июля 2015, 14:59
+
0
Сделка была открыта 26.06.2015 в 15.30 EURUSD на демо счете. Закрылась после выходных с большим минусом, больше чем стоп лосс. Хотя в тестере, если таким же сетом прогонять советник за этот день, сделка закрывается в 00.00 29.06.2015 по стоп лоссу.
На скриншоте видно как закрылась сделка на демо счете и как закрылась в тестере стратегии.
avatar

  6  Happytigra Автор Сообщений: 138

  • 4 июля 2015, 20:07
+
0
Такой цены 1,1110 в реале не существовало, поэтому у вас и закрылась сделка по ближайшей существующей. А то, что в тестере сделки могут закрываться по несуществующим ценам — это и есть одно из отличий тестера *pardon*  Так он сделан разработчиками.
avatar

  27  Oxy Сообщений: 3418 - ..ιllιlι.lι.ιllι.ιlι..

  • 5 июля 2015, 15:04
+
0
Можно ли добавить в этот советник две функции:
1) закрытие открытых сделок в определенное время в пятницу. При этом, если советник закрывает с минусом, следующая сделка должна открыться с умножением лота.
2) ограничение открытия сделок после 13.00 в пятницу.
avatar

  6  Happytigra Автор Сообщений: 138

  • 6 июля 2015, 09:39
+
0
Сделаю.
avatar

  34  AM2 Сообщений: 15871 - Андрей

  • 6 июля 2015, 11:00
+
0
1) закрытие открытых сделок в определенное время в пятницу. При этом, если советник закрывает с минусом, следующая сделка должна открыться с умножением лота.
2) ограничение открытия сделок после 13.00 в пятницу.


Сделал оба пункта: www.opentraders.ru/downloads/769/
avatar

  34  AM2 Сообщений: 15871 - Андрей

  • 7 июля 2015, 10:55
+
0
Спасибо!
но советник начинает выставлять начальный лот после перезагрузки терминала. Можно эту ошибку поправить?
avatar

  6  Happytigra Автор Сообщений: 138

  • 17 июля 2015, 15:17
+
0
Добрый день
можно ли все-таки исправить ошибку, когда перегружаешь терминал, то советник начинает выставлять ордера с начального лота? Советник должен продолжать работу.
Вторая просьба — советник должен открывать сделки при каждом сигнале, сейчас может быть только одна открытая сделка в рынке.
avatar

  6  Happytigra Автор Сообщений: 138

  • 18 сентября 2015, 14:08
+
0
Я сейчас за чужой код не берусь. Только намучаешься и время потеряешь.
avatar

  34  AM2 Сообщений: 15871 - Андрей

  • 18 сентября 2015, 14:41
+
0
Oxy уже не занимается написанием/корректировкой советников?
avatar

  6  Happytigra Автор Сообщений: 138

  • 18 сентября 2015, 14:55
+
+2
за webmoney
avatar

  27  Oxy Сообщений: 3418 - ..ιllιlι.lι.ιllι.ιlι..

  • 18 сентября 2015, 15:19

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий
Начать торговлю с Альпари