увидите, что время будет различаться только в таких ситуациях
Несколько раз обсуждалось, что MqlTick не возвращает тик, как есть. Что есть два тиковых потока - котировочный и сделки. И что в CopyTicks они объединяются иногда задним числом, т.к. потоки несинхронизированы. И что время MqlTick и CopyTicks могут не совпадать.
Неужели на 10 СЕК. могут не совпадать?
2017.09.2211:18:38.257 Test_time (RTS-12.17,M1) CopyTicks time = 11:18:27; SymbolInfoTick = 11:18:37
На картинке вывод на графике - это функция TimeTradeServer(), время бежит быстрее. Если выводить TimeCurrent(), то будет время последней котировки по текущему символу и поэтому тоже часто несоответствие. Как можно получить последнее время самой последней котировки из "Обзора рынка", чтобы выводить время синхронно со временем в "Обзоре рынка"?
Да, как-то тоже не очень. Я через OnTimer вывод делаю раз в секунду, решил в принт еще вывод сообщения добавить. Видно, что там дважды одно и тоже время проходит. Сейчас в справке только увидел, что TimeCurrent для OnTimer - " время прихода последней котировки по любому символу, доступного в окне "Обзор рынка", то самое время, которое показано в заголовке этого окна."
Т.е. это то что нужно. В теории. Но на практике, что-то не то выходит.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
увидите, что время будет различаться только в таких ситуациях
Несколько раз обсуждалось, что MqlTick не возвращает тик, как есть. Что есть два тиковых потока - котировочный и сделки. И что в CopyTicks они объединяются иногда задним числом, т.к. потоки несинхронизированы. И что время MqlTick и CopyTicks могут не совпадать.
Неужели на 10 СЕК. могут не совпадать?
Неужели на 10 СЕК. могут не совпадать?
На Metaquotes-Demo такого нет.
На Metaquotes-Demo такого нет.
Это Демо открывашки, щас попробую на реале...
Добавлено
Да, не реале повеселее
не реале повеселее
Миллисекунды и другие данные есть.
Миллисекунды и другие данные есть.
Пока, решил сделать так
По хорошему, нужно просто транслировать время сервера (биржи)
вместо TimeCurrent(), которое берётся из последней известной котировке в Обзоре рынка,
сделать функцию TimeServer(), которая просто транслирует время биржи.
Тогда и TimeTradeServer() будет не нужна.
Будет достаточно двух функций
TimeLocal() и TimeServer()
Пока, решил сделать так
Напомнили поведение ТС в этой ветке.
На картинке вывод на графике - это функция TimeTradeServer(), время бежит быстрее.
Если выводить TimeCurrent(), то будет время последней котировки по текущему символу и поэтому тоже часто несоответствие.
Как можно получить последнее время самой последней котировки из "Обзора рынка", чтобы выводить время синхронно со временем в "Обзоре рынка"?
Как можно получить последнее время самой последней котировки из "Обзора рынка", чтобы выводить время синхронно со временем в "Обзоре рынка"?
TimeCurrent.
TimeCurrent.
Да, как-то тоже не очень. Я через OnTimer вывод делаю раз в секунду, решил в принт еще вывод сообщения добавить. Видно, что там дважды одно и тоже время проходит. Сейчас в справке только увидел, что TimeCurrent для OnTimer - " время прихода последней котировки по любому символу, доступного в окне "Обзор рынка", то самое время, которое показано в заголовке этого окна."
Т.е. это то что нужно. В теории. Но на практике, что-то не то выходит.