Вставил алерты Orders_Total=2 lowest и highest тоже дают адекватные значения тем не менее эксперт виснет в этом цикле, выдавая бесконечное множество алертов, других ошибок (касающихся модификация ордера) не выдает.
Приветствую! Если я подключаю к советнику внешний индикатор через iCustom,то не получается динамически менять входные параметры.Если iMA ,то все в порядке.С постоянными значениями все работает.Две взаимозаменяемые строки.Поместил в OnTick() , MA период пересчитывается.
Приветствую! Если я подключаю к советнику внешний индикатор через iCustom,то не получается динамически менять входные параметры.Если iMA ,то все в порядке.С постоянными значениями все работает.Две взаимозаменяемые строки.Поместил в OnTick() , MA период пересчитывается.
Если в данном случае так и есть,что во внешних нельзя менять,то встраивать код в советник?
Воспроизведите входные параметры индикатора в качестве входных параметров эксперта. И хендл лучше получать один раз при инициализации эксперта, чем на каждом новом тике.
Воспроизведите входные параметры индикатора в качестве входных параметров эксперта. И хендл лучше получать один раз при инициализации эксперта, чем на каждом новом тике.
У меня период средней меняется от ATR в процессе работы советника,поэтому хендл средней помещен в OnTick() .По сути входным параметром эксперта является период ATR.Он не меняется.ATR в OnInit().
intOnInit()
{
atr_handle = iATR(_Symbol,0, ATR); //инициализируем хэндл ATR
}
voidOnTick()
{
CopyBuffer(atr_handle,0,0,5,atr); //заполняем массив ATRArraySetAsSeries(atr,true);
MA=(int)(atr[1]*kMA); //рассчитываем период требуемый для средней от ATR//ma_handle = iCustom(_Symbol,0,"Examples\\JJMA.ex5",MA,4); // получаем хэндл средней
ma_handle = iMA(_Symbol,0, MA,0, MODE_EMA, PRICE_CLOSE);
CopyBuffer(ma_handle,0,0,5,ma); //заполняем массив среднейArraySetAsSeries(ma,true);
}
У меня период средней меняется от ATR в процессе работы советника,поэтому хендл средней помещен в OnTick() .По сути входным параметром эксперта является период ATR.Он не меняется.ATR в OnInit().
Примерно понял. Но это тяжко - получать хендл индикатора каждый раз на новом тике... А предыдущий хендл куда деваете?
Спасибо огромное papaklass, получилось, теперь попытаюсь осмыслить в чём разница.
Почему эксперт зацикливается на этом куске кода:
Вставил алерты Orders_Total=2 lowest и highest тоже дают адекватные значения тем не менее эксперт виснет в этом цикле, выдавая бесконечное множество алертов, других ошибок (касающихся модификация ордера) не выдает.
Помогите разобраться новичку :)
На один внешний цикл и два внутренних цикла одна и та же переменная цикла i, которая с каждой новой итерацией внешнего цикла становится равной 12
На один внешний цикл и два внутренних цикла одна и та же переменная цикла i, которая с каждой новой итерацией внешнего цикла становится равной 12
Можете исправить код? Нужна цена открытия текущего бара. Заранее благодарю.
Можете исправить код? Нужна цена открытия текущего бара. Заранее благодарю.
"Symbol_ " - неправильный параметр, подчеркивание должно быть спереди
Да и кол-во копируемых элементов указано 0.
Приветствую! Если я подключаю к советнику внешний индикатор через iCustom,то не получается динамически менять входные параметры.Если iMA ,то все в порядке.С постоянными значениями все работает.Две взаимозаменяемые строки.Поместил в OnTick() , MA период пересчитывается.
Если в данном случае так и есть,что во внешних нельзя менять,то встраивать код в советник?
Извиняюсь,работает,просто на порядок дольше.
Приветствую! Если я подключаю к советнику внешний индикатор через iCustom,то не получается динамически менять входные параметры.Если iMA ,то все в порядке.С постоянными значениями все работает.Две взаимозаменяемые строки.Поместил в OnTick() , MA период пересчитывается.
Если в данном случае так и есть,что во внешних нельзя менять,то встраивать код в советник?
"...не получается динамически менять входные параметры" индикатора?
Воспроизведите входные параметры индикатора в качестве входных параметров эксперта. И хендл лучше получать один раз при инициализации эксперта, чем на каждом новом тике.
"...не получается динамически менять входные параметры" индикатора?
Воспроизведите входные параметры индикатора в качестве входных параметров эксперта. И хендл лучше получать один раз при инициализации эксперта, чем на каждом новом тике.
У меня период средней меняется от ATR в процессе работы советника,поэтому хендл средней помещен в OnTick() .По сути входным параметром эксперта является период ATR.Он не меняется.ATR в OnInit().
У меня период средней меняется от ATR в процессе работы советника,поэтому хендл средней помещен в OnTick() .По сути входным параметром эксперта является период ATR.Он не меняется.ATR в OnInit().