Всем привет! Ребята, подскажите пожалуйста, как привязать вот это вместо таймера к тикам?
Использовать стандартное событие - OnTick(), а не OnTimer().
Использовать стандартное событие - OnTick(), а не OnTimer().
так я его и использую, нопочему то все равно через 20 секунд к примеру сова срабатывает. Он же 20 тиков должен ждать по идее?
int OnInit() { //--- Comment(""); EventSetTimer(1); // количество секунд //--- return(INIT_SUCCEEDED); } void OnDeinit(const int reason) { void OnTick() { операторы ... }
так я его и использую, нопочему то все равно через 20 секунд к примеру сова срабатывает. Он же 20 тиков должен ждать по идее?
Покажите, что и как Вы делаете? Из приведенного кода не видно никаких 20 секунд или тиков.
extern int Second = 20; int OnInit() { //--- Comment(""); EventSetTimer(1); // количество секунд //--- return(INIT_SUCCEEDED); } void OnDeinit(const int reason) { //--- } void OnTick() { int i; for(i=OrdersTotal()-1;i>=0;i--) if(OrderSelect(i,SELECT_BY_POS)) if(Flag_Close_cur_Par==false || (Flag_Close_cur_Par && OrderSymbol()==Symbol())) if(OrderType()==OP_BUY || OrderType()==OP_SELL) if(TimeCurrent()>OrderOpenTime()+Second) if(IsTradeAllowed() && !IsTradeContextBusy() && IsConnected()) { RefreshRates(); if(!OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),1,clrGoldenrod)) Print("F: ",__FUNCTION__,"() L: ",__LINE__," ",OrderSymbol(),". I can not close an order with Tic = ",OrderTicket()," _LastError = ",_LastError); } }
попробуйте так:
int cntr; int OnInit() { cntr=0; } void OnTick() { cntr++; if(cntr%20!=0) return; //тут действия }
каждые 20 тиков что-то будет делать
Здесь привязка ко времени открытия ордера. Каждый ордер закрывается через 20 секунд после своего открытия. Именно это лучше делать в OnTimer, учет будет точнее. Ведь приход тика не привязан к секундам. Если же нужно посчитать количество тиков после какого-то события, то поставьте счетчик в OnTick() по типу того, как показано постом выше.
- 2019.11.11
- www.mql5.com
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Всем привет! Ребята, подскажите пожалуйста, как привязать вот это вместо таймера к тикам?