Как грамотно заставить советник подождать до закрытия 5ти минутного бара и начать работу с первым током нового?

 
В течении заданного времени текущего бара ничё не делать до открытия нового бара.
 
А по ЭмКюЭлевски?
 
reuvenb:
А по ЭмКюЭлевски?
А попытаться разобраться? У вас перед глазами - кладезь информации ;)
 

Будьте осторожны!!!

Убивает ток (людей с кардиостимуляторами и т.п.- не только ток). Любой ощутимый ток проходящий через Вас в течение достаточно длительного времени убьет Вас. Поэтому сперва приведем примерные времена допустимого воздействия электрического тока в зависимости от напряжения на человека (по ГОСТ 12.1.038-82 ССБТ «Предельно допустимые величины напряжений и токов. Электробезопасность»):

Допустимое время действия, сек
длительно
До 30
1
0,5
0,2
0,1
Величина тока, мА.
1
6
50
100
250
500
Величина напряжения, В.
6
36
50
100
250
500

Теперь небольшие пояснения:

  • ощутимый ток - ток, вызывающий при прохождении через организм ощутимые раздражения
  • неотпускающий ток - ток, вызывающий при прохождении через человека непреодолимые судорожные сокращения мышц руки, в которой зажат проводник (самому разжать руки невозможно)
  • фибрилляционный ток - ток, вызывающий при прохождении через организм фибрилляцию сердца (мышцы сокращаются разрозненно и нескоординированно, вследствие чего сердце теряет способность совершать согласованные сокращения.)))
 

Что с вами случилось? Что-то участились случаи флуда вместо помощи...

void OnTick()
{
   if(NewBar())
    {
     // здесь выполняются действия на новом баре
    }
}/*******************************************************************/

bool NewBar()
{
   static datetime lastbar = 0;
   datetime curbar = Time[0];
   if(lastbar != curbar)
    {
     lastbar = curbar;
     return (true);
    }
   else return(false);
}/*******************************************************************/


Такой вариант работает только на текущем ТФ. Чтобы на любом ТФ можно было отследить новый бар нужного ТФ надо Time[0] заменить на iTime() с указанием периода

 
Лучше подскажите как мне отказаться на таблетки от его дурацких подсказок...
 
bool candle_begin()
{
  static int  diff_prev = 0;
         bool rc        = false;
         int  diff      = TimeCurrent() - iTime(NULL, NULL, 0);
  if(diff < diff_prev)
  {
    rc = true;
    diff_prev = 0;
    Print("Начало новой свечи");
    Print("Спрэд: ", NormalizeDouble((Ask-Bid)/Point,0));
  }
  else
  {
    diff_prev = diff;
    rc = false;
  }
  return(rc);
}
 
Вопрос : будет ли это работать после deinit?
 
после деинита ничего не работает, советник выгрузится )))
 
И что, я не смогу снова сделать start()? И считывать тики и время?