datetime -> unsigned int -> year, day, month, hour, min, s

 

Я получаю в DLL время как unsigned int передавая datetime в MQL скрипте. Подскажите есть ли какие-нибудь С\С++ функции для получения из этого времени в секундах дня недели месяца и так далее.

 

Передавайте дату и время строкой с учётом региональных настроек. В ДЛЛке принимайте функциями StrToDate() и StrToTime(). Получите данные типов TDate и TTime. Из них уже сможете вытащить всё, что угодно.

 
о чем вопрос? о программировании на MQ4 или на C. В MQ4 - есть такие функции. Если вопрос о C, то желательно сходить на соответствующий форум.
 

Да я разберусь конечно. Просто думал что кто-то уже делал преревод времи в секундах начиная с момента 0 часов 1 января 1970 года уже делал перевод. Передавать из эксперта дату год и так далее хорошо, но мне бы хотелось ещё переводить это время в формате MQL4 в день недели и так далее прогоняя исторические данные через советника вне мт4 при оптимизации оптимизации.
Я пока не разобрался время в MT4 это стандарт или они придумали сами что оно будет начинаться с 0 часов 1 января 1970 года в прошлом. Если стандарт то нет проблем. Вообщем надо читать MSDN или в инет.
Но спасибо за советы. Я хотел стратегию оптимизировать и вне mt4 поэтому дату, день недели и прочее передать не смог бы для исторических данных.

 
elritmo:

Я пока не разобрался время в MT4 это стандарт или они придумали сами что оно будет начинаться с 0 часов 1 января 1970 года в прошлом. Если стандарт то нет проблем. Вообщем надо читать MSDN или в инет.


MT4 использует формат времени, который является родным для ANSI C/C++ - смотрите функцию time(). Соответственно все нужные вам функции для обработки времени в таком формате уже входят в состав RTL для ANSI C.
 
bstone:
elritmo:

Я пока не разобрался время в MT4 это стандарт или они придумали сами что оно будет начинаться с 0 часов 1 января 1970 года в прошлом. Если стандарт то нет проблем. Вообщем надо читать MSDN или в инет.


MT4 использует формат времени, который является родным для ANSI C/C++ - смотрите функцию time(). Соответственно все нужные вам функции для обработки времени в таком формате уже входят в состав RTL для ANSI C.

Спасибо - хорошая новость что как в си.
 
Если охота покопаться - смотри тут
http://bearden.narod.ru/ForexDateTime.html
только аккуратно :)
 
BabyBear:
Если охота покопаться - смотри тут
http://bearden.narod.ru/ForexDateTime.html
только аккуратно :)

Спасибо посмотрю как домой приду ...
Причина обращения: