алерт на появление стрелки на графике

 
здравствуйте! начинаю изучать mql4, задача вроде легкая, но не знаю как решить. надо, что появлялось оповещение, при появлении стрелки(любого графического объекта) на графике. Как реализовать? подскажите, пожалуйста 
 
nevalek:
здравствуйте! начинаю изучать mql4, задача вроде легкая, но не знаю как решить. надо, что появлялось оповещение, при появлении стрелки(любого графического объекта) на графике. Как реализовать? подскажите, пожалуйста 
ObjectsTotal(), наверное, в вашем случае поможет. Запоминаете предыдущее кол-во объектов типа "Стрелка", сравниваете с текущим ObjectsTotal() , при увеличении значения ObjectsTotal() - даете алерт.
 
Vasiliy Pushkaryov #:
ObjectsTotal(), наверное, в вашем случае поможет. Запоминаете предыдущее кол-во объектов типа "Стрелка", сравниваете с текущим ObjectsTotal() , при увеличении значения ObjectsTotal() - даете алерт.
спасибо, а если стрелка DRAW_ARROW
 
nevalek #:
спасибо, а если стрелка DRAW_ARROW
Должно тоже учитываться. Но чтобы наверняка убедиться выведите в принт кол-во объектов графика и при появлении стрелки сможете проверить.
 
Alert(ObjectsTotal(0,0, DRAW_ARROW)); //0
Alert(ObjectsTotal(0,0, -1));                //8
Vasiliy Pushkaryov #:
Должно тоже учитываться. Но чтобы наверняка убедиться выведите в принт кол-во объектов графика и при появлении стрелки сможете проверить.
не, не считает, попробовал просто все объекты вывести, показал 8, но стрелок больше, не знаю откуда 8 взял, на графике только один индикатор
 
nevalek #:
не, не считает, попробовал просто все объекты вывести, показал 8, но стрелок больше, не знаю откуда 8 взял, на графике только один индикатор

DRAW_ARROW - это для буфера. Чтобы графический объект выковырять нужно брать OBJ_ARROW

 
Yevhenii Levchenko #:

DRAW_ARROW - это для буфера. Чтобы графический объект выковырять нужно брать OBJ_ARROW

так я это понимаю, но я не смогу переписать индикатор, поэтому пытаюсь его чуть изменить, а в индикаторе нет ODJ..., только SetIndexStyle(0, DRAW_ARROW, EMPTY,2);
 
nevalek #:
не, не считает, попробовал просто все объекты вывести, показал 8, но стрелок больше, не знаю откуда 8 взял, на графике только один индикатор
Индикатор стрелки выводит в отдельном окне? Или все на главном графике?
 
Vasiliy Pushkaryov #:
Индикатор стрелки выводит в отдельном окне? Или все на главном графике?
все на главном
Файлы:
bh1lnf0p9p.png  141 kb
 

Аалерт куда поместили?

Alert(ObjectsTotal(0,0, -1));                //8

Попробуйте в самый конец ф-ии OnCalculate().

Если не выведет все стрелки, сделайте отдельный индикатор только с алертом и сравните.

 
nevalek #:
так я это понимаю, но я не смогу переписать индикатор, поэтому пытаюсь его чуть изменить, а в индикаторе нет ODJ..., только SetIndexStyle(0, DRAW_ARROW, EMPTY,2);

Тю. Тогда нужно проверять буферы, а не объекты