Помогите с индюком

 

Заинтересовал индюк 2ZCOMFX daily trend v2

Кто-нибудь  работал с ним, подскажите как сигдалы через iCustom  интегрировать в советник?

Файлы:
 
В России как-то не прижилась эта птица. Это Вам на американский форум надо.
 
А в чём трудность интеграции? iCustom(NULL,0,"2zcomfxsdailyvtrendkv2",0,0); для первого буфера на нулевой бар. И в том же стиле - для 2-го и 3-го буферов.
 
Zhunko:
В России как-то не прижилась эта птица. Это Вам на американский форум надо.
Та тут вообще как почитаешь - ферма, блин, какая-то... совы, индюки ... Всё пожарить никак не могут :)
 
evillive:
А в чём трудность интеграции? iCustom(NULL,0,"2zcomfxsdailyvtrendkv2",0,0); для первого буфера на нулевой бар. И в том же стиле - для 2-го и 3-го буферов.


А какже все остальные настройки индюка, пропускаются? или они сами по умолчанию подставляются?
 

 Мне больше интересно под какими буферами сигналы стрелок проходят. Через принт вроди как точно не: 0, 1, 2

Я щас прописал этого индюка так: 

double pokupaemdaily=iCustom(Symbol(),Period(),"2ZCOMFX daily trend v2","Write 6 pairs to show trend:","EURUSD","GBPUSD","AUDUSD","USDCHF","USDCAD","USDJPY",true,"Coordinates:",40,20,1,3,1);

 


 double prodaemdaily=iCustom(Symbol(),Period(),"2ZCOMFX daily trend v2","Write 6 pairs to show trend:","EURUSD","GBPUSD","AUDUSD","USDCHF","USDCAD","USDJPY",true,"Coordinates:",40,20,1,4,1);


 
woin2110:


А какже все остальные настройки индюка, пропускаются? или они сами по умолчанию подставляются?

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

А стрелок там 2 вида:

  1. на графике из буферов рисует: 0 - стрелка вверх, 1 - стрелка вниз, 2 - флэт (стрелка вправо);
  2. справа от графика - обьектами.

То есть если список внешних переменных такой:

extern string note="Write 6 pairs to show trend:";
extern   string symbol1="EURUSD";
extern   string symbol2="GBPUSD";
extern   string symbol3="AUDUSD";
extern   string symbol4="USDCHF";
extern   string symbol5="USDCAD";
extern   string symbol6="USDJPY";
extern bool ShowArrows = True;

extern string note2="Coordinates:";
extern int X=40;
extern int Y=20;
extern int Corner=1; 
//extern int H=0;

то реально имеет смысл передавать только это:

double pokupaemdaily=iCustom(Symbol(),Period(),"2zcomfxsdailyvtrendkv2","","EURUSD","GBPUSD","AUDUSD","USDCHF","USDCAD","USDJPY",0,1); // считывает значение первого буфера (стрелка вверх) за прошедший (1) бар.
double prodaemdaily=iCustom(Symbol(),Period(),"2zcomfxsdailyvtrendkv2","","EURUSD","GBPUSD","AUDUSD","USDCHF","USDCAD","USDJPY",1,1); // считывает значение второго буфера (стрелка вниз) за прошедший (1) бар.
double jdemdaily=iCustom(Symbol(),Period(),"2zcomfxsdailyvtrendkv2","","EURUSD","GBPUSD","AUDUSD","USDCHF","USDCAD","USDJPY",2,1); // считывает значение третьего буфера (стрелка вправо) за прошедший (1) бар.
 
evillive:

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

А стрелок там 2 вида:

  1. на графике из буферов рисует: 0 - стрелка вверх, 1 - стрелка вниз, 2 - флэт (стрелка вправо);
  2. справа от графика - обьектами.

То есть если список внешних переменных такой:

то реально имеет смысл передавать только это:



Спасибо добрый человек!!!

Скажи,   есть ещё какой нибудь способ кроме Принта, чтоб узнать какой буфер к чему относиться? А то частенько с этим мучаюсь. 

 
woin2110:



Спасибо добрый человек!!!

Скажи,   есть ещё какой нибудь способ кроме Принта, чтоб узнать какой буфер к чему относиться? А то частенько с этим мучаюсь. 

в ините пропишите для каждого буфера:

   SetIndexLabel(0,"CrossUp");
   SetIndexLabel(1,"CrossDown");
   SetIndexLabel(2,"Flat");

тогда в окне данных буферы будут с понятными именами

 
evillive:

в ините пропишите для каждого буфера:

тогда в окне данных буфера будут понятными с именами




ок спасибо
 

да, рассмотрел ещё раз код повнимательнее - нет смысла передавать из советника параметры для индикатора, ни один из них на расчёт буферов не влияет, а советник ничего другого получить через iCustom не сможет. так что вызов индикатора в виде

iCustom(NULL,0,"2zcomfxsdailyvtrendkv2",0,0) вполне достаточен.