Скачать MetaTrader 5

Индикатор из прерывистых линий.

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Зарегистрируйся на MQL5.community, чтобы оставлять комментарии!
Michail Smikov
167
Michail Smikov 2014.06.26 13:39 

Уважаемый господа, прошу вашей помощи в написании индикатора. 

Не получается и не знаю как сделать индикатор состоящий из прерывистых линий.

 

Если прописать DRAW_LINE, то индикатор соединяет линие только соседние бары, например бар с индексом i и i+1 (или  i-1)         Если попробовать соединить с баром i+2 то линяя вообще пропадает с графика.

    SetIndexStyle(1,DRAW_LINE,0,3,clrDeepPink);

Если прописать DRAW_SELECTION, то соединяются все непустые значения индикатора, образуя неприрывистую линию.

 

Мне необходимо сделать так чтоб линией соединялись отдельные фрагменты. 

Например как на рисунке.

 

Valeriy Korobeynik
24869
Valeriy Korobeynik 2014.06.26 13:59  
Нужно вычислить значение линии на каждом баре, где будет линия. Крайних точек недостаточно, хотя можно и объектами рисовать, если буферы заполнять необязательно.
Vitalie Postolache
12093
Vitalie Postolache 2014.06.26 14:01  
dr0:

Уважаемый господа, прошу вашей помощи в написании индикатора. 

Не получается и не знаю как сделать индикатор состоящий из прерывистых линий.

 

Если прописать DRAW_LINE, то индикатор соединяет линие только соседние бары, например бар с индексом i и i+1 (или  i-1)         Если попробовать соединить с баром i+2 то линяя вообще пропадает с графика.

    SetIndexStyle(1,DRAW_LINE,0,3,clrDeepPink);

Если прописать DRAW_SELECTION, то соединяются все непустые значения индикатора, образуя неприрывистую линию.

 

Мне необходимо сделать так чтоб линией соединялись отдельные фрагменты. 

Например как на рисунке.

А DRAW_ZIGZAG не пробовали?

А ещё можно попробовать через DRAW_SECTION, но ненужный буфер заполнять EMPTY_VALUE.

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



Michail Smikov
167
Michail Smikov 2014.06.26 14:08  
evillive:

А DRAW_ZIGZAG не пробовали?

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




Как нарисовать графикй, я понимаю. Это слишком просто.=))

 

Как с ZIGZAG можете подсказать пример кода? Я так с ним не разобрался. Там каких два масива нужно объявлять.  

Valeriy Korobeynik
24869
Valeriy Korobeynik 2014.06.26 14:18  
ЗЗ не получится. Известно же кол-во баров, и разница в пунктах между крайними точками. Рассчитать разницу на 1 бар, и заполнить значение буфера на протяжении всей линии.
Michail Smikov
167
Michail Smikov 2014.06.26 14:46  
valeryk:
ЗЗ не получится. Известно же кол-во баров, и разница в пунктах между крайними точками. Рассчитать разницу на 1 бар, и заполнить значение буфера на протяжении всей линии.


Нашел пример индикатора где используется DRAW_ZIGZAG  - это то же самое что SELECTION, только с двумя буферами.   Непустые значения соединяются линиями.

 

Видимо прийдется делать как вы советуете. Спасибо.

 

Еще вопрос 

В Хелпе упоминаются фразы про доп. массив где будет хранится цвет индикатора на определенном баре. Это работает только в MQL5 ? или на 4й версии можно реализовать? 

Valeriy Korobeynik
24869
Valeriy Korobeynik 2014.06.26 14:58  
dr0:


Нашел пример индикатора где используется DRAW_ZIGZAG  - это то же самое что SELECTION, только с двумя буферами.   Непустые значения соединяются линиями.

 

Видимо прийдется делать как вы советуете. Спасибо.

 

Еще вопрос 

В Хелпе упоминаются фразы про доп. массив где будет хранится цвет индикатора на определенном баре. Это работает только в MQL5 ? или на 4й версии можно реализовать? 

 

 

 

 

 

 



Я пока не сталкивался, вроде как можно. Но в данном примере судя по графику удобней иметь 2 буфера, отдельно поддержка и отдельно сопротивление.
Victor Nikolaev
Модератор
14483
Victor Nikolaev 2014.06.26 16:18  
И чем обычные машки не нравятся. Их точно так же можно делать прерывистыми. Самое главное - ничего сложного и всегда работает
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий