Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1712

 
MakarFX #:

Пробуй

Выделено желтым. Так и должно быть?

так ничего ж не поменял. Так и были птички повернуты. Я вас не понимаю. Вы хотите чтобы я убрал их, повернул или эту строку вообще удалил?

 
Порт-моне тв #:

так ничего ж не поменял. Так и были птички повернуты. Я вас не понимаю. Вы хотите чтобы я убрал их, повернул или эту строку вообще удалил?

Я спросил про "птички", т.к. условие одинаковое и для бай и для селл.

 
Порт-моне тв #:
вы все еще пытаетесь найти ошибку, но я вас уже несколько часов прошу о другом. Почему так?

после успешного OrderSend нужно обновлять переменную OrderOfSymbol.
или же выходить и ждать следующего тика.

 
MakarFX #:

Я спросил про "птички", т.к. условие одинаковое и для бай и для селл.

задвоение происходит только по бай-бай или селл-селл, типа селл-бай или бай-селл не происходит

 
Taras Slobodyanik #:

после успешного OrderSend нужно обновлять переменную OrderOfSymbol.
или же выходить и ждать следующего тика.

ок, и как это сделать? 

 
Порт-моне тв #:

Ну так я итак по истории в тестере вижу где задвоился, когда, какими параметрами. Что это дает?

Искать надо не где задвоился, а по какой причине задвоился. Я предлагал печатать не факт открытия, а условия открытия. Это поможет определить причину… Удаление такого дублирующего ордера даст только дополнительный убыток.

 
Alexey Viktorov #:

Искать надо не где задвоился, а по какой причине задвоился. Я предлагал печатать не факт открытия, а условия открытия. Это поможет определить причину… Удаление такого дублирующего ордера даст только дополнительный убыток.

Спасибо, но я это понял еще вчера вечером. 

 
MakarFX #:

Подскажите, пожалуйста, как получить значение

до запуска OnInit()?

Возможно есть другой способ узнать язык интерфейса до запуска OnInit() .

Vitaly Muzichenko #:

Никак, только внутри Функций. В OnInit() или после неё, но не до неё.

Ну вы даёте………

string terminalLanguage = TerminalInfoString(TERMINAL_LANGUAGE);

/********************Script program start function*******************/
void OnStart()
 {
  Print(terminalLanguage);
 }/******************************************************************/
2021.11.03 16:25:08.033 00 EURJPY,M15: Russian
 
Вообщем я так понял функцию удаления ордера по одинаковому лоту, цене и времени открытия от предыдущего мне тут никто не напишет. Упрямство - грех, ребята. 
 
Порт-моне тв #:
Вообщем я так понял функцию удаления ордера по одинаковому лоту, цене и времени открытия от предыдущего мне тут никто не напишет. Упрямство - грех, ребята. 

Вот так проверьте

   if(sb1 + sb1/100*LotRisk*(DayMultiplicatorProfit/100/2) > AccountBalance()  && TimeCurrent()>TimeCheck_a && TimeCurrent()<TimeCheck_ac && Ogranichitel > 0)
     {

      if(CounterOrderTradeType(-1)<1)
         if(signal=="buy")
            if(Close[1]>Open[1])
              {
               ticket = OrderSend(Symbol(),OP_BUY, Lot, Ask, 3, SLbuy, TPbuy, "открыт ордер на покупку", Magic, 0, Green);
               Print("OpenOrderSuccess");
              }


      if(CounterOrderTradeType(-1)<1)
         if(signal=="sell")
            if(Close[1]>Open[1])
              {
               ticket = OrderSend(Symbol(),OP_SELL, Lot, Bid, 3, SLsell, TPsell, "открыт ордер на продажу", Magic, 0, Red);
               Print("OpenOrderSuccess");
              }

     }
Причина обращения: