Нужна нумерация "ARROW"

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Zviad Kajaia
125
Zviad Kajaia  
Это обичный MACD, красная точка появляется если MACD разворачивается вниз по закрытию на предидушей,
зеленная - если MACD разворачивается вверх по закрытию на предидушей. В помежудках буфера ARROW = EMPTY_VALUE.
Нужна нумерация "ARROW" для последуюшего вызова следуюшим образом:

если появилас красная точка - обнуление предидушей нумерации обох буферов ARROW и присвоение последней
красной точке 0, предидушей точке 1 и т.д как на рисунке RED. При вызове должно получиться так

for(j=0; j<(Bars-1);j++)
iCustom(NULL,0,"j_Macd",0,j)  была последняя красная точка
iCustom(NULL,0,"j_Macd",0,j+1) была последняя зеленная точка 
iCustom(NULL,0,"j_Macd",0,j+2) была предпоследняя красная точка и т.д.

если появилас зеленная точка- обнуление предидушей нумерации обох буферов ARROW и присвоение последней
точке 0, предидушей 1 и т.д как на рисунке GREEN. При вызове должно получиться так

for(j=0; j<(Bars-1);j++)
iCustom(NULL,0,"j_Macd",0,j)  была последняя зеленная точка
iCustom(NULL,0,"j_Macd",0,j+1) была последняя красная точка 
iCustom(NULL,0,"j_Macd",0,j+2) была предпоследняя зеленная точка и т.д.

Это Возможно? И если да, то как?
Файлы:
j_Macd.mq4 2 kb
RED.png 23 kb
GREEN.png 23 kb
Taras Slobodyanik
28895
Taras Slobodyanik  
Создать еще один буфер, только для номеров.
Цифры, на диаграмму, печатать текстовыми метками.
Zviad Kajaia
125
Zviad Kajaia  
Taras Slobodyanik:
Создать еще один буфер, только для номеров.
Цифры, на диаграмму, печатать текстовыми метками.

Это как? Можно пример кода?

Taras Slobodyanik
28895
Taras Slobodyanik  
Zviad Kajaia:

Это как? Можно пример кода?

конечно)

SetIndexBuffer(0,buffer,INDICATOR_CALCULATIONS);

ObjectCreate(0,label_name,OBJ_TEXT,0,label_time,label_price);
Zviad Kajaia
125
Zviad Kajaia  
Taras Slobodyanik:

конечно)

Я не очень в кодинге, так что простите за вопросы )))

мне кажется Вы не поняли суть вопроса.

если появилас красная точка - обнуление предидушей нумерации обох буферов ARROW и присвоение последней

красной точке 0, предидушей точке 1 и т.д как на рисунке RED.

как определить label_time скажем пятой точки?

и если даже OBJ_TEXT будет нумероватся правильно, как потом вызвать текст в iCustom ?

Taras Slobodyanik
28895
Taras Slobodyanik  
Zviad Kajaia:

если появилас красная точка - обнуление предидушей нумерации обох буферов ARROW и присвоение последней
красной точке 0, предидушей точке 1 и т.д как на рисунке RED.

а для чего нужна нумерация? (если все цифры идут последовательно от начала до конца)
и так понятно что первая точка - первая, а последняя - последняя...

просто расставить последовательные цифры, и при появлении новой точки перерисовывать их?
Zviad Kajaia
125
Zviad Kajaia  
Taras Slobodyanik:

а для чего нужна нумерация? (если все цифры идут последовательно от начала до конца)
и так понятно что первая точка - первая, а последняя - последняя...

просто расставить последовательные цифры, и при появлении новой точки перерисовывать их?

При вызове из тс как сравнить скажем точки 3 и 4? если они не имеют какието метки? iCustom(NULL,0,"j_Macd",0,j+сколько?) 

Taras Slobodyanik
28895
Taras Slobodyanik  
Zviad Kajaia:

При вызове из тс как сравнить скажем точки 3 и 4? если они не имеют какието метки? iCustom(NULL,0,"j_Macd",0,j+сколько?) 

так же как с зигзагом - перебирать (искать) все точки с начала, и сравнивать
или же собирать массив точек, и с ним дальше работать (обновлять точки)

Zviad Kajaia
125
Zviad Kajaia  
Taras Slobodyanik:

так же как с зигзагом - перебирать (искать) все точки с начала, и сравнивать
или же собирать массив точек, и с ним дальше работать (обновлять точки)

ну и как это будет в коде? 

Чтоб при вызове получился так

iCustom(NULL,0,"j_Macd",0,j)  была последняя красная точка
iCustom(NULL,0,"j_Macd",0,j+1) была последняя зеленная точка 

iCustom(NULL,0,"j_Macd",0,j+2) была предпоследняя красная точка и т.д.

на рисунках 0 это роследняя точка

В этом суть Вопроса

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий