![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
В основном тоже работаю по пипсам. Хотел отчёт виртуала сделать идентичным отчёту с реала для более удобного сравнения, в том числе и комиссию и профит в валюте счёта. Единственное место, где помимо пипсов понадобилась валюта.
Комиссию там можно задать, но редко пользуюсь. А сравниваю отчеты всегда через Report, где есть отдельные графы прибыли в пипсах и проскальзывания.
В валюте никогда не сравнивал даже разные реалы между собой. Во главе сравнения всегда пипсы.
Достаточно слабо документирован механизм снапшотов.
Правильно ли я понимаю, что для их включения надо дефайнить
а
из этого примера https://www.mql5.com/ru/forum/282062/page28#comment_18430977 уже не актуален?
Для VIRTUAL_SNAPSHOT_REFRESHTIME время указывается в микросекундах?
И вообще какие основные принципы работы с ними? Перед всеми операциями с ордерами делается снапшот. Если старый снапшот ещё жив по VIRTUAL_SNAPSHOT_REFRESHTIME, то функция ничего не делает, просто выходит. И все операции с ордерами уже работают со снапшотом. Под всеми операциями понимаются либо все операции, либо только живые ордера, если стоит VIRTUAL_SNAPSHOT_WITHOUT_HISTORY. В последнем случае история всегда пойдёт мимо снапшота медленно. Если в каком-то месте забудешь дёрнуть снапшот, то работа с ордерами пойдёт тихо по старому снапшоту с устаревшими данными. Всё верно?
только живые ордера, если стоит VIRTUAL_SNAPSHOT_WITHOUT_HISTORY ... история всегда пойдёт мимо снапшота медленно
Достаточно слабо документирован механизм снапшотов.
Заинтересованности не было.
Правильно ли я понимаю, что для их включения надо дефайнить
а из этого примера https://www.mql5.com/ru/forum/282062/page28#comment_18430977 уже не актуален?
Да.
Для VIRTUAL_SNAPSHOT_REFRESHTIME время указывается в микросекундах?
Да.
И вообще какие основные принципы работы с ними? Перед всеми операциями с ордерами делается снапшот. Если старый снапшот ещё жив по VIRTUAL_SNAPSHOT_REFRESHTIME, то функция ничего не делает, просто выходит. И все операции с ордерами уже работают со снапшотом. Под всеми операциями понимаются либо все операции, либо только живые ордера, если стоит VIRTUAL_SNAPSHOT_WITHOUT_HISTORY.
Да.
В последнем случае история всегда пойдёт мимо снапшота медленно.
Нет. Истории просто не будет в снепшоте. Если хочется достучаться до истории в этом режиме, то просто удалите его.
Если в каком-то месте забудешь дёрнуть снапшот, то работа с ордерами пойдёт тихо по старому снапшоту с устаревшими данными.
Если снепшот сделан, то работа только через него. Если его удалить - с реальным окружением.
Похоже, что BestInterval со снапшотами не дружит. Он делает свою OnTester, в которой снимает историю, игнорируя вызов снапшотов.
Зачем снепшотить в Тестере?
Просто одна кодовая база. Сейчас тыкаю исключения для тестера.
У меня боевой и тестерный роботы - как из разных миров. Оба цепляют торговую основу ТС, но обвесы совсем разные.
Тестерная надстройка - одна, боевая - совсем иная.
У меня боевой и тестерный роботы - как из разных миров. Оба цепляют торговую основу ТС, но обвесы совсем разные.
Тестерная надстройка - одна, боевая - совсем иная.
У меня аналогично. Использую условную компиляцию. Тестерный вариант выполняется в разы быстрее.
По наводке автора, разбираемся с проблемой: баг или ошибка публикации! Обнаружился двойник - https://www.mql5.com/ru/forum/356959