Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Тема о целесообразности 2-го МИЛЛИСЕКУНДНОГО таймера и о переполнении счетчика таймера, а не о моих представлениях. :)
Так я уже написал:
Всем спасибо!
Не понятно почему продолжили....
Печаль в том, что функции GetMicrosecondCount(), GetTickCount64() не эмулируются в тестере стратегий,они всегда превязаны к своим параметрам, а не к временному ряду в тестере. Странное решение разработчиков. "Для организации счетчиков и таймеров высокого разрешения нужно использовать функцию GetTickCount(), которая выдает значения в миллисекундах." Спасибо. А как тестировать с этим замечательным инструментом? Ответ - никак. В итоге можно забыть о тестировании тиковых высокочастотных советников, минимальный порог для тестера - 1 секунда.
Вы ошибаетесь.
Renat Fatkhullin:
Тестер миллисекундный, это легко проверить распечаткой времени
Это очень сложно сделать (почти невозможно), т.к. нет функции времени с точностью до миллисекунд.
Это очень сложно сделать (почти невозможно), т.к. нет функции времени с точностью до миллисекунд.
Логи распечатываются с миллисекундной точностью, в MqlTick есть миллисекундное время time_msc, EventSetMillisecondTimer позволяет устанавливать миллисекундные таймеры, а Sleep не только миллисекундный, но и в режиме тестера умеет правильно прокручивать мир вперед.
Для доказательства ошибочности заявления "порог для тестера 1 секунда" этого более чем достаточно.
Для учета микросекунд мы предлагаем очень точный GetMicrosecondCount. Миллисекунды и микросекунды обычно используют не в абсолютных значениях (хотя у нас это есть в ценовом тике для удобства), а для замера промежутков времени. Эти промежутки очень легко и удобно считать в MQL5.
Логи распечатываются с миллисекундной точностью, в MqlTick есть миллисекундное время time_msc, EventSetMillisecondTimer позволяет устанавливать миллисекундные таймеры, а Sleep не только миллисекундный, но и в режиме тестера умеет правильно прокручивать мир вперед.
Я к тому, что в советнике невозможно узнать текущее время Тестера с нужной точностью. Такого инструментария просто нет.
Я к тому, что в советнике невозможно узнать текущее время Тестера с нужной точностью. Такого инструментария просто нет.
В MqlTick время входа в миллисекундах на OnTick в тестере.
Время нахождения в обработчике полностью виртуально и не имеет смысла в абсолютных величинах за счет виртуализации процессов. Если хотите сильно заморачиваться, то высчитывайте сами микросекундным таймером как дельту от точки входа, но это все равно будет некорректно и бессмысленно.
В тестере вам доступно время с достаточной миллисекундной точностью на входе, но требовать абсолютного времени с милли/микросекундной точностью в любой момент времени не имеет смысла.
В MqlTick время входа в миллисекундах на OnTick в тестере.
Во всех On-функциях, кроме OnTick, точное время недоступно в Тестере, к сожалению.
На реале научились обходить.
Обычно одного таймера хватает на все нужды. От него можно "запитать" вызов всех событий с разными периодами.
поддерживаю. Чего мудрить, создаем таймер основной с нужным таймингом и уже из функции таймера считаем и рассылаем при необходимости пользовательские сообщения для обработки. Тоже мне сложности.
странное поведение системного таймера в тестере