Разница M1 и M15 в тестере

 

Почему в тестере для модели со всеми тиками следующий советник на М15 пишет в лог, а при тестировании на М1 лог пустой?

string symbol = "EURCAD";

int start()
{
   datetime need_dt = TimeCurrent() / 60;
   need_dt = need_dt * 60;
  
   datetime candle_dt;

   candle_dt = iTime( symbol, 1, 0);

   if( MathAbs( candle_dt - need_dt) > 10)
      Print( " need_dt=",   TimeToStr( need_dt,   TIME_DATE | TIME_SECONDS ),
             " candle_dt=", TimeToStr( candle_dt, TIME_DATE | TIME_SECONDS ),
             " bid = ", MarketInfo( symbol, MODE_BID), " iOpen = ", iOpen( symbol, PERIOD_M1, 0) );
        
   return;
}
 

вот оттуда цитата

При этом, если на какой-то временной диапазон одновременно существуют данные более одного таймфрейма, то для генерации используются данные самого меньшего таймфрейма.

эту фразу я понимаю так, что используются мои минутки, хоть я ставлю M1 хоть M15. Может, дашь поточнее ссылку?

 
Я предлагаю самостоятельно открыть и посмотреть FXT-файлы.
 

Чем их открыть и посмотреть?

 

Вопрос в основном про различие Time[0] и Timecurrent() в тестере. Я могу предположить в чем эта разница в реалтайме. Но уж в тестере то с одной валютной парой, они всяко должны быть в одной минуте. То есть, если открылась минутная свеча 23 минуты, то TimeCurrent() не должен быть 22 минуты или 24 минуты. потому что браться оно должно из времени свечи. Я не прав?

Rosh, я не против почитать новое, и поиском стараюсь пользоваться. Но иногда реальная помощь может съэкономить неделю работы.

 

Предалагаю все же сначала почитать статьи. Например в этой сказано (и не только) сказано как посмотреть файлы FXT.

https://www.mql5.com/ru/articles/1490

 
Rosh :

Предалагаю все же сначала почитать статьи. Например в этой сказано (и не только) сказано как посмотреть файлы FXT.

https://www.mql5.com/ru/articles/1490

Спасибо. Видишь, как просто . я уже умею смотреть fxt файлы. Только мне не ясно, зачем мне это. Ничего нового для себя я там не нашел. Но, вполне возможно, это нужно было, для понимания дальнейших объяснений.

Теперь, скажи, пожалуйста, где написано, почему в тестере минутная свеча за минуту 23 является нулевой, когда TimeCurrent() показывпает уже минуту 24.

Причем именно при тестировании не на минутках.

Не для тебя, конечно, а для тех, кто не в курсе

datetime TimeCurrent( )
Возвращает последнее известное время сервера (время прихода последней котировки)

То есть, Если TimeCurrent() вернул минуту 24, значит, была котировка за минуту 24, значит, свеча должна быть открыта за 24 минуту.

 
Это происходит для каждой минуты в тестере, или только иногда? Возможно, это пересекается с темой ветки Разработчикам МТ4
 
Rosh :
Это происходит для каждой минуты в тестере, или только иногда? Возможно, это пересекается с темой ветки Разработчикам МТ4

Иногда. Запусти советник, он короткий и там всё видно.

Вполне может быть, что причины одинаковы в той ветке и здесь. Например, может быть, что так бывает, если нет минутной свечи,

Нужно ваш код смотреть

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