проверил. Удалил с компьютера тиковые файлы. Все норм.
При запуске тестера в режиме реальных тиков происходит вся загрузка тиков.
Да, но вот что получается:
1. Удаляю все тики, заново запускаю терминал.
2. Запускаю прогон вашего советника за период с 2022.06.01 по 2022.08.28.
в логе имею
2022.08.2920:03:38.687 EURUSD: history ticks synchronized from 2022.06.01 to 2022.08.26
...
2022.08.2920:03:40.255 EURUSD : real ticks begin from 2022.06.0100:00:00
CopyTicks возвращает при первом запросе -1, при втором 2, далее 3 и тд. НИкаких 150000.
3. Жду несколько минут. Опять запускаю прогон с той же даты. те же результаты.
4. Запускаю прогон с даты 2022.05.15.
2022.08.2920:08:22.650 EURUSD: history ticks synchronized from 2022.05.16 to 2022.08.26
...2022.08.2920:08:24.329 EURUSD : real ticks begin from 2022.05.1600:00:00
CopyTicks опять возвращает 2,3,4 .. тиков.
5. И сразу прогон опять с 2022.06.01. И CopyTicks сразу возвращает 150000!
логи:
2022.08.2920:08:22.650 EURUSD: history ticks synchronized from 2022.05.16 to 2022.08.26
...2022.08.2920:08:24.329 EURUSD : real ticks begin from 2022.05.1600:00:00
Это и есть подтверждение бага, о котором я пытаюсь донести разработчику. Только вы запускаете на стандартном символе, где присутствует синхронизация с сервером. Я запускаю на кастомном символе, со своей историей. А проблема одна и таже.
Функции "Копи тики" могут неожиданно потерять реальную тиковую историю. И так же неожиданно её найти. И если история не найдена, "Копи тики" начинают отдавать 1,2,3 и т.д. с даты старта. А по факту история есть, я это знаю точно, потому что она у меня в кастоме.
Про эмуляцию я вообще молчу, хотя надо трубить, чтоб её отменили для реальных тиков. Возможно в этой подмене и зарылся ЖУК.
Это и есть подтверждение бага, о котором я пытаюсь донести разработчику. Только вы запускаете на стандартном символе, где присутствует синхронизация с сервером. Я запускаю на кастомном символе, со своей историей. А проблема одна и таже.
Функции "Копи тики" могут неожиданно потерять реальную тиковую историю. И так же неожиданно её найти. И если история не найдена, "Копи тики" начинают отдавать 1,2,3 и т.д. с даты старта. А по факту история есть, я это знаю точно, потому что она у меня в кастоме.
Про эмуляцию я вообще молчу, хотя надо трубить, чтоб её отменили для реальных тиков. Возможно в этой подмене и зарылся ЖУК.
Печально, что разработчики знают об этой проблеме, но ничего не делают по её устранению. Пробрасывать тики не спроста сказал fxsaber. Этот термин я давно слышал тут, но не понимал его смысл. Так как не пользовался тестером вообще. А тут появилось много нового, в плане матриц, векторов и так далее, уже поинтереснее и можно потестить. Ага, без костылей как всегда не обойтись. Так вот, проброска тиков в тестере, это своего рода "разогрев" истории, как любят тут выражаться. Почему этот разогрев должен делать пользователь? Почему тестер начинает отдавать тики без разогрева истории под капотом? Да ещё и эмулировать на реальных тиках (со слов Николая) Вот, что печально.
Правильно сказал Николай. Я перефразирую его слова по другому. Как был тестер для развода лохов, так он таким и остался. По этой причине я и не пользовался тестером, и скорее всего не буду. Столько лет прошло, а политика всё таже.
Как был тестер для развода лохов, так он таким и остался. По этой причине я и не пользовался тестером, и скорее всего не буду. Столько лет прошло, а политика всё таже.
"Мне в булочной нахамили, поэтому хлеб больше покупать не буду".
fxsaber же дал прогу для подкачки истории, пользуйтесь.
Печально, что разработчики знают об этой проблеме . . . .
А в чем проблема ? Нет никакой проблемы. Я на основе реальных тиков сделал виртуального тестировщика.
Надо только знать, что получить реальные тики через CopyTicks() возможно только до начальной даты тестирования.
И не понимаю почему в примерах CopyTicks()/Range стоит в OnTick() ??? Надо его вывести оттуда и вставить в OnInit(), a последующие тики после даты начала тестирования можно получить и добавить в массив через OnTick().
А в чем проблема ? Нет никакой проблемы. Я на основе реальных тиков сделал виртуального тестировщика.
Надо только знать, что получить реальные тики через CopyTicks() возможно только до начальной даты тестирования.
И не понимаю почему в примерах CopyTicks()/Range стоит в OnTick() ??? Надо его вывести оттуда и вставить в OnInit(), a последующие тики после даты начала тестирования можно получить и добавить в массив через OnTick().
Никаких проблем не возникает.
Проблема была в том, как сделать тики, которые ДО начальной даты, видимыми в тестере. Например, есть тики кастомного символа с 01.01.2022, запускаем тест с 01.02.2022, в OnInit делаем CopyTicks, а тики за январь не возвращаются, как бы их нет. Нужны несложные дополнительные манипуляции, чтобы они стали видны.
Проблема была в том, как сделать тики, которые ДО начальной даты, видимыми в тестере. Например, есть тики кастомного символа с 01.01.2022, запускаем тест с 01.02.2022, в OnInit делаем CopyTicks, а тики за январь не возвращаются, как бы их нет. Нужны несложные дополнительные манипуляции, чтобы они стали видны.
Спасибо. Получается проблема в тикахкастомного символа. Я не использую их. И думаю что и без них можно делать всё что угодно.
При компиляции все group советника/индикатора снова разворачиваются, лишая тем самым программиста MQL5 возможности наслаждаться эстетически и практически умело им же сгруппированными параметрами.
Прошу исправить.
код для воспроизведения:
input group "Inp1";
inputint Input1 = 0;
input group "Inp1";
inputint Input2 = 0;
voidOnTick() {}
Так выглядят параметры советника в тестере ДО компиляции (следующей):
А так после компиляции:
Т.е., изначальный смысл групп параметров отсутсвует на этапе разработки программы.
Вторая просьба, добавить возможность добавлять комментарий к input параметрам типа group так же, как это сейчас работает и со всеми остальными типами параметров input.
Кстати, из скриншортов видно, что имена групп вполне могут иметь одинаковые имена - не знаю, баг ли это или так задумано.
проверил. Удалил с компьютера тиковые файлы.
Все норм.
При запуске тестера в режиме реальных тиков происходит вся загрузка тиков.
Да, но вот что получается:
1. Удаляю все тики, заново запускаю терминал.
2. Запускаю прогон вашего советника за период с 2022.06.01 по 2022.08.28.
в логе имею
CopyTicks возвращает при первом запросе -1, при втором 2, далее 3 и тд. НИкаких 150000.
3. Жду несколько минут. Опять запускаю прогон с той же даты. те же результаты.
4. Запускаю прогон с даты 2022.05.15.
CopyTicks опять возвращает 2,3,4 .. тиков.
5. И сразу прогон опять с 2022.06.01. И CopyTicks сразу возвращает 150000!
логи:
Это и есть подтверждение бага, о котором я пытаюсь донести разработчику.
Только вы запускаете на стандартном символе, где присутствует синхронизация с сервером.
Я запускаю на кастомном символе, со своей историей.
А проблема одна и таже.
Функции "Копи тики" могут неожиданно потерять реальную тиковую историю.
И так же неожиданно её найти.
И если история не найдена, "Копи тики" начинают отдавать 1,2,3 и т.д. с даты старта.
А по факту история есть, я это знаю точно, потому что она у меня в кастоме.
Про эмуляцию я вообще молчу, хотя надо трубить, чтоб её отменили для реальных тиков.
Возможно в этой подмене и зарылся ЖУК.
Это и есть подтверждение бага, о котором я пытаюсь донести разработчику.
Только вы запускаете на стандартном символе, где присутствует синхронизация с сервером.
Я запускаю на кастомном символе, со своей историей.
А проблема одна и таже.
Функции "Копи тики" могут неожиданно потерять реальную тиковую историю.
И так же неожиданно её найти.
И если история не найдена, "Копи тики" начинают отдавать 1,2,3 и т.д. с даты старта.
А по факту история есть, я это знаю точно, потому что она у меня в кастоме.
Про эмуляцию я вообще молчу, хотя надо трубить, чтоб её отменили для реальных тиков.
Возможно в этой подмене и зарылся ЖУК.
печально
Печально, что разработчики знают об этой проблеме, но ничего не делают по её устранению.
Правильно сказал Николай.Пробрасывать тики не спроста сказал fxsaber.
Этот термин я давно слышал тут, но не понимал его смысл.
Так как не пользовался тестером вообще.
А тут появилось много нового, в плане матриц, векторов и так далее, уже поинтереснее и можно потестить.
Ага, без костылей как всегда не обойтись.
Так вот, проброска тиков в тестере, это своего рода "разогрев" истории, как любят тут выражаться.
Почему этот разогрев должен делать пользователь?
Почему тестер начинает отдавать тики без разогрева истории под капотом?
Да ещё и эмулировать на реальных тиках (со слов Николая)
Вот, что печально.
Я перефразирую его слова по другому.
Как был тестер для развода лохов, так он таким и остался.
По этой причине я и не пользовался тестером, и скорее всего не буду.
Столько лет прошло, а политика всё таже.
Как был тестер для развода лохов, так он таким и остался.
По этой причине я и не пользовался тестером, и скорее всего не буду.
Столько лет прошло, а политика всё таже.
"Мне в булочной нахамили, поэтому хлеб больше покупать не буду".
fxsaber же дал прогу для подкачки истории, пользуйтесь.
Печально, что разработчики знают об этой проблеме . . . .
А в чем проблема ? Нет никакой проблемы. Я на основе реальных тиков сделал виртуального тестировщика.
Надо только знать, что получить реальные тики через CopyTicks() возможно только до начальной даты тестирования.
И не понимаю почему в примерах CopyTicks()/Range стоит в OnTick() ??? Надо его вывести оттуда и вставить в OnInit(), a последующие тики после даты начала тестирования можно получить и добавить в массив через OnTick().
Никаких проблем не возникает.
А в чем проблема ? Нет никакой проблемы. Я на основе реальных тиков сделал виртуального тестировщика.
Надо только знать, что получить реальные тики через CopyTicks() возможно только до начальной даты тестирования.
И не понимаю почему в примерах CopyTicks()/Range стоит в OnTick() ??? Надо его вывести оттуда и вставить в OnInit(), a последующие тики после даты начала тестирования можно получить и добавить в массив через OnTick().
Никаких проблем не возникает.
Проблема была в том, как сделать тики, которые ДО начальной даты, видимыми в тестере. Например, есть тики кастомного символа с 01.01.2022, запускаем тест с 01.02.2022, в OnInit делаем CopyTicks, а тики за январь не возвращаются, как бы их нет. Нужны несложные дополнительные манипуляции, чтобы они стали видны.
Проблема была в том, как сделать тики, которые ДО начальной даты, видимыми в тестере. Например, есть тики кастомного символа с 01.01.2022, запускаем тест с 01.02.2022, в OnInit делаем CopyTicks, а тики за январь не возвращаются, как бы их нет. Нужны несложные дополнительные манипуляции, чтобы они стали видны.
При компиляции все group советника/индикатора снова разворачиваются, лишая тем самым программиста MQL5 возможности наслаждаться эстетически и практически умело им же сгруппированными параметрами.
Прошу исправить.
код для воспроизведения:
Так выглядят параметры советника в тестере ДО компиляции (следующей):
А так после компиляции:
Т.е., изначальный смысл групп параметров отсутсвует на этапе разработки программы.
Вторая просьба, добавить возможность добавлять комментарий к input параметрам типа group так же, как это сейчас работает и со всеми остальными типами параметров input.
Кстати, из скриншортов видно, что имена групп вполне могут иметь одинаковые имена - не знаю, баг ли это или так задумано.
Существенная недоработка MetaEditor
Последовательность действий:
1) Создать в MetaEditor несколько файлов-вкладок
2) Закрыть MetaEditor
3) Через проводник удалить файл file2.mqh
4) Открыть MetaEditor
Результат:
Т.е. исчезает не только несуществующий file2.mqh, но и все располагающиеся за ним файлы