Как узнать в коде эксперта даты прогона тестера (от/до)?

 
Вопрос, какие есть идеи получения дат (начальной и конечной) прогона в тестере, указанных при включении флажка тестера Использовать дату? Пока одна идея, ловить Time[0] в init (нач.) и deinit (конечная), но не уверен, что она лучшая, ещё не проверил.
Возможно, кто-то уже занимался этой задачей, поделитесь, пожалуйста.
 

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

А если не секрет - зачем это нужно то?

В принципе идея с ловлей Time[0] в init() deinit() должна сработать нормально.

 
Суть в том, чтобы в коде эксперта узнать, за какой период его тестируют. Не человеку (мне) знать, а самому эксперту в коде. Терминал ведь на тестирование можно запускать автоматическим способом с параметрами.

Запускаю тестера от 2006.10.01 до 2006.12.25.
Пишу такой код:
int init()
{
   Print("FirstDate: ", TimeToStr(Time[0]));
   
   return(0);
}
 
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
{
   Print("EndDate: ", TimeToStr(Time[0]));
}
Получаю в логе:
11:18:26 2006.10.02 14:00 FirstDate: 2006.10.02 14:00
11:19:01 2006.12.22 22:59 EndDate: 2006.12.22 22:00

Т.е. Time[0] выдаёт не то время, которое было выставлено как диапазон дат, а только время прихода котировок. А если котировки изменятся, то мы получим на тот же запуск уже другие даты, и в этом случае не сможем сказать, что это было то же самое тестирование. Печально.
Т.е. узнать точный диапазон тестирования, как, например, валюту через Symbol() или текущий график через Period(), мы не можем, верно?
 
Ладно, при тестировании в периоды за месяцы и годы +/- день некритичен. Можно просто обрезать время, оставить даты без времени.
Причина обращения: