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

 
EVGENII SHELIPOV #:

Для чего нужен этот таймер

Здесь
Документация по MQL5: Обработка событий / OnTimer
Документация по MQL5: Обработка событий / OnTimer
  • www.mql5.com
OnTimer - Обработка событий - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
MakarFX #:
Мог и ответить...вопрос не личный)

Когда-то написал прочесть справку, модераторы указали что нельзя так. И там конкретно тебя спрашивал.

 
Andrey Sokolov #:

Когда-то написал прочесть справку, модераторы указали что нельзя так. И там именно личный, конкретно тебя спрашивал.

Это вопрос по встроенной функции - поэтому справка

Просто никто не отвечал раньше, вот и написал тому кто отвечает

 
MakarFX #:

Это вопрос по встроенной функции - поэтому справка

Просто никто не отвечал раньше, вот и написал тому кто отвечает

Если указывают кого-то конкретно, то я считаю это личным обращением. 

Может по этому поводу подскажешь? https://www.mql5.com/ru/forum/160683/page1650#comment_25081067

 
Andrey Sokolov #:

Если указывают кого-то конкретно, то я считаю это личным обращением. 

Может по этому поводу подскажешь? https://www.mql5.com/ru/forum/160683/page1650#comment_25081067

Полемика...

Вопрос не личного характера.

 
MakarFX #:
Здесь

Насколько я понял применением данного таймера можно регулировать скорость оптимизации и тестирования?

 
EVGENII SHELIPOV #:

Насколько я понял применением данного таймера можно регулировать скорость оптимизации и тестирования?

Таймер в тестере не работает.

Если тебе надо что-то выполнить через определенное время независимо от тиков, то используешь Таймер.

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

Взял код из МТ, но он не работает, на каждом тике открывает бай, миллион баев на трех свечах

void OnTick(void)
  {
    int cnt, total;
    if(*************) 
      { 
        OrderSend(Symbol(), OP_BUY, lots, Ask, 3, Bid - SL * Point, 0, NULL, 888, 0, Blue); 
      }    
     
    if(*************) 
      { 
        OrderSend(Symbol(), OP_SELL, lots, Bid, 3, Ask + SL * Point, 0, NULL, 888, 0, Red); 
      }    
      

   for(cnt=0;cnt<total;cnt++)
     {
      if(!OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
         continue;
      if(OrderType()<=OP_SELL &&   
         OrderSymbol()==Symbol())  
        {
         if(OrderType()==OP_BUY)
           {
            if(*****************)
              {
               if(!OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet))
                  Print("OrderClose error ",GetLastError());
               return;
              }
           }
         else
           {
            if(*****************)
              {
               if(!OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet))
                  Print("OrderClose error ",GetLastError());
               return;
              }
           }
        }
     } 
  }


Хочу, чтобы бай и сел были независимы друг от друга и открывались по разным сигналам

 
Ivan Butko #:
Подскажите, пожалуйста, как выглядит код при следующий условиях: проверять условие входа на бай только в том случае, если сделка по бай закрылась.

Взял код из МТ, но он не работает, на каждом тике открывает бай, миллион баев на трех свечах

Здесь функция поиска ордеров и если поиск бай = 0, то открываем и т.д.

 
MakarFX #:

Здесь функция поиска ордеров и если поиск бай = 0, то открываем и т.д.

К сожалению, сложно понять, как использовать такой код.


Попробовал при открытии бай ордера поставить флаг в 1, а когда закрывается - флаг в 0, и добавил последний в условие открытия. Не прокатило)
Странно, по сути нарушается правило: открывать, если флаг==0. А он и при 1 всё равно равно понаоткрывал на одной свечке.

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