Запуск одной и той же функции через каждые 5 минут

 

Доброго времени суток, тут все такие умные голова пухнет, вопрос наверняка простой нашёл похожие но они в итоге вылились в обсуждение, чего то непонятного. Подскажите пожалуйста как сделать так чтобы функция запускалась каждые 5 минут. Пробовал сделать примерно так но ничего не получилось советник числиться неактивным, и потом уже как сделал понял что оно будет запускаться за одну минуту, кратную пяти несколько раз, я уверен что есть более лёгкий и надежный способ, извините за нубовский вопрос просто первый день этим занимаюсь ;)

int start()
{

int Cur_Min = Minute();

switch(Cur_Min)
{
case 5:

continue;
case 10:

continue;
case 15:

continue;
case 20:

continue;
case 25:

continue;
case 30:

continue;
case 35:

continue;
case 40:

continue;
case 45:

continue;
case 50:

continue;
case 55:
continue;
}

return;
}

 
audiomoroz:

Доброго времени суток, тут все такие умные голова пухнет, вопрос наверняка простой нашёл похожие но они в итоге вылились в обсуждение, чего то непонятного. Подскажите пожалуйста как сделать так чтобы функция запускалась каждые 5 минут. Пробовал сделать примерно так но ничего не получилось советник числиться неактивным, и потом уже как сделал понял что оно будет запускаться за одну минуту, кратную пяти несколько раз, я уверен что есть более лёгкий и надежный способ, извините за нубовский вопрос просто первый день этим занимаюсь ;)



Запускать используя Period_M5. По открытию бара
 
start()
{
 if (Minute() % 5 != 0) return;

 .................
}

Но это не совсем верно. Если придёт несколько тиков в секунду, то функция сработает на каждый тик.

Vinin:

Запускать используя Period_M5. По открытию бара
По бару это лучше. Но бара может не быть. Хотя это уже не важно. Нет бара - нет обработки. Она не нужна.
 

Может так попробовать:

datetime PrevTime;//глобальная переменная,инициализируется вне функции start()

if(iTime(Symbol(),5,0)!=PrevTime)
  {
   //здесь ваша функция
   PrevTime=iTime(Symbol(),5,0);
  }
 
khorosh:

Может так попробовать:


Да всё получилось, спасибо :) Работает то что надо
Vinin:

Запускать используя Period_M5. По открытию бара


Не совсем удобно уже думал об этом
 
audiomoroz:
khorosh:

Может так попробовать:



Да всё получилось, спасибо :) Работает то что надо

Vinin:

Запускать используя Period_M5. По открытию бара

Не совсем удобно уже думал об этом

)))))))))))))))))))))))))
 

первый день в теме и уже такие познания однако..................

 
FAQ:

)))))))))))))))))))))))))
Не сразу понял над чем смеяться. Дошло секунд через 30 :-)))
 

А чего, смеяться.

Человек просто думал, что надо все вешать на определенный TF, и забыл о программной реализацией данной возможности.

 

int x=TimeCurrent()/5;

x меняет значение каждые пять минут.

 

Вот чё получилось при моделировании на месяц.

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