Индикатор размера свечи

 

Доброго времени всем!

Друзья, взял я уже готовый код показывающий размер свечи в ПУНКТАХ от одного края тени до другого. Немного подправил, но не все. Просто не знаю как сделать так что бы направление свечи тоже определялось автоматически. Сейчас корректно показывает только тени медвежьих свеч.


Нужно что бы индикатор показывал размеры: тела свечи / размер верхней тени / размер нижней тени / размер тела формирующейся свечи


Нужно что бы работало так:

Вывод информации в таком виде: BarSize:  Bar="Размер тела свечи" | Up="Размер верхней тени свечи" | Down="Размер нижней тени свечи"| NewBar (Размер тела формирующейся свечи)"


В настройках:
Выделить цветом свечи размер тела которых <= "Значение выставляется" (Размеры выставляются до десятых. Например" 2,2 пункта)

Выделить медвежьи свечи у которых верхняя тень >= "Значение выставляется"   (Над свечей появляется красная надпись "Тень". Размеры выставляются до десятых. Например" 2,2 пункта)
Выделить бычьи свечи у которых нижняя тень >= "Значение выставляется"  (Над свечей появляется зеленая надпись "Тень". Размеры выставляются до десятых. Например" 2,2 пункта)


БОГИ КОДА И ПРОГРАММИРОВАНИЯ ПОМОГИТЕ ПЛИЗ!


int start()

{


   //Time to bar expiry

  int m,s;


  m=Time[0]+Period()*60-CurTime();

  s=m%60;

  m=(m-s)/60;

  int spread=MarketInfo(Symbol(), MODE_SPREAD);


  string _sp="",_m="",_s="";

  if (spread<10) _sp="..";

  else if (spread<100) _sp=".";

  if (m<10) _m="0";

  if (s<10) _s="0";

  

  ObjectSetText(objname, "  BarSize:  Bar="+MathAbs((iOpen(NULL,0,1)-iClose(NULL,0,1))/Point)+" | Up="+MathAbs((iHigh(NULL,0,1)-iOpen(NULL,0,1))/Point)+" | Down="+MathAbs((iLow(NULL,0,1)-iClose(NULL,0,1))/Point)+"| NewBar ("+MathAbs((iOpen(NULL,0,0)-iClose(NULL,0,0))/Point)+")", 10, "Verdana", Clock_Color);

  return(0);


 }

 
   double o=iOpen(NULL,0,1);
   double h=iHigh(NULL,0,1);   
   double l=iLow(NULL,0,1);     
   double c=iClose(NULL,0,1);
   
   double bh=MathMax(o,c);
   double bl=MathMin(o,c);
   
   double BodySize=(bh-bl)/Point;
   double UpperShadow=(h-bh)/Point;
   double LowerShadow=(bl-l)/Point;
 
Dmitry Fedoseev:
Дмирий, огромное благодарю!!! Буду признателен! Чем могу быть обязан?
 
APavlik:
Дмирий, огромное благодарю!!! Буду признателен! Чем могу быть обязан?

Спасибо, ничего не надо.

 
Добрый день! Пожалуйста поделитесь вашим готовым индикатором, если можете. Заранее благодарен!