Попробуйте вникнуть в это, там и пример есть:
https://www.mql5.com/ru/docs/constants/objectconstants/enum_object/obj_rectangle

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов / OBJ_RECTANGLE
- www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов / OBJ_RECTANGLE - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
Renat Akhtyamov:
Спасибо! попробую разобраться, но будет не легко))
Попробуйте вникнуть в это, там и пример есть:
https://www.mql5.com/ru/docs/constants/objectconstants/enum_object/obj_rectangle
Все равно не получается!! не пойму в чем дело .... Ребята, есть кто опытный решить эту задачу?
Tango_X:
Все равно не получается!! не пойму в чем дело .... Ребята, есть кто опытный решить эту задачу?
Все равно не получается!! не пойму в чем дело .... Ребята, есть кто опытный решить эту задачу?
ну если нет терпения и упорства, тогда здесь будет выгоднее:


Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Здравствуйте уважаемые программисты! Помогите новичку в реализации индикатора, который бы по аллигатору рисовал зоны тренда как указано на рисунке. Привожу код индикатора который не могу доработать. Если зеленая линия пересекает синюю снизу вверх то рисуется зеленый квадрат, если наоборот то красный. В данном коде я это все описал, но индикатор не работает В чем ошибка? спасибо!
int k;
void init() {
}
void deinit() {
DeleteObjects();
Comment("");
}
void DeleteObjects() {
for (int i=0; i<=k; i++) {
ObjectDelete("n"+i);
ObjectDelete("n1"+i);
}
}
void start() {
int limit, i, counter;
double Range, AvgRange;
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
for(i = 0; i <= limit; i++) {
counter=i;
Range=0;
AvgRange=0;
for (counter=i ;counter<=i+9;counter++)
{
AvgRange=AvgRange+MathAbs(High[counter]-Low[counter]);
}
Range=AvgRange/10;
double jaw_blue_now=iAlligator(NULL,0,13,8,8,5,5,3,MODE_SMMA,PRICE_MEDIAN,MODE_GATORJAW,i);
double jaw_blue_pr=iAlligator(NULL,0,13,8,8,5,5,3,MODE_SMMA,PRICE_MEDIAN,MODE_GATORJAW,i+1);
double jaw_blue_af=iAlligator(NULL,0,13,8,8,5,5,3,MODE_SMMA,PRICE_MEDIAN,MODE_GATORJAW,i-1);
double jaw_green_now=iAlligator(NULL,0,13,8,8,5,5,3,MODE_SMMA,PRICE_MEDIAN,MODE_GATORLIPS,i);
double jaw_green_pr=iAlligator(NULL,0,13,8,8,5,5,3,MODE_SMMA,PRICE_MEDIAN,MODE_GATORLIPS,i+1);
double jaw_green_af=iAlligator(NULL,0,13,8,8,5,5,3,MODE_SMMA,PRICE_MEDIAN,MODE_GATORLIPS,i-1);
if ((jaw_green_now > jaw_blue_now) && (jaw_green_pr < jaw_blue_pr) && (jaw_green_af > jaw_blue_af)) //тренд вверх
{
k++;
ObjectCreate("n"+k, OBJ_RECTANGLE, 0, Time[i],0, Time[i-5],High[i]*2);
ObjectSet("n"+k, OBJPROP_STYLE, STYLE_SOLID);
ObjectSet("n"+k, OBJPROP_COLOR, Honeydew);
ObjectSet("n"+k, OBJPROP_BACK, True);
}
if (jaw_green_now > jaw_blue_now) //тренд вверх по ХМА
{
//ObjectSet("n"+k, OBJPROP_TIME1 , Time[i]);
//ObjectSet("n"+k, OBJPROP_PRICE1, 0);
ObjectSet("n"+k, OBJPROP_TIME2 , Time[i]);
ObjectSet("n"+k, OBJPROP_PRICE2, High[i]*2);
}
}
return(0);
}