Обсуждение статьи "Непрерывная скользящая оптимизация (Часть 5): Обзор проекта автооптимизатора, а также создание графического интерфейса"
Что же делать ? как оптимизировать?
В статье №4 - инструкция как оптимизировать
- www.mql5.com
Андрей, как правильно заполнять поля "APPEND_BOT_PARAM"? Туда нужно вносить все параметры эксперта или только те, что нужно оптимизировать на сей момент?
Туда нужно вносить все параметры эксперта.
И зачем их заполнять в коде эксперта, когда они есть в главном окне "Metatrader Auto Optimiser "?
Все дело в том, что в главном окне Metatrader Auto Optimiser - эти параметры берутся из (*set) файла генерируемого терминалом. А вот в отчетах оптимизации, где так же сохраняются параметры робота, параметры записываются уже самим роботом в момент генерации отчета. Если не внести эти параметры, то во первых авто оптимизатор не сможет запустить тест по уже произведенным ранее оптимизациям, ведь для запуска тестов - он берет параметры именно из файликов отчета оптимизации, которые как уже писал выше - генерируются самим роботом по завершении процесса оптимизации. Во вторых будут проблемы в процессе оптимизации, там как отобрав проход по выбранным критериям,он не сумеет запустить тест из за того, что не найдет параметры робота с которыми нужно тест запускать. Вернее тест то запустится скорее всего, однако запуск будет произведен не с ожидаемыми параметрами.
Наверное, разумно воспользоваться альтернативными проверенными вариантами получения этой инфы.
Наверное, разумно воспользоваться альтернативными проверенными вариантами получения этой инфы.
Предложите варианты ? Там дело в том что отчет то сам робот формирует, а стандартную выгрузку что терминал делает, я решил не использовать по той причине, что хотел добавить побольше данных в отчет. В принципе это единожды делается, а не при каждой оптимизации, так что не думаю что сильно затруднительно должно быть, однако если есть более удобный способ, то готов подправить код.
Предложите варианты ? Там дело в том что отчет то сам робот формирует, а стандартную выгрузку что терминал делает, я решил не использовать по той причине, что хотел добавить побольше данных в отчет. В принципе это единожды делается, а не при каждой оптимизации, так что не думаю что сильно затруднительно должно быть, однако если есть более удобный способ, то готов подправить код.
В КБ MTTester.mqh, где можно получать все настройки советника в любой момент. Ну и вытаскивать сеты из результатов Оптимизации - также.
В КБ MTTester.mqh, где можно получать все настройки советника в любой момент. Ну и вытаскивать сеты из результатов Оптимизации - также.
Ну сеты мне вытаскивать не нужно, он сам все считает, а за механизм автоматизации получения настроек благодарю, изучу его на досуге и попробую внедрить в новую версию.
Предложите варианты ?
Ну и как вариант: минимально подключить к эксперту фреймы и использовать FrameInputs().
Ну и как вариант: минимально подключить к эксперту фреймы и использовать FrameInputs().
Фреймы не хотел бы задействовать, однако благодарю за совет. С использованием текущего варианта, к эксперту всего лишь один класс подключается, а фреймы это целый механизм с набором методов для работы с ними. К тому же они на сколько помню поддерживают лишь примитивные типы данных, а я хотел сохранять структуры в файлах, посему и решил использовать xml разметку.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Опубликована статья Непрерывная скользящая оптимизация (Часть 5): Обзор проекта автооптимизатора, а также создание графического интерфейса:
Продолжаем описание скользящей оптимизации в терминале MetaTrader 5. Рассмотрев в прошлых статьях методы формирования отчета оптимизации и способ его фильтрации, мы перешли к описанию внутренней структуры приложения, отвечающего за сам процесс оптимизации. Автооптимизатор, выполненный как приложение на C#, имеет собственный графический интерфейс. Именно созданию данного графического интерфейса и посвящена текущая статья.
Приступим к рассмотрению графического интерфейса. Если ранее был продемонстрирован способ как создать дополнение к платформе MetaTrader 5 на языке C# и состыковать его функционал с экспертом посредством DLL-библиотеки и коллбека OnTimer, то в текущей реализации было принято решение вынести автооптимизатор за пределы терминала. Теперь он является по своей сути внешним менеджером оптимизаций, и имитирует работу трейдера по запуску оптимизационных процессов и обработки результатов. Причем, отказавшись от одновременной оптимизации в нескольких терминалах на одном компьютере и вынеся автооптимизатор в отдельное приложение, нам стали доступны абсолютно все терминалы, что установлены на компьютере, даже и тот компьютер, на котором был запущен оптимизатор. В прошлом проекте он не мог быть задействован.
Посему текущий проект написан не целиком в DLL-библиотеки, как было раньше, а поделен на DLL-библиотеку и на исполняемый файл проекта автооптимизатора, о котором идет речь в данной статье.
Как видно из представленного скриншота, окно проекта состоит из Хеддера, Подвала, а также TabControl с двумя вкладками Settings и Reports. Заголовочная часть окна, как и подвал, не изменяются, какую бы вкладку не выбрали в центральной части окна, что дает постоянный доступ ко всем элементам управления, расположенным на них.
Автор: Andrey Azatskiy