Как добавить горизонтальную линию в окно индикатора?

 
Привет!! Столкнулся с такой проблемой: есть индикатор, нужно выставить несколько уровней. Но нужно их закрасить в разные цвета, поэтому
использую объекты - горизонтальные линии. Так вот никак их не могу создать из кода индикатора. Ниже код "индикатора" с попыткой создать
линию. Укажите где ошибка.
//+------------------------------------------------------------------+
//|                                                         j001.mq4 |
//|                                   Copyright © 2007, Antonuk Oleg |
//|                                                   banderass@i.ua |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, Antonuk Oleg"
#property link      "banderass@i.ua"
 
#property indicator_separate_window
#property indicator_minimum 0
#property indicator_maximum 100
#property indicator_buffers 1
#property indicator_color1 OrangeRed
//---- buffers
double ExtMapBuffer1[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,ExtMapBuffer1);
   
      ObjectCreate("level50",OBJ_HLINE,0,0,50.0);
      ObjectSet("level50",OBJPROP_COLOR,Green);
      ObjectSet("level50",OBJPROP_STYLE,STYLE_SOLID);
      ObjectSet("level50",OBJPROP_WIDTH,3);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
 
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
     int limit;
     int counted_bars=IndicatorCounted();
  //---- последний посчитанный бар будет пересчитан
     if(counted_bars>0) counted_bars--;
     limit=Bars-counted_bars;
  //---- основной цикл
     for(int i=0; i<limit; i++)
         ExtMapBuffer1[i]=MathRand()%101;   
 
//----
   return(0);
  }
//+------------------------------------------------------------------+
Файлы:
j001.mq4  3 kb
 
Посмотрите Специальные параметры, и, возможно, объекты создавать не понадобится.
 
Дело в том, что нет возможности задать индивидуальный цвет для каждого уровня, что мне и необходимо. Можно задать цвет только для всех уровней. Поэтому использую объекты.
 
У Вас ошибка в этом месте:

      ObjectCreate("level50",OBJ_HLINE,0,0,50.0);

Необходимо указывать не нулевой хэндл окна чарта, а хэндл подокна индикатора, который можно получить функцией WindowFind().
 
Спасибо, сейчас попробую.
 
Да, все работает.
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,ExtMapBuffer1);
   
   IndicatorShortName("justTest");
   
   int windowIndex=WindowFind("justTest");
   
   if(windowIndex<0)
   {
      MessageBox("Can\'t find window");
      return(0);
   }
   
      ObjectCreate("level50",OBJ_HLINE,windowIndex,0,50.0);
      ObjectSet("level50",OBJPROP_COLOR,Green);
      ObjectSet("level50",OBJPROP_STYLE,STYLE_SOLID);
      ObjectSet("level50",OBJPROP_WIDTH,3);
//----
   return(0);
  }