В классе CExpert - собрана основная функциональность логики советника.
Не вполне понятно, что имеется ввиду "наличие советников, которые не расширяют класс CExpert" - для того и создан этот класс, чтобы использовать его с минимумом расширений.
В принципе, он уже готов, и его вполне можно использовать "как есть", добавляя только необходимые функции.
- www.mql5.com
Кстати, ns_k, обращаю ваше внимание на то, что класс CExpert вобще в коде указанной статьи - не используется. Автор использует более низкоуровневые классы, которые непосредственно отвечают за торговые операции, позицию, символ и историю. Даже для получения данных - используются низкоуровневые функции типа Copy..., а не классы Стандартной библиотеки.
Вобще, использование классов стандартной библиотеки в указанной статье - крайне ограниченное.
Кстати, ns_k, обращаю ваше внимание на то, что класс CExpert вобще в коде указанной статьи - не используется. Автор использует более низкоуровневые классы, которые непосредственно отвечают за торговые операции, позицию, символ и историю. Даже для получения данных - используются низкоуровневые функции типа Copy..., а не классы Стандартной библиотеки.
Вобще, использование классов стандартной библиотеки в указанной статье - крайне ограниченное.
Спасибо за Ваши комментарии.
Я начинаю потихоньку вникать в логику CExpert, вопросы в основном решаются чтением\прогонкой кода в отладчике. На какие не смогу найти ответа, постараюсь спросить здесь, может быть это пригодится не только мне.
Кстати, весьма кстати :), пришлась бы возможность генерировать искуственно событие тика в режиме отладки. Может быть это уже есть, а я не знаю как пользоваться?
В любом случае, разработчику стандартных классов, а я думаю, что это был один программер, большой респект!
Безусловно, считаю Стандартную Библиотеку - одним из главных достоинств MQL5.
Очень продуманная и глубокая идея реализованная в рамках подхода ООП. Весь свой код делаю только на основе ее классов.
пришлась бы возможность генерировать искуственно событие тика в режиме отладки. Может быть это уже есть, а я не знаю как пользоваться?
Увы, пока что отладчик Метатрейдера 5 - не работает на исторических данных. Таким образом, есть два варианта - либо ждать обычное событие Тика, либо вызывать функцию OnTick() прямо в конце функции OnInit().
Мне самому очень не хватает тиков на исторических данных, приходится использовать вот такие "подмены", писать логи и изучать их...
Будем надеяться, что отладка на исторических данных рано или поздно появится.
- www.mql5.com
Безусловно, считаю Стандартную Библиотеку - одним из главных достоинств MQL5.
Очень продуманная и глубокая идея реализованная в рамках подхода ООП. Весь свой код делаю только на основе ее классов.
Увы, пока что отладчик Метатрейдера 5 - не работает на исторических данных. Таким образом, есть два варианта - либо ждать обычное событие Тика, либо вызывать функцию OnTick() прямо в конце функции OnInit().
Мне самому очень не хватает тиков на исторических данных, приходится использовать вот такие "подмены", писать логи и изучать их...
Будем надеяться, что отладка на исторических данных рано или поздно появится.
Спасибо за совет насчет onTick() в onInit() !
Thanks for the tip about onTick () in onInit ()!
Вы можете использовать OnTimer () для тестирования цели
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
День добрый!
Только что задал подобный вопрос в теме https://www.mql5.com/ru/forum/3146/page2 обсуждение статьи ... . Если модераторы сочтут появление новой темы излишним, то пожалуйста стреляйте на поражение без предупреждения и удаляйте эту тему :).
На мой взгляд тема, все-таки, заслуживает отдельной ветки, потому что многим изучающим MQL5 также как и мне трудно охватить разом весь огромный объем работы выполненный разработчиками MQ. Придерживаясь классического принципа программирования "повторное использование кода" я бы хотел по максимуму задействовать уже разработанные классы из стандартной библиотеки, но меня несколько смущает наличие советников которые не расширяют класс CExpert
В связи с этим вопрос: "что дает такое расширение, когда его лучше использовать, а когда нет?". Наверное, четких ответов не существует, но наверняка есть принципы которых лучше придерживаться в том или другом случае.
Буду признателен за любые комментарии. Они помогут грамотнее использовать возможности MQL5.
Спасибо!