Все (пока нет) о Стратегический тестировщик, Оптимизация и Облако - страница 16
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
С преждевременным вырождением популяции параметров генетической оптимизации сталкиваться приходилось
Получается доверять генетической оптимизации нельзя. Запустил один раз: нашел более-менее приличный результат. Потом запустил несколько раз с другими комбинациями параметров, в которые обязательно входил результат первой оптимизации. Все последующие выродились, даже близко не достигнув результат первой. Причем поведение последующих одинаковое: каждый раз на новом поколении запускает проходов не больше количества имеющихся агентов. И каждый раз новые поколения не находят результат выше 0-го. Что не удивительно - при таком ничтожно малом количестве новых проходов.
Другой вопрос: почему менеджер агентов тестирования дает добавить сетевых агентов только ровно половину от имеющихся локальных агентов? У меня комп в сети запущен только ради теста, никто на нем не работает. Получается половина мощности простаивает.
Получается доверять генетической оптимизации нельзя. Запустил один раз: нашел более-менее приличный результат. Потом запустил несколько раз с другими комбинациями параметров, в которые обязательно входил результат первой оптимизации. Все последующие выродились, даже близко не достигнув результат первой.
Получается доверять генетической оптимизации нельзя. Запустил один раз: нашел более-менее приличный результат. Потом запустил несколько раз с другими комбинациями параметров, в которые обязательно входил результат первой оптимизации.
Сколько у вас перед запуском оптимизации показывается возможных комбинаций параметров (в последней строке на вкладке "Параметры"), среди которых генетический алгоритм будет выбирать небольшую часть для первого поколения?
Вы проверяли, влияет ли изменение каждого параметра на результаты одного прохода? Если какие-то параметры или не влияют на результат, или очень слабо влияют, или влияют только в небольшой области значений из указанного им диапазона возможных значений, или влияют только при определённых комбинациях значений других параметров, то это может приводить к вырождению популяции (=застревание в локальном экстремуме)
Другой вопрос: почему менеджер агентов тестирования дает добавить сетевых агентов только ровно половину от имеющихся локальных агентов? У меня комп в сети запущен только ради теста, никто на нем не работает. Получается половина мощности простаивает.
Тут ответ простой: у вас у процессора 4 физических ядра и 8 логических. Грубо говоря, пара логических ядер использует одно физическое. Локальные агенты создаются по количеству логических ядер. Сетевые агенты создаются по умолчанию по количеству физических ядер. Сетевые агенты будут работать примерно в два раза быстрее локальных (если конечно, во время использования сетевых агентов не используются локальные и наоборот). В конечном итоге всё упирается в ресурсы имеющегося процессора. В обоих вариантах он задействуется почти на полную мощность. Кажется, пару лет назад я выбирал, как лучше организовать тестирование на нескольких компьютерах, и какой из них делать главным. Там получалось, что преимуществ использования восьми локальных агентов по сравнению с использованием этого компьютера как поставщика четырёх сетевых агентов не было обнаружено.
Если вы хотите использовать сетевых агентов только самостоятельно, а не продавать их мощности через MQL Cloud Network, то, если я правильно помню, вы можете добавить сколько угодно служб сетевых агентов. Можно сделать и 8, и 12, и 16... Продавать же мощности сетевых агентов можно только если их не больше, чем количество физических ядер процессора.
Сколько у вас перед запуском оптимизации показывается возможных комбинаций параметров (в последней строке на вкладке "Параметры"), среди которых генетический алгоритм будет выбирать небольшую часть для первого поколения?
Вы проверяли, влияет ли изменение каждого параметра на результаты одного прохода? Если какие-то параметры или не влияют на результат, или очень слабо влияют, или влияют только в небольшой области значений из указанного им диапазона возможных значений, или влияют только при определённых комбинациях значений других параметров, то это может приводить к вырождению популяции (=застревание в локальном экстремуме)
Нельзя ставить знак равенства между вырождением популяции и застреванию в локале. Вырождение популяции означает отсутствие новых решений и забивание всей популяции решениями с близким значением ФФ - этим генетика особо не страдает, мутация периодически создаёт новые решения, которые встряхивают популяцию.
Другое дело, что проблема с застреванием в локале действительно может быть. Тут может помочь либо искусственное сглаживание ФФ какими нибудь приёмами или вообще переделка формулы ФФ, либо использовать самописные алгоритмы, благо MQL5 позволяет это делать.
Я понимаю, что такие проблемы есть. Но так и не получил объяснения, почему в нулевом поколении много проходов (у меня около 300), а в последующих - стабильно не более количества имеющихся агентов (в моем случае 7). Разве не правильнее скрестить лучшего из 0-го еще с 300, и т.д.?
Сколько у вас перед запуском оптимизации показывается возможных комбинаций параметров (в последней строке на вкладке "Параметры"), среди которых генетический алгоритм будет выбирать небольшую часть для первого поколения?
Сотни тысяч.
Сотни тысяч.
Сотни тысяч.