Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 614

 
newnek:

Здравствуйте! Подскажите, пожалуйста, мне необходимо чтобы в сигнале стандартной библиотеки параметр Parameter=Ka,int,21

Выбирался в процессе оптимизации из перечисления типа

Но, когда сигнал пропадает из выбора при генерации советника, а компилируется нормально, то трудно сделать выводы – что не так......, помогите с кодом, не было ли уже реализации?

p.s. приходится в итоговом советнике менять каждый раз int на intType

Ничего не нужно менять - просто сгенерируйте советник на основании модуля сигнала индикатора "Relative Vigor Index", затем в тестере стратегий, во вкладке "Настройка" выберите одну из оптимизаций, перейдите во вкладку "Параметры" и задайте интервал и значения для параметра "Relative Vigor Index(10) Period of calculation" значения:

RVI

Но так как Вы желаете использовать только только три значения из интервала 15-29, то нужно прописать условие проверки в OnInit():

//+------------------------------------------------------------------+
//| Initialization function of the expert                            |
//+------------------------------------------------------------------+
int OnInit()
  {
   if(Signal_RVI_PeriodRVI!=15 && Signal_RVI_PeriodRVI!=21 && Signal_RVI_PeriodRVI!=29)
      return(INIT_PARAMETERS_INCORRECT);
//--- Initializing expert

После запуска оптимизации видно, что тестер отработал только для параметров 15, 21 и 29:

Оптимизация выборочная 

 
Karputov Vladimir:

Ничего не нужно менять - просто сгенерируйте советник на основании модуля сигнала индикатора "Relative Vigor Index", затем в тестере стратегий, во вкладке "Настройка" выберите одну из оптимизаций, перейдите во вкладку "Параметры" и задайте интервал и значения для параметра "Relative Vigor Index(10) Period of calculation" значения:


Но так как Вы желаете использовать только только три значения из интервала 15-29, то нужно прописать условие проверки в OnInit():

После запуска оптимизации видно, что тестер отработал только для параметров 15, 21 и 29:

 

Спасибо, понял я вашу идею, очень интересная, но впустую будет куча шагов (хотя наверно и время тратиться не будет). У меня получилось в сформированном советнике вручную менять на тип перечисления. А хотелось бы еще сильней автоматизировать.
 
newnek:
Спасибо, понял я вашу идею, очень интересная, но впустую будет куча шагов (хотя наверно и время тратиться не будет). У меня получилось в сформированном советнике вручную менять на тип перечисления. А хотелось бы еще сильней автоматизировать.
Пустые шаги будут - но они не занимают время,  так как из OnInit() будет выход, по несоответствию условия, и сразу запускаться следующий шаг оптимизации.
 

День добрый... Сам программист С++. Вот решил попробовать недавно себя в данной сфере... Хочу написать советника или эксперта неважно, стратегию придумал, платформа МТ4... ну так вот, Столкнулся с такой вот проблемой использую в своем советнике MACD.... напишу покороче...

Например создаю новый шаблон советника в OnTick добавляю x=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0); и допустим больше ничего нет... компилю, тестирую, все ОК, в конце тестирования отображается график macd с заданными параметрами, все ОК.

Второй вариант -  создаю новый шаблон советника в OnTick добавляю сторонний индикатор RSICur=iCustom(NULL,0,"My_Induk",14,1,0,21,1,65,35,"DodgerBlue","Magenta",50,50,"Red","Green",0,0); компилю, тестирую, все ОК, НО!!! после окончания теста или после отмены теста в окне тысячи этих индикаторов, я так понимаю, что на каждом тике создается новый индюк... почему непойму, ведь тот же стандартный макд рождается один раз и все...

Ктонибудь может разьяснить проблему... с другим нестандартным индикатором та же проблема...

 П.С. это мой первый пост... прошу не ругать за то, что не нашел как фото под споллер прятать. 

скрин
 

Незнаю с чемм связано Но нашел выход...

 RSICur=iCustom(NULL,0,"My_Induk",14,1,0,21,1,65,35,"DodgerBlue","Magenta",50,50,"Red","Green",0,0); - Рисует график каждый тик т.е. тысячи графиков

  RSICur=iCustom(NULL,0,"My_Induk",0,0);  - Все Ок, один график, каждый тик обновляются только данные в переменной RSICur... В чем логика не пойму, в принципе мне этого хватает, Но хотелось бы понять почему нормально работает только  с дефолтными настройками...

 
Игорь Марин:

День добрый... Сам программист С++. Вот решил попробовать недавно себя в данной сфере... Хочу написать советника или эксперта неважно, стратегию придумал, платформа МТ4... ну так вот, Столкнулся с такой вот проблемой использую в своем советнике MACD.... напишу покороче...

Например создаю новый шаблон советника в OnTick добавляю x=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0); и допустим больше ничего нет... компилю, тестирую, все ОК, в конце тестирования отображается график macd с заданными параметрами, все ОК.

Второй вариант -  создаю новый шаблон советника в OnTick добавляю сторонний индикатор RSICur=iCustom(NULL,0,"My_Induk",14,1,0,21,1,65,35,"DodgerBlue","Magenta",50,50,"Red","Green",0,0); компилю, тестирую, все ОК, НО!!! после окончания теста или после отмены теста в окне тысячи этих индикаторов, я так понимаю, что на каждом тике создается новый индюк... почему непойму, ведь тот же стандартный макд рождается один раз и все...

Ктонибудь может разьяснить проблему... с другим нестандартным индикатором та же проблема...

 П.С. это мой первый пост... прошу не ругать за то, что не нашел как фото под споллер прятать. 

С фото все ОК, тут не прячут. 

А этот My_Induk вы писали или где-то нашли? Я так понимаю, индикатор кривой. Если есть исходники, выложите - посмотрим, в чем проблема.

 
Игорь Марин:

Незнаю с чемм связано Но нашел выход...

 RSICur=iCustom(NULL,0,"My_Induk",14,1,0,21,1,65,35,"DodgerBlue","Magenta",50,50,"Red","Green",0,0); - Рисует график каждый тик т.е. тысячи графиков

  RSICur=iCustom(NULL,0,"My_Induk",0,0);  - Все Ок, один график, каждый тик обновляются только данные в переменной RSICur... В чем логика не пойму, в принципе мне этого хватает, Но хотелось бы понять почему нормально работает только  с дефолтными настройками...

Такое бывает когда ВЫ параметры индикатора не правильно передали. внимательно посмотрите и сравните параметры индикатора и то что ВЫ написали в эксперте. 
 
Alexey Volchanskiy:

С фото все ОК, тут не прячут. 

А этот My_Induk вы писали или где-то нашли? Я так понимаю, индикатор кривой. Если есть исходники, выложите - посмотрим, в чем проблема.

Vladislav Andruschenko:
Такое бывает когда ВЫ параметры индикатора не правильно передали. внимательно посмотрите и сравните параметры индикатора и то что ВЫ написали в эксперте. 

Спасибо Вам Разобрался... Протыкался весь день понять не мог... Сам программист, но бывает... Ошибка была синтаксическая, я из советника вызывая индикатор параметры цвета почему-то в кавычках передавал...

iCustom(NULL,0,"My_Induk",14,1,0,21,1,65,35,"DodgerBlue","Magenta",50,50,"Red","Green",0,0); 

вот из за этого данный косяк и происходил... ) Спасибо Вам!!! Наверняка ещё будут вопросы!!!

 
здравствуйте.
у меня на МТ-5 в окне инструменты нет вкладок - календарь , сигналы , не подскажите как их добавить?
 
sergey966121:
здравствуйте.
у меня на МТ-5 в окне инструменты нет вкладок - календарь , сигналы , не подскажите как их добавить?

За вкладку "Календарь" отвечают настройки на торговом сервере. Если вкладки нет - требуйте её включения у торговой организации, в которой открыт торговый счёт.

Если нет вкладки "Сигналы":

Если в MetaTrader'e нет вкладки "Сигналы" 

 

Добавлено: операционная система - Windows?