Эксперт + пользовательский индикатор

 

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

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

Спасибо.

Файлы:
 
Поможет iCustom:), или денежка:)
 
А вобще все просто, тут же на сайте есть статьи, mql4 для чайников!
 
BoBbI4 писал(а) >>

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

Вроде бы слышал, что не получится по цвету так сделать.

Видимо надо в самом индюке найти условия перемены цвета.

 

Берем советник Moving Average из стандартной поставки (зря что ли Rosh писал)).
Берем из индикатора блок раскраски

trend[x] = trend[x+1];
        if (ExtMapBuffer[x]> ExtMapBuffer[x+1]) trend[x] =1;
        if (ExtMapBuffer[x]< ExtMapBuffer[x+1]) trend[x] =-1;

и оформляем его в виде функции babon (), функция же эта в советнике.

int babon(int x)
{
   static int trend1;
double ExtMapBuffer=iCustom(NULL,0,"BabonpSlopey[1]",period,method,price,2,x);
double ExtMapBuffer1=iCustom(NULL,0,"BabonpSlopey[1]",period,method,price,2,x+1);
   int trend = trend1;
        if (ExtMapBuffer> ExtMapBuffer1) trend =1;
        if (ExtMapBuffer< ExtMapBuffer1) trend =-1;
        return (trend);

}


Заменяем условия по МА на babon()

добавляем переменную start - это бар на котором совтеник торгует
и проверку сформировавшегося бара

if(start!=0) if(lasttime==Time[0]) return(0);
   lasttime=Time[0];


- ну и?

Файлы:
 

Внимание!

имя файла индикaтора в функции babon() должно поправить так чтобы совпадало с файлом,

сейчас стоит такое каким скачивается

P.S.т.е. к советнику скачать индикатор и будет имя

 

Может быть так ?

https://www.mql5.com/ru/code/7632

 
QFlash писал(а) >>

Может быть так ?

'exp_iCustom_v1'


В нем не предусмотрено использование индикатора с одной разноцветной линией.

У разных индикаторов применяются разные способы перекарашивания линии, некоторые из них:

1. Линия одного цвета существует всегда, на нее накладывается сверху линия другого цвета.

2. Если отрисовывается один цвет, линия второго цвета имеет EMPTY_VALUE или 0, но при этом на стыках линия подрисовывается на один бар в прошлое, чтобы на графике не было разрывов.

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

 
япона стихи))
..
Индикатор на форyме видел
Спать ложуся с надеждой
 

Напишите, пожалуйста, код, который присваивал к 3-м переменным (Например A, B, C) значения 3-х последних свечек индикатора BabonpSlopey.mq4

Спасибо.

 
a=Babon(1);

b=Babon(2);

c=Babon(3);
double Babon(int index){
   double b1=iCustom(NULL,0,"BabonpSlopey",period,method,price,0,index);
   double b2=iCustom(NULL,0,"BabonpSlopey",period,method,price,1,index);
   if(b1!=EMPTY_VALUE)return(b1);
   return(b2);
}   
Причина обращения: