Не совсем понял. У меня несколько MetaEditor'ов и жёсткий алгоритм работы, доведённый до автоматизма:
при открытии MetaEditor'a правый клик на головной папке MQL5 - выбор "Обновление файлов из Хранилища".
перед закрытием MetaEditor'a правый клик на головной папке MQL5 - выбор "Фиксация изменений из Хранилища" - даже если я фиксировал изменения ранее при работе. Это гарантирует, что я не допущу ситуацию с не зафиксированным изменённым файлом.
Именно такое поведение позволяет избежать в дальнейшем разных проблем, когда одновременно существуют несколько версий одного файла.
Насчёт "сливания" изменений - данное действие при монопольном доступе нецелесообразно.
Это все понятно, но хотел применить для другой цели. Обновления библиотечных файлов.
1) StringToShortArray(). В пункте "Параметры" надо бы подправить описание 4 аргумента count на то, что написано для такого же аргумента в функции StringToCharArray() или по крайней мере сделать их одинаковыми.
2) В этих же функциях для аргумента count написано "Количество элементов массива для копирования". По-моему правильнее было бы "Количество символов строки для копирования".
MQL4. StringToTime() написано "Преобразование строки, содержащей время и/или дату в формате "yyyy.mm.dd [hh:mi]", ...". Можно подумать, что час и минуту в строке надо писать в квадратных скобках. Лучше было бы в этом месте убрать [ ], а в пункте Параметры в этом аргументе дописать типа "Час и минуту можно не писать, тогда они будут восприняты как 00:00".
Запускаю в тестере проход сразу по двум символам в режиме "реальные тики". Синхронизация с точностью до мс. Поэтому иногда, похоже, возникает несоответствие последовательностей тиков. В 1 мс сразу на двух символах может быть несколько тиков. Скажите, какой алгоритм подачи тиков в таких ситуациях?
И как без IndicatorRelease оптимально суметь в тестере поймать каждый тик (таймер в 1 мс пропускает тики), когда идет проход сразу по нескольким символам?
Запускаю в тестере проход сразу по двум символам в режиме "реальные тики". Синхронизация с точностью до мс. Поэтому иногда, похоже, возникает несоответствие последовательностей тиков. В 1 мс сразу на двух символах может быть несколько тиков. Скажите, какой алгоритм подачи тиков в таких ситуациях?
И как без IndicatorRelease оптимально суметь в тестере поймать каждый тик (таймер в 1 мс пропускает тики), когда идет проход сразу по нескольким символам?
В тестере минимальный квант времени - 1 секунда. Поэтому бесполезно запускать таймер на 1 мс.
В одну и ту же секунду может быть несколько тиков. Причём с разных инструментов. Алгоритм подачи тиков таков, что к моменту времени тика по тестируемому инструменту, все тики других инструментов за эту же секунду уже поданы.
В тестере минимальный квант времени - 1 секунда. Поэтому бесполезно запускать таймер на 1 мс.
В одну и ту же секунду может быть несколько тиков. Причём с разных инструментов. Алгоритм подачи тиков таков, что к моменту времени тика по тестируемому инструменту, все тики других инструментов за эту же секунду уже поданы.
Вы подумаете над нормальным решением вызова советника на каждом тике в тестере?
Не совсем понял. У меня несколько MetaEditor'ов и жёсткий алгоритм работы, доведённый до автоматизма:
- при открытии MetaEditor'a правый клик на головной папке MQL5 - выбор "Обновление файлов из Хранилища".
- перед закрытием MetaEditor'a правый клик на головной папке MQL5 - выбор "Фиксация изменений из Хранилища" - даже если я фиксировал изменения ранее при работе. Это гарантирует, что я не допущу ситуацию с не зафиксированным изменённым файлом.
Именно такое поведение позволяет избежать в дальнейшем разных проблем, когда одновременно существуют несколько версий одного файла.Насчёт "сливания" изменений - данное действие при монопольном доступе нецелесообразно.
Это все понятно, но хотел применить для другой цели. Обновления библиотечных файлов.
Можно обговорить. Откройте, пожалуйста, новую тему. Помогу, чем смогу.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
Aliaksandr Kryvanos, 2016.04.21 09:43
Хочу предложить такую идею, в OrderModify() сделать возможным изменять комментарий для ордера.MQL4.
1) StringToShortArray(). В пункте "Параметры" надо бы подправить описание 4 аргумента count на то, что написано для такого же аргумента в функции StringToCharArray() или по крайней мере сделать их одинаковыми.
2) В этих же функциях для аргумента count написано "Количество элементов массива для копирования". По-моему правильнее было бы "Количество символов строки для копирования".
Запускаю в тестере проход сразу по двум символам в режиме "реальные тики". Синхронизация с точностью до мс. Поэтому иногда, похоже, возникает несоответствие последовательностей тиков. В 1 мс сразу на двух символах может быть несколько тиков. Скажите, какой алгоритм подачи тиков в таких ситуациях?
И как без IndicatorRelease оптимально суметь в тестере поймать каждый тик (таймер в 1 мс пропускает тики), когда идет проход сразу по нескольким символам?
Запускаю в тестере проход сразу по двум символам в режиме "реальные тики". Синхронизация с точностью до мс. Поэтому иногда, похоже, возникает несоответствие последовательностей тиков. В 1 мс сразу на двух символах может быть несколько тиков. Скажите, какой алгоритм подачи тиков в таких ситуациях?
И как без IndicatorRelease оптимально суметь в тестере поймать каждый тик (таймер в 1 мс пропускает тики), когда идет проход сразу по нескольким символам?
В тестере минимальный квант времени - 1 секунда. Поэтому бесполезно запускать таймер на 1 мс.
В одну и ту же секунду может быть несколько тиков. Причём с разных инструментов. Алгоритм подачи тиков таков, что к моменту времени тика по тестируемому инструменту, все тики других инструментов за эту же секунду уже поданы.
В тестере минимальный квант времени - 1 секунда. Поэтому бесполезно запускать таймер на 1 мс.
В одну и ту же секунду может быть несколько тиков. Причём с разных инструментов. Алгоритм подачи тиков таков, что к моменту времени тика по тестируемому инструменту, все тики других инструментов за эту же секунду уже поданы.