Мой подход. Ядро - Движок. - страница 156

 
Nikolai Semko:


Нам не страшен серый волк, серый волк, серый волк....))

Николай, боялся бы я С#, давно бы все бросил...

 

Vasiliy Sokolov:можете кидать сюда свои пожелания - постараемся их проработать:)

отдельный топик бы, я тож в этом направлении изрядно продвинулся, поучаствовал бы в обсуждении и поделился бы наработками

ЗЫ: но я хочу сразу универсальный код который будет работать и в МТ4 и в МТ5, в принципе ничего сложного, время только не хватает, сейчас в качестве практического примера хочу сделать себе аналог как в МТ-терминал-торговля и все это будет работать в тестере как в МТ4, так в МТ5, код интеграции в МТ универсальный... в общем довольно увлекательное мероприятие  ;)

 
Igor Makanu:

отдельный топик бы, я тож в этом направлении изрядно продвинулся, поучаствовал бы в обсуждении и поделился бы наработками

ЗЫ: но я хочу сразу универсальный код который будет работать и в МТ4 и в МТ5, в принципе ничего сложного, время только не хватает, сейчас в качестве практического примера хочу сделать себе аналог как в МТ-терминал-торговля и все это будет работать в тестере как в МТ4, так в МТ5, код интеграции в МТ универсальный... в общем довольно увлекательное мероприятие  ;)

Целей достичь всего и сразу нет. Будет мимимально работающий прототип, работающий с минимальным количеством элементов. Потом посмотрим. 

 
Vasiliy Sokolov:

Целей достичь всего и сразу нет. Будет мимимально работающий прототип, работающий с минимальным количеством элементов. Потом посмотрим. 

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

ЗЫ: универсальность (один код на С# для МТ4/МТ5) достигается просто, на данный момент (янв 2019) все элементарно и работает без проблем, вот отписался https://www.mql5.com/ru/forum/3153/page4#comment_10366498

Обсуждение статьи "Как открыть мир C# из MQL5 путем экспорта неуправляемого кода"
Обсуждение статьи "Как открыть мир C# из MQL5 путем экспорта неуправляемого кода"
  • 2014.10.08
  • www.mql5.com
Также я подготовил несколько примеров маршалинга структур MQL5 для C# и примеров вызова экспортированных функций DLL в скриптах на MQL5.
 
Vasiliy Sokolov:

Целей достичь всего и сразу нет. Будет мимимально работающий прототип, работающий с минимальным количеством элементов. Потом посмотрим. 

Я сейчас реализую управление копиями советника на разных графиках из главного движка. Моновалютность советников будет превращаться в мультивалютность через движок. В нем центр наблюдения за копиями советника и рычаги управления ими.

Интересно, как ты это сделаешь.

 

Чтобы сделать нормальное управление, надо иметь практика использования роботов.

Например когда одно-символьный советник превращается мультивалютного, то теряет гибкость управления. Его только хорошо смотрится на тестере, где в разы увеличивается прибыльность.

Но на реале лучше чтобы каждый график имел свой советник, со своими входными параметрами и с рычагами управления. 

 
Petros Shatakhtsyan:

Чтобы сделать нормальное управление, надо иметь практика использования роботов.

Например когда одно-символьный советник превращается мультивалютного, то теряет гибкость управления. Его только хорошо смотрится на тестере, где в разы увеличивается прибыльность.

Но на реале лучше чтобы каждый график имел свой советник, со своими входными параметрами и с рычагами управления. 

Это всё легко реализуемо в коде, если конечно написал его сам

 
Vitaly Muzichenko:

Это всё легко реализуемо в коде, если конечно написал его сам

Надо было учитывать, что всё это мне известно.

И в чем преимущество мультивалютного советника и каким образом пользователь будет подбирать для отдельных символов свои параметры. С одного командного пункта не удобно.

 
Vasiliy Sokolov:

Петр, если ты не возражаешь, я подготовлю статью, как на MQL можно достаточно просто создать графическое приложение, используя новую возможность интеграции с библиотеками .Net. Статья будет называться "Создание пользовательских форм в VisualStudio для торговых экспертов на базе .Net Framework и C#".

Твой подход и твои идеи раззадорили меня. Я задался вопросом: можно ли легко и быстро, обладая лишь базовыми возможностями в программировании, создать для своего эксперта графическую форму. Я провел эксперимент, и оказалось что можно! У меня получилась вот так формочка:

Идея была именно в том, что бы пользователь нарисовал нужную ему форму в редакторе VisualStudio, а вся необходимая работа по объединению этого окна с MQL кодом была бы выполнена "за кулисами", в автоматическом режиме. Для этого пришлось написать сферхкомпактный контроллер на C# - некий аналог твоего ядра, однако,  занимает он всего около 200 строк кода. 

О том, как все это работает вы сможете прочитать в статье, которую я начал.

Обработку событий через таймер сделали?
 
Petros Shatakhtsyan:

Надо было учитывать, что всё это мне известно.

И в чем преимущество мультивалютного советника и каким образом пользователь будет подбирать для отдельных символов свои параметры. С одного командного пункта не удобно.

Подключаете отдельный файл и в него настройки. Во входных параметрах 1 дополнительная настройка: Настройка -> Торговля. После теста занесли настройку в файл, и так для всех необходимых пар.

Но это как один из нескольких вариантов.

Зато имеем преимущество в мультивалютном тестировании, а не по одному символу, а потом странным способом складывать файлы для конечного просчёта.