А почему бы не поместить входные параметры в структуру? - страница 7

 
Dmitry Fedoseev:

Может дело в том, что в первом посте все как-то не так изложено? Поэтому каждый о своем пишет. А вопросы-то задавать нельзя - в ответ или игнор или истерика.


От кого?

 

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

Кстати неясно, зачем в этом решении потребовалось создание нового чарта?

P. S. И в этой строке "недопечатка":

  Params[0].string_value = "Experts\\Advisors\ExpertMACD.ex5";
 
Ihor Herasko:

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

Пользователь запускает Expert_loader, будто это и есть советник. 

Кстати неясно, зачем в этом решении потребовалось создание нового чарта?

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

Библиотеки: Expert

fxsaber, 2017.09.08 14:45

Если же нужно еще и советник запустить на том же чарте, куда кидается скрипт, то нужно открывать новый чарт и на нем через шаблон запускать себя же (скрипт), а оттуда запускать на нужном уже нам чарте советник, закрыв вспомогательный. Это проделывает ExpertLoader_Example.mq5.

На новом чарте совсем просто
// Запуск советника с заданными входными параметрами
#include <fxsaber\Expert.mqh>

void OnStart()
{
  MqlParam Params[2];
  
  // Путь к советнику
  Params[0].string_value = "Experts\\Advisors\\ExpertMACD.ex5";

  // Первый входной параметр советника
  Params[1].type = TYPE_STRING;
  Params[1].string_value = "Hello World!";

  // На новом чарте запускаем советник
  EXPERT::Run(ChartOpen(_Symbol, _Period), Params);
}

P. S. И в этой строке "недопечатка":

Спасибо, опечатка в описании. В MQL-файлах все норм.