Обсуждение статьи "Разрабатываем мультивалютный советник (Часть 25): Подключаем новую стратегию (II)"

 

Опубликована статья Разрабатываем мультивалютный советник (Часть 25): Подключаем новую стратегию (II):

В данной статье продолжим подключить новую стратегию к созданной системе автоматической оптимизации. Посмотрим, какие изменения потребуется внести в советник создания проекта оптимизации и советники второго и третьего этапов.

Продолжим очередной этап работы, начало которого было положено в предыдущей статье. Напомним, что после разделения всего кода проекта на библиотечную и проектную часть, мы решили проверить, как можно перейти от используемой уже длительное время модельной торговой стратегии SimpleVolumes к какой-то другой. Что нам потребуется для этого сделать, насколько это будет легко? Само собой было необходимо написать класс новой торговой стратегии. Но дальше возникли сложности, появление которых не было таким уж очевидным.

Они были связаны именно со стремлением сделать так, чтобы библиотечная часть могла быть независимой от проектной. Если бы мы решили нарушить это нововведённое правило, то и сложности бы не возникло. Однако, в итоге был найден способ, позволяющий и сохранить разделение кода, и обеспечить подключение новой торговой стратегии. Это потребовало пусть и не очень больших по объёму, но существенных по смыслу, изменений в файлах библиотечной части проекта.

В итоге, мы смогли скомпилировать и запустить оптимизацию советника первого этапа с новой стратегий, которую назвали SimpleCandles. Дальнейшие намеченные шаги состояли в том, чтобы заставить с ней работать конвейер автоматической оптимизации. Для прошлой стратегии у нас был разработан вспомогательный советник CreateProject.mq5, который позволял сформировать в базе данных оптимизации задания для выполнения на конвейере. В параметрах советника мы могли указать, на каких торговых инструментах (символах) и таймфреймах мы хотим проводить оптимизацию, как называются советники этапов и прочую необходимую информацию. Если базы данных оптимизации прежде не существовало, то она автоматически создавалась.

Автор: Yuriy Bykov

 

Hello @Yuriy 

Thanks for the great article. What happens when your machine restarts unexpectedly? Alright it resumed the optimization but i am got this error and the it stopped:


GBPUSD,H1: testing of Experts\Article.17328\Stage3.ex5 from 2022.09.01 00:00 to 2023.01.01 00:00 started with inputs:

idTask_=52

fileName_=article.17328.db.sqlite
  =

passes_=

=

groupName_=SimpleCandles_v.1.00_2023.01.01

advFileName_=SimpleCandles-27183.test.db.sqlite

 SELECT DISTINCT FIRST_VALUE(p.params) OVER (PARTITION BY p.id_task ORDER BY custom_ontester DESC) AS params   FROM passes p  WHERE p.id_task IN (           SELECT pt.id_task              FROM tasks t                   JOIN                   jobs j ON j.id_job = t.id_job                   JOIN                   stages s ON s.id_stage = j.id_stage                   JOIN                   jobs pj ON pj.id_stage = s.id_parent_stage                   JOIN                   tasks pt ON pt.i

tester stopped because OnInit returns non-zero code 1

connection closed

Any advise

 

Hello @filippa.barbosa

I apologize for the delay in responding.

It looks like it's that elusive bug again that we thought had been fixed. When testing the code of the last article, it was no longer encountered. Unfortunately, what cannot be reproduced cannot be fixed.

The reason for this message is most likely that not a single completed passage was formed at the second stage. You can try manually restarting the second and third stages. To do this, open the optimization database in the editor and replace the status "Done" with "Queued" in the stages table for the records of these stages. After that, run the Optimization.ex5 Expert Advisor on the chart.

 
'ReadFile' - no one of the overloads can be applied to the function call MTTester.mqh 1286 22
while compiling the Optimization.mq5 and other files. pls correct it using the terminal v 5.00 build 5142
 

Hello, dave365

You need to replace this file to latest version from MultiTester library. It will be done in next part 28.

MultiTester
MultiTester
  • 2019.07.19
  • www.mql5.com
Множественные прогоны/оптимизации в Тестере.
 
Yuriy Bykov #:

Hello, dave365

You need to replace this file to latest version from MultiTester library. It will be done in next part 28.

Пишите по-русски в русской части.  Все комментарии к статьям автоматические переводятся в каждой языковой ветке. 

И также зедсь есть кнопка "Автоперевод", если ему так хочется прочитать на английском имеено здесь.

 
Rashid Umarov #:
Пишите по-русски в русской части.

Рашид, полностью поддерживаю! Можете Вы со своей стороны заодно решить и такую проблему (см. ниже)? 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Вопрос к администрации сайта mql5.com

MrBrooklin, 2025.06.27 07:13

Всем доброго утра!

Зашёл в раздел "Все сообщения", а там вот такая картина:

Вопрос к администрации сайта (или ко всем кто в теме) - зачем мне нужны мои сообщения на всех языках мира? Или где-то нужно галочку снять/поставить, чтобы остались только на русском языке? Раньше такого не было.

С уважением, Владимир.


 

Спасибо, разберемся.

Мы уже решали эту проблему, но похоже, не до конца.

 
Rashid Umarov #:

Пишите по-русски в русской части.

Да, конечно. Буду внимательнее - по последним сообщениям в ветке подумал, что вопрос задан в английской ветке.

 
Rashid Umarov #:

Спасибо, разберемся.

Мы уже решали эту проблему, но похоже, не до конца.

Спасибо Вам!

С уважением, Владимир.

 
Rashid Umarov #:

Спасибо, разберемся.

Мы уже решали эту проблему, но похоже, не до конца.

Решили оставить как есть.