Как использовать входы для индикатора ZigZag? - страница 3

 

Как использовать этот индикатор ZigZag из советника

Привет всем,

У меня есть этот индикатор, который я хочу использовать в своем советнике.

ZigZag.mq4 - оригинал

ZigZagAlex.mq4 - я пытался добавить еще один буфер для считывания значения.

Я пытался считывать значение примерно так:

alMNAL0 = iCustom(NULL,15, "ZigZagAlex",1,0);

alMNAL1 = iCustom(NULL,15, "ZigZagAlex",1,1);

но я всегда получаю alMNAL1 = 0 ... и alMNAL0=21........... (огромное число)

Может ли кто-нибудь помочь мне исправить индикатор так, чтобы при установке от индикатора CrossC = 1; чтобы мой alMNAL0 читал 1 и для CrossC = -1; чтобы мой alMNAL0 был -1 ... во всех других ситуациях (когда стрелка не печатается), чтобы alMNAL0 был 0.

Заранее спасибо

Файлы:
zigzag.mq4  10 kb
 

Отсортировано

Привет,

Я решил эту проблему следующим образом:

alMNAL0 = iCustom(NULL,alperiod, "ZigZag",0,0);

alMNAL1 = iCustom(NULL,alperiod, "ZigZag",1,0);

Таким образом, я проверяю только последний бар, если есть стрелка, я покупаю или продаю.

Если я могу кому-то как-то помочь - пожалуйста, дайте мне знать.

Александр

 

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

 
ljuba973:
Привет,

Я решил эту проблему следующим образом:

alMNAL0 = iCustom(NULL,alperiod, "ZigZag",0,0);

alMNAL1 = iCustom(NULL,alperiod, "ZigZag",1,0);

Таким образом, я проверяю только последний бар, если есть стрелка, я покупаю или продаю.

Если я могу как-то помочь кому-то - пожалуйста, дайте мне знать.

Александр

Привет, Александр!

Где именно вы добавили эти две строки?

Заранее спасибо!

meroka

 
meroka:
Привет, Александр!

Где именно вы добавляете эти две строки?

Заранее спасибо!

meroka

Привет,

Для меня проще всего иметь одну вызывающую функцию на вершине функции START, например: TakeValues();

а внизу иметь такую функцию:

void TakeValues()

{

alMNAL0 = iCustom(NULL,alperiod, "ZigZag",0,0);

alMNAL1 = iCustom(NULL,alperiod, "ZigZag",1,0);

//--------------------------------------------------------------------

return(0);

}

Таким образом, везде в коде вы можете использовать эти две глобальные переменные.

Надеюсь, это поможет

 

Привет, Александр,

Все это происходит потому, что я начинающий.

Я разместил эти строки (окрашенные в красный цвет) внизу следующим образом

}

GSignals=GSignalUP+GSignalDOWN;

GSignalsP=GSignals/AllSignal;

GSignalUPP=(GSignalUP/SignalUP);

GSignalDOWNP=(GSignalDOWN/SignalDOWN);

int www=GSignalsP*100 ;

}

void TakeValues()

{

alMNAL0 = iCustom(NULL,alperiod, "ZigZag",0,0);

alMNAL1 = iCustom(NULL,alperiod, "ZigZag",1,0);

//--------------------------------------------------------------------

return(0);

}

НО я получил 4 ошибки

'alMNAL0' - переменная не определена C:\Program Files\NordMarkets MetaTrader\experts\indicators\ZigZagAlex.mq4 (188, 1)

'alperiod' - переменная не определена C:\Program Files\NordMarkets MetaTrader\experts\indicators\ZigZagAlex.mq4 (188, 24)

'alMNAL1' - переменная не определена C:\Program Files\NordMarkets MetaTrader\experts\indicators\ZigZagAlex.mq4 (189, 1)

'alperiod' - переменная не определена C:\Program Files\NordMarkets MetaTrader\experts\indicators\ZigZagAlex.mq4 (189, 24)

Еще раз спасибо

 
meroka:

Но я получил 4 ошибки

'alMNAL0' - переменная не определена C:\Program Files\NordMarkets MetaTrader\experts\indicators\ZigZagAlex.mq4 (188, 1)

'alperiod' - переменная не определена C:\Program Files\NordMarkets MetaTrader\experts\indicators\ZigZagAlex.mq4 (188, 24)

'alMNAL1' - переменная не определена C:\Program Files\NordMarkets MetaTrader\experts\indicators\ZigZagAlex.mq4 (189, 1)

'alperiod' - переменная не определена C:\Program Files\NordMarkets MetaTrader\experts\indicators\ZigZagAlex.mq4 (189, 24)

Еще раз спасибо

В верхней части скрипта вы должны определить эти три переменные следующим образом:

int alperiod = 5;

double alMNAL0 = 0.01;

double alMNAL1 = 0.01;

 
ljuba973:
В верхней части скрипта вы должны определить эти три переменные как:

int alperiod = 5;

double alMNAL0 = 0.01;

double alMNAL1 = 0.01;

Привет,

Спасибо, Александр. Теперь все работает.

meroka

 

Без проблем

 

ЛЮБОЙ код для определения зигзага

я здесь новичок, и теперь у меня проблема с индикатором зигзаг.

определить

последней вершины и дна линии зигзага (или если есть идентификация других как вершина 1, вершина 2, вершина 3 из индикатора зигзага) и использовать их в расчете как последняя вершина + последнее дно /2

так что дайте мне этот код

ps.1 я пишу, потому что не могу найти никакого результата от моего собственного поиска, поэтому прошу выложить код здесь, спасибо за любую помощь.

ps.2 "Wave Power EA" - это бесплатный советник, который я видел, он действительно работает с плавным ростом, не уверен, откуда он загружен.

Причина обращения: