ZigZag - страница 3

 
Иногда полезно просматривать форум ;).

"MQL4: Странно работает индикатор ZigZag. Ошибка терминала?"

Успехов.
 
Иногда полезно просматривать форум ;).

"MQL4: Странно работает индикатор ZigZag. Ошибка терминала?"

Успехов.



Spasibo kone4no. No vo-pervih etu temu pro ZigZag ya sozdal ranyse vashey temi na MQL4. Vo-vtorih, ya ne sovsem ponimaiu kak vash vopros "Как заставить индикатор нормально вызываться из эксперта?" i moy pohogi.

Ese raz spasibo.



S uvageniem,
Diam0nd.

P.S. Tot forum to ya kak raz "posmatrivaiu" evednevno, no on bolse nacelen na programirovanie, a etot imenno na bagi/ voprosi po MT.
P.P.S. "В продолжение темы...
Индикатор ZigZag с параметрами 8; 7; 3 на EURUSD Н1 в билде 198 отрисовывается, а в билде 200 - нет. Ошибка терминала?"
Eto ya videl. Otvet na vopros tam vrode ne nabludaetsia. Ili ya propustil?
 
Вобщем там вопрос то не мой был.

Интересно, а при изучении литературы Вы тоже ограничиваетесь чтением обложек и титульных листов и оглавлений ? Весьма полезный подход :).

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

Вобщем конечно здесь можно было ответить более кратко: из-за того, что алгоритм написан на скриптовом языке, МТ4 не успевает его обрабатывать - уменьшайте историю или уменьшайте количество обрабатываемых индикатором баров или переписывайте на С\С++. Но форум иногда полезно просматривать и пытаться понять.

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

Вобщем конечно здесь можно было ответить более кратко: из-за того, что алгоритм написан на скриптовом языке, МТ4 не успевает его обрабатывать - уменьшайте историю или уменьшайте количество обрабатываемых индикатором баров или переписывайте на С\С++. Но форум иногда полезно просматривать и пытаться понять.
С выделенной частью не соглашусь. Все зигзаг успевает просчитать. Ошибка появилась прошедшим летом. После того, как авторы метатрейдера "исправили" другие ошибки в зигзаге. С теми ошибками зигзаг хотя бы до конца - до нулевого бара всегда прорисовывался. А в общем-то, и со старым алгоритмом он плохо работал и с новым плохо.
Все дело в том, что зигзаг для метатрейдера создавался множеством людей. Большинство приложивших руку к этому процессу подходило к этому так: пусть будет и зигзаг, мне он особо и не нужен, ну пусть будет. Вот и получился такой уродец, на который кто только не ругался.
 
Вобщем там вопрос то не мой был.

Интересно, а при изучении литературы Вы тоже ограничиваетесь чтением обложек и титульных листов и оглавлений ? Весьма полезный подход :).

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

Вобщем конечно здесь можно было ответить более кратко: из-за того, что алгоритм написан на скриптовом языке, МТ4 не успевает его обрабатывать - уменьшайте историю или уменьшайте количество обрабатываемых индикатором баров или переписывайте на С\С++. Но форум иногда полезно просматривать и пытаться понять.

Успехов.





S tem ge uspehom mogu posovetovaty Vam pro4esty etu vetku ot na4ala do konca. O kakom "не успевает" mi govorim, esli on risuetsia do seredini? T.e. vi utvergdaete 4to na 3h instrumentah on "uspevaet" risovatsia, a na 4om net?
"уменьшайте историю или уменьшайте количество обрабатываемых индикатором баров"
Kak ya uge skazal, ya stavliu ego na svegiy terminal, istoriu dopolnitelno ne podgrugal, nastroyki terminala ne menial, zigzaga toge.

Menia prosto-naprosto interesuet otvet vot na kakoy vopros: po4emu indikator sey ne normalno rabotaet? Svegiy terminal, minimum istorii, standartnie nastroyki. Na 3h instrumentah rabotaet, na 4etvertom net.



S uvageniem,
Diam0nd.
 
наверно связано что-то с кодированием самого индикатора, у меня тоже есть кучка недоделанных, немогу пофиксить ошибки, и причину выявить не могу
 
наверно связано что-то с кодированием самого индикатора, у меня тоже есть кучка недоделанных, немогу пофиксить ошибки, и причину выявить не могу
Ошибку, которую мы обсуждали летом на Ониксе, я устранил. Если подгружается дополнительная история в начеле (слева), необходимо обнулять индикаторный буфер и проводить пересчет зигзага полностью.
Тогда не будут рисоваться линии зигзага в непонятных местах.
 
ошибка в коде индикатора.
он пытается сформировать и пик и ямку на одном баре.

надо вместо
for(shift=Bars-ExtDepth; shift>=0; shift--)
{

val=Low[index];
if(val==lastlow) val=0.0;
else
...
//--- high
index=Highest(NULL,0,MODE_HIGH,ExtDepth,shift);
val=High[index];
if(val==lasthigh) val=0.0;

писать типа

for(shift=Bars-ExtDepth; shift>=0; shift--)
{

val=Low[index];
if(val==lastlow) val=0.0;
else

continue; ///////////////////////////////////////////////////////////////////////////
...
//--- high
index=Highest(NULL,0,MODE_HIGH,ExtDepth,shift);
val=High[index];
if(val==lasthigh) val=0.0;
 
Da, primerno tak. Pozdravlyau s tem, shto vnik v algoritm ;)
 
Я давно уже вник, так что тут мне все очевидно было :)
Причина обращения: