Сегодня тоже разбирался с этим скриптом и у меня все же так же как и у traveller00 2 сложилось понимание что тут происходит двойная проверка на наличие обновления: предположим что Sync = true (т.е. есть необходимость сделать Refresh)
- вначале запускаем Refresh() - в разрезе всех символов определили есть ли на сервере обновления,
Получили список Online и Offline файлов.
- затем выполняем Update(false) - подкачиваем новые zip файлы по конкретному символи, false предотвращает повторный Refresh,
Закачиваем различие в списках.
- затем выполняем ToCustomSymbol(Sync, false, MinPips) - тут перестраиваем кастомарный символ, но если изначально Sync = true, то происходит повторный вызов Refresh(true) .
Поскольку была синхронизация, то после закачивания нужно обновить Offline-список, чтобы потом из него начать парсить котиры.
fxsaber: Источник тиков для скрипта теперь имеет MT5. Так что можно (не пробовал) напрямую.
Или мне не повезло или лучше не пользоваться напрямую. Прогнал за последние 3 месяца
AUDNZD : 2020.03.0223:59 - real ticks absent for72 minutes out of 1435 total minute bars within a day
AUDNZD : 2020.03.0223:59 - real ticks discarded for1363 minutes out of 1435 total minute bars within a day
AUDNZD : 2020.03.0223:59 - 151776 tick prices mismatch for1363 minute bars
AUDNZD : 2020.03.0323:59 - real ticks absent for894 minutes out of 1435 total minute bars within a day
AUDNZD : 2020.03.0323:59 - real ticks discarded for541 minutes out of 1435 total minute bars within a day
AUDNZD : 2020.03.0323:59 - 72794 tick prices mismatch for541 minute bars
AUDNZD : 2020.03.0423:59 - all the real ticks discarded within a day
AUDNZD : 2020.03.0423:59 - 105750 tick prices mismatch for1435 minute bars
AUDNZD : 2020.03.0523:59 - all the real ticks discarded within a day
AUDNZD : 2020.03.0523:59 - 93130 tick prices mismatch for1435 minute bars
AUDNZD : 2020.03.0623:59 - real ticks absent for4 minutes out of 1434 total minute bars within a day
AUDNZD : 2020.03.0623:59 - real ticks discarded for1430 minutes out of 1434 total minute bars within a day
AUDNZD : 2020.03.0623:59 - 132351 tick prices mismatch for1430 minute bars
AUDNZD : 2020.03.0923:59 - real ticks absent for1 minutes out of 1424 total minute bars within a day
AUDNZD : 2020.03.0923:59 - real ticks discarded for1423 minutes out of 1424 total minute bars within a day
AUDNZD : 2020.03.0923:59 - 226074 tick prices mismatch for1423 minute bars
AUDNZD : 2020.03.1023:59 - all the real ticks discarded within a day
AUDNZD : 2020.03.1023:59 - 189595 tick prices mismatch for1436 minute bars
AUDNZD : 2020.03.1123:59 - all the real ticks discarded within a day
AUDNZD : 2020.03.1123:59 - 156645 tick prices mismatch for1436 minute bars
AUDNZD : 2020.03.1223:59 - all the real ticks discarded within a day
AUDNZD : 2020.03.1223:59 - 239423 tick prices mismatch for1436 minute bars
AUDNZD : 2020.03.1323:59 - real ticks absent for4 minutes out of 1379 total minute bars within a day
AUDNZD : 2020.03.1323:59 - real ticks discarded for1375 minutes out of 1379 total minute bars within a day
AUDNZD : 2020.03.1323:59 - 240354 tick prices mismatch for1375 minute bars
AUDNZD : 2020.03.1623:59 - real ticks absent for21 minutes out of 1436 total minute bars within a day
AUDNZD : 2020.03.1623:59 - real ticks discarded for1415 minutes out of 1436 total minute bars within a day
AUDNZD : 2020.03.1623:59 - 232846 tick prices mismatch for1415 minute bars
AUDNZD : 2020.03.1723:59 - all the real ticks discarded within a day
AUDNZD : 2020.03.1723:59 - 170369 tick prices mismatch for1436 minute bars
AUDNZD : 2020.03.1823:59 - real ticks absent for2 minutes out of 1436 total minute bars within a day
AUDNZD : 2020.03.1823:59 - real ticks discarded for1434 minutes out of 1436 total minute bars within a day
AUDNZD : 2020.03.1823:59 - 236843 tick prices mismatch for1434 minute bars
AUDNZD : 2020.03.1923:59 - all the real ticks discarded within a day
AUDNZD : 2020.03.1923:59 - 322182 tick prices mismatch for1436 minute bars
AUDNZD : 2020.03.2023:59 - real ticks absent for3 minutes out of 1379 total minute bars within a day
AUDNZD : 2020.03.2023:59 - real ticks discarded for1376 minutes out of 1379 total minute bars within a day
AUDNZD : 2020.03.2023:59 - 212599 tick prices mismatch for1376 minute bars
AUDNZD : 2020.03.2323:59 - real ticks discarded for1422 minutes out of 1429 total minute bars within a day
AUDNZD : 2020.03.2323:59 - 363481 tick prices mismatch for1422 minute bars
AUDNZD : real ticks begin from2020.01.0200:00:00
AUDNZD : 2020.03.0100:00 - 2020.03.3000:00 real ticks absent for1001 minutes of 28527 total minute bars, every tick generation used
AUDNZD : 2020.03.0100:00 - 2020.03.3000:00 real ticks discarded for21829 minutes of 28527 total minute bars, every tick generation used
AUDNZD : 2020.03.0100:00 - 2020.03.3000:00 real ticks discarded for7 whole days
AUDNZD : 2020.03.0100:00 - 2020.03.3000:00 tick volumes not matched for1429 minute bars
AUDNZD : 2020.03.0100:00 - 2020.03.3000:00 tick prices of 3146212 ticks not matched for21829 minute bars
AUDNZD : 2020.03.0100:00 - 2020.03.3000:00 last prices absent for7 minute bars, bid prices used
AUDNZD : 2020.03.0100:00 - 2020.03.3000:00 last prices absent for1 whole days, bars built by bid prices
Да, я понимаю. Просто я к тому, что всё равно лучше заморочиться и создать кастом символ, пусть и не через веб, а копию символа напрямую. Но лучше не тестить напрямую на символе.
Если открыть демо-счет на сервере Swissquote-Server и запустить этот скрипт, то получим следующие строку.
2020.03.2608:53:12.5675, 5
Это обозначает, что в тиковой истории Bid/Ask-цены отличаются на 5 пипсов от тех, что транслируются в Обзор рынка (там лучше цены, чем в истории).
Соответственно, в Тестере не получится на оригинальном символе воссоздать то, что видите в Терминале.
Единственное решение - через кастомный символ, который основывается на соответствующем демаркапе тиковой истории.
Т.е. Тестер на оригинальном символе может выдавать полностью синхронизированную тиковую и баровую истории - нет ошибок в логах. Только результат будет брехней.
Сегодня тоже разбирался с этим скриптом и у меня все же так же как и у traveller00 2 сложилось понимание что тут происходит двойная проверка на наличие обновления: предположим что Sync = t rue (т.е. есть необходимость сделать Refresh)
- вначале запускаем Refresh() - в разрезе всех символов определили есть ли на сервере обновления,
Получили список Online и Offline файлов.
- затем выполняем Update(false) - подкачиваем новые zip файлы по конкретному символи, false предотвращает повторный Refresh,
Закачиваем различие в списках.
- затем выполняем ToCustomSymbol(Sync, false, MinPips) - тут перестраиваем кастомарный символ, но если изначально Sync = t rue, то происходит повторный вызов Refresh(true) .
Поскольку была синхронизация, то после закачивания нужно обновить Offline-список, чтобы потом из него начать парсить котиры.
Проверил. Порой не совпадают даже свечи на М15
Так и не обязаны совпадать. Сдвиньте тики на одну миллисекунду и увидите, как изменились даже H1-бары.
Источник тиков для скрипта теперь имеет MT5. Так что можно (не пробовал) напрямую.
Или мне не повезло или лучше не пользоваться напрямую. Прогнал за последние 3 месяца
Или мне не повезло или лучше не пользоваться напрямую. Прогнал за последние 3 месяца
Я говорил про источник тиков, а не про бэктест на оригинальном символе.
У MT5-Тестера в приоритете M1-бары, по сравнению с тиками. Поэтому столько ошибок в логе.
лучше не тестить напрямую на символе.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Библиотеки: Symbol
fxsaber, 2020.03.26 08:02
Если открыть демо-счет на сервере Swissquote-Server и запустить этот скрипт, то получим следующие строку.
Это обозначает, что в тиковой истории Bid/Ask-цены отличаются на 5 пипсов от тех, что транслируются в Обзор рынка (там лучше цены, чем в истории).
Соответственно, в Тестере не получится на оригинальном символе воссоздать то, что видите в Терминале.
Единственное решение - через кастомный символ, который основывается на соответствующем демаркапе тиковой истории.
Т.е. Тестер на оригинальном символе может выдавать полностью синхронизированную тиковую и баровую истории - нет ошибок в логах. Только результат будет брехней.
Не знаю баг или фича, но может привести к ошибкам. В нефильтрованом котире тип инструмента остается форекс.