//+------------------------------------------------------------------+
//|                                   KG Range Calculator Slim.mq4   |
//|            Copyright © 2010, little modif by blewah & andros77   |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2010, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

#property indicator_chart_window
#property indicator_buffers 0

int nDigits;
double SD_Max_Range=3;
double SD_Min_Range=1;
int MODE_MA=0;
int PRICE_TYPE=0;
extern int y_distance=0;
extern int Corner=1;
extern bool ShowPrice=false;
extern bool Show_HRg=false;
extern color Warna_HRg=DarkBlue;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
   if (Show_HRg)
   {
   ObjectDelete ("HiddenR");
   ObjectCreate( "HiddenR", OBJ_LABEL, 0, 0, 0 );
   ObjectSetText("HiddenR","HRg",8, "Arial Bold", DarkKhaki);
   ObjectSet( "HiddenR", OBJPROP_CORNER, Corner );
   ObjectSet( "HiddenR", OBJPROP_XDISTANCE, 130 );
   ObjectSet( "HiddenR", OBJPROP_YDISTANCE, y_distance + 50 );
   }
   ObjectDelete ("Average");
   ObjectCreate( "Average", OBJ_LABEL, 0, 0, 0 );
   ObjectSetText("Average","Avg",8, "Arial Bold", DarkKhaki);
   ObjectSet( "Average", OBJPROP_CORNER, Corner );
   ObjectSet( "Average", OBJPROP_XDISTANCE, 105 );
   ObjectSet( "Average", OBJPROP_YDISTANCE, y_distance + 50 );
   
   ObjectDelete ("Current");
   ObjectCreate("Current", OBJ_LABEL, 0, 0, 0 );
   ObjectSetText("Current","Cur",8, "Arial Bold", DarkKhaki);
   ObjectSet("Current", OBJPROP_CORNER, Corner );
   ObjectSet("Current", OBJPROP_XDISTANCE, 80 );
   ObjectSet("Current", OBJPROP_YDISTANCE, y_distance + 50 );
   
   ObjectDelete ("Sd1_Range");
   ObjectCreate("Sd1_Range", OBJ_LABEL, 0, 0, 0 );
   ObjectSetText("Sd1_Range","SD1",8, "Arial Bold", DarkKhaki);
   ObjectSet("Sd1_Range", OBJPROP_CORNER, Corner );
   ObjectSet("Sd1_Range", OBJPROP_XDISTANCE, 55 );
   ObjectSet("Sd1_Range", OBJPROP_YDISTANCE, y_distance + 50 );
   
   ObjectDelete ("Sd3_Range");
   ObjectCreate("Sd3_Range", OBJ_LABEL, 0, 0, 0 );
   ObjectSetText("Sd3_Range","SD3",8, "Arial Bold", DarkKhaki);
   ObjectSet("Sd3_Range", OBJPROP_CORNER, Corner );
   ObjectSet("Sd3_Range", OBJPROP_XDISTANCE, 30 );
   ObjectSet("Sd3_Range", OBJPROP_YDISTANCE, y_distance + 50 );
   
   ObjectDelete ("Percentage_Range");
   ObjectCreate("Percentage_Range", OBJ_LABEL, 0, 0, 0 );
   ObjectSetText("Percentage_Range","%",8, "Arial Bold", DarkKhaki);
   ObjectSet("Percentage_Range", OBJPROP_CORNER, Corner );
   ObjectSet("Percentage_Range", OBJPROP_XDISTANCE, 5 );
   ObjectSet("Percentage_Range", OBJPROP_YDISTANCE, y_distance + 50 );
   
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
  ObjectDelete ("HiddenR");
  ObjectDelete("Average");
  ObjectDelete("Current");
  ObjectDelete("Sd3_Range"); 
  ObjectDelete("Sd1_Range");
  ObjectDelete("Percentage_Range");
  
  ObjectDelete("AvgMonthly");
  ObjectDelete("AvgWeekly");
  ObjectDelete("AvgDaily");
   
  ObjectDelete("CurrMonthly");
  ObjectDelete("CurrWeekly");
  ObjectDelete("CurrDaily");
  
  ObjectDelete("SD3_Monthly");
  ObjectDelete("SD3_Weekly");
  ObjectDelete("SD3_Daily");
  
  ObjectDelete("SD1_Monthly");
  ObjectDelete("SD1_Weekly");
  ObjectDelete("SD1_Daily");
  
  ObjectDelete("Percentage_Monthly");
  ObjectDelete("Percentage_Weekly");
  ObjectDelete("Percentage_Daily");
  
  ObjectDelete ("CurPrice");
  ObjectDelete ("HR_Daily");
  ObjectDelete ("HR_Weekly");
  ObjectDelete ("HR_Monthly");

  return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int    counted_bars=IndicatorCounted();
//----
   
   int limit=Bars-counted_bars;
   if(counted_bars>0) limit++;  
   
   
   double RAvg,RAvgd,RAvgw,RAvgm;
   double   SL_Long=0,SL_Short=0;
   double  Current_Daily_Range=0;
   double  Current_Weekly_Range=0;
   double  Current_Monthly_Range=0;
   double  Current_Daily_Hidden_Range=0;
   double  Current_Weekly_Hidden_Range=0;
   double  Current_Monthly_Hidden_Range=0;
   double   dlow0=0,dhigh0=0,wlow0=0,whigh0=0,mlow0=0,mhigh0=0;
   string   Text="";
   
   double dR1p=0,dR5p=0,dR10p=0,dR20p=0,RAvgp=0,RAvgdp=0,RAvgwp=0,RAvgmp=0;
   double wR1p=0,wR5p=0,wR10p=0,wR20p=0;
   double mR1p=0,mR5p=0,mR10p=0,mR20p=0;
   double R1p=0,R5p=0,R10p=0,R20p=0;
   
   double dR1,dR2,dR3,dR4,dR5,dR6,dR7,dR8,dR9,dR10,dR11,dR12,dR13,dR14,dR15,dR16,dR17,dR18,dR19,dR20;
   double wR1,wR2,wR3,wR4,wR5,wR6,wR7,wR8,wR9,wR10,wR11,wR12,wR13,wR14,wR15,wR16;
   double mR1,mR2,mR3,mR4,mR5,mR6,mR7,mR8,mR9,mR10,mR11,mR12;
   
   double dR1h,dR2h,dR3h,dR4h,dR5h,dR6h,dR7h,dR8h,dR9h,dR10h,dR11h,dR12h,dR13h,dR14h,dR15h,dR16h,dR17h,dR18h,dR19h,dR20h;
   double dR1l,dR2l,dR3l,dR4l,dR5l,dR6l,dR7l,dR8l,dR9l,dR10l,dR11l,dR12l,dR13l,dR14l,dR15l,dR16l,dR17l,dR18l,dR19l,dR20l;
   double wR1h,wR2h,wR3h,wR4h,wR5h,wR6h,wR7h,wR8h,wR9h,wR10h,wR11h,wR12h,wR13h,wR14h,wR15h,wR16h;
   double wR1l,wR2l,wR3l,wR4l,wR5l,wR6l,wR7l,wR8l,wR9l,wR10l,wR11l,wR12l,wR13l,wR14l,wR15l,wR16l;
   double mR1h,mR2h,mR3h,mR4h,mR5h,mR6h,mR7h,mR8h,mR9h,mR10h,mR11h,mR12h;
   double mR1l,mR2l,mR3l,mR4l,mR5l,mR6l,mR7l,mR8l,mR9l,mR10l,mR11l,mR12l;
   
   int i=0;

   double u1x5v, u1x8v, u1x13v, u1x21v, u1x34v;
   double u2x5v, u2x8v, u2x13v, u2x21v, u2x34v;
   double u3x5v, u3x8v, u3x13v, u3x21v, u3x34v;
   double u1acv, u2acv, u3acv;

   double d1x5v, d1x8v, d1x13v, d1x21v, d1x34v;
   double d2x5v, d2x8v, d2x13v, d2x21v, d2x34v;
   double d3x5v, d3x8v, d3x13v, d3x21v, d3x34v;
   double d1acv, d2acv, d3acv;

   double u1x5vd, u1x8vd, u1x13vd, u1x21vd, u1x34vd;
   double u2x5vd, u2x8vd, u2x13vd, u2x21vd, u2x34vd;
   double u3x5vd, u3x8vd, u3x13vd, u3x21vd, u3x34vd;
   double u1acvd, u2acvd, u3acvd;

   double d1x5vd, d1x8vd, d1x13vd, d1x21vd, d1x34vd;
   double d2x5vd, d2x8vd, d2x13vd, d2x21vd, d2x34vd;
   double d3x5vd, d3x8vd, d3x13vd, d3x21vd, d3x34vd;
   double d1acvd, d2acvd, d3acvd;

   double u1x5vw, u1x8vw, u1x13vw, u1x21vw, u1x34vw;
   double u2x5vw, u2x8vw, u2x13vw, u2x21vw, u2x34vw;
   double u3x5vw, u3x8vw, u3x13vw, u3x21vw, u3x34vw;
   double u1acvw, u2acvw, u3acvw;

   double d1x5vw, d1x8vw, d1x13vw, d1x21vw, d1x34vw;
   double d2x5vw, d2x8vw, d2x13vw, d2x21vw, d2x34vw;
   double d3x5vw, d3x8vw, d3x13vw, d3x21vw, d3x34vw;
   double d1acvw, d2acvw, d3acvw;

   //Daily range data
   dR1  = (iHigh(NULL,PERIOD_D1,1)-iLow(NULL,PERIOD_D1,1))/Point;
   dR2  = (iHigh(NULL,PERIOD_D1,2)-iLow(NULL,PERIOD_D1,2))/Point;
   dR3  = (iHigh(NULL,PERIOD_D1,3)-iLow(NULL,PERIOD_D1,3))/Point;
   dR4  = (iHigh(NULL,PERIOD_D1,4)-iLow(NULL,PERIOD_D1,4))/Point;
   dR5  = (iHigh(NULL,PERIOD_D1,5)-iLow(NULL,PERIOD_D1,5))/Point;         
   dR6  = (iHigh(NULL,PERIOD_D1,6)-iLow(NULL,PERIOD_D1,6))/Point;
   dR7  = (iHigh(NULL,PERIOD_D1,7)-iLow(NULL,PERIOD_D1,7))/Point;
   dR8  = (iHigh(NULL,PERIOD_D1,8)-iLow(NULL,PERIOD_D1,8))/Point;
   dR9  = (iHigh(NULL,PERIOD_D1,9)-iLow(NULL,PERIOD_D1,9))/Point;
   dR10 = (iHigh(NULL,PERIOD_D1,10)-iLow(NULL,PERIOD_D1,10))/Point;         
   dR11 = (iHigh(NULL,PERIOD_D1,11)-iLow(NULL,PERIOD_D1,11))/Point;
   dR12 = (iHigh(NULL,PERIOD_D1,12)-iLow(NULL,PERIOD_D1,12))/Point;
   dR13 = (iHigh(NULL,PERIOD_D1,13)-iLow(NULL,PERIOD_D1,13))/Point;
   dR14 = (iHigh(NULL,PERIOD_D1,14)-iLow(NULL,PERIOD_D1,14))/Point;
   dR15 = (iHigh(NULL,PERIOD_D1,15)-iLow(NULL,PERIOD_D1,15))/Point;         
   dR16 = (iHigh(NULL,PERIOD_D1,16)-iLow(NULL,PERIOD_D1,16))/Point;
   dR17 = (iHigh(NULL,PERIOD_D1,17)-iLow(NULL,PERIOD_D1,17))/Point;
   dR18 = (iHigh(NULL,PERIOD_D1,18)-iLow(NULL,PERIOD_D1,18))/Point;
   dR19 = (iHigh(NULL,PERIOD_D1,19)-iLow(NULL,PERIOD_D1,19))/Point;
   dR20 = (iHigh(NULL,PERIOD_D1,20)-iLow(NULL,PERIOD_D1,20))/Point;      
      
   //Weekly range data
   wR1  = (iHigh(NULL,PERIOD_W1,1)-iLow(NULL,PERIOD_W1,1))/Point;
   wR2  = (iHigh(NULL,PERIOD_W1,2)-iLow(NULL,PERIOD_W1,2))/Point;
   wR3  = (iHigh(NULL,PERIOD_W1,3)-iLow(NULL,PERIOD_W1,3))/Point;
   wR4  = (iHigh(NULL,PERIOD_W1,4)-iLow(NULL,PERIOD_W1,4))/Point;
   wR5  = (iHigh(NULL,PERIOD_W1,5)-iLow(NULL,PERIOD_W1,5))/Point;         
   wR6  = (iHigh(NULL,PERIOD_W1,6)-iLow(NULL,PERIOD_W1,6))/Point;
   wR7  = (iHigh(NULL,PERIOD_W1,7)-iLow(NULL,PERIOD_W1,7))/Point;
   wR8  = (iHigh(NULL,PERIOD_W1,8)-iLow(NULL,PERIOD_W1,8))/Point;
   wR9  = (iHigh(NULL,PERIOD_W1,9)-iLow(NULL,PERIOD_W1,9))/Point;
   wR10 = (iHigh(NULL,PERIOD_W1,10)-iLow(NULL,PERIOD_W1,10))/Point;         
   wR11 = (iHigh(NULL,PERIOD_W1,11)-iLow(NULL,PERIOD_W1,11))/Point;
   wR12 = (iHigh(NULL,PERIOD_W1,12)-iLow(NULL,PERIOD_W1,12))/Point;
   wR13 = (iHigh(NULL,PERIOD_W1,13)-iLow(NULL,PERIOD_W1,13))/Point;
   wR14 = (iHigh(NULL,PERIOD_W1,14)-iLow(NULL,PERIOD_W1,14))/Point;
   wR15 = (iHigh(NULL,PERIOD_W1,15)-iLow(NULL,PERIOD_W1,15))/Point;         
   wR16 = (iHigh(NULL,PERIOD_W1,16)-iLow(NULL,PERIOD_W1,16))/Point;
   
   //Monthly range data
   mR1  = (iHigh(NULL,PERIOD_MN1,1)-iLow(NULL,PERIOD_MN1,1))/Point;
   mR2  = (iHigh(NULL,PERIOD_MN1,2)-iLow(NULL,PERIOD_MN1,2))/Point;
   mR3  = (iHigh(NULL,PERIOD_MN1,3)-iLow(NULL,PERIOD_MN1,3))/Point;
   mR4  = (iHigh(NULL,PERIOD_MN1,4)-iLow(NULL,PERIOD_MN1,4))/Point;
   mR5  = (iHigh(NULL,PERIOD_MN1,5)-iLow(NULL,PERIOD_MN1,5))/Point;         
   mR6  = (iHigh(NULL,PERIOD_MN1,6)-iLow(NULL,PERIOD_MN1,6))/Point;
   mR7  = (iHigh(NULL,PERIOD_MN1,7)-iLow(NULL,PERIOD_MN1,7))/Point;
   mR8  = (iHigh(NULL,PERIOD_MN1,8)-iLow(NULL,PERIOD_MN1,8))/Point;
   mR9  = (iHigh(NULL,PERIOD_MN1,9)-iLow(NULL,PERIOD_MN1,9))/Point;
   mR10 = (iHigh(NULL,PERIOD_MN1,10)-iLow(NULL,PERIOD_MN1,10))/Point;         
   mR11 = (iHigh(NULL,PERIOD_MN1,11)-iLow(NULL,PERIOD_MN1,11))/Point;
   mR12 = (iHigh(NULL,PERIOD_MN1,12)-iLow(NULL,PERIOD_MN1,12))/Point;
   
   
   RAvgd=(dR1+dR2+dR3+dR4+dR5+dR6+dR7+dR8+dR9+dR10+dR11+dR12+dR13+dR14+dR15+dR16+dR17+dR18+dR19+dR20)/20;
   RAvgw=(wR1+wR2+wR3+wR4+wR5+wR6+wR7+wR8+wR9+wR10+wR11+wR12+wR13+wR14+wR15+wR16)/16;
   RAvgm=(mR1+mR2+mR3+mR4+mR5+mR6+mR7+mR8+mR9+mR10+mR11+mR12)/12;
   
   ObjectDelete ("AvgMonthly");
   ObjectCreate("AvgMonthly", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("AvgMonthly",DoubleToStr(RAvgm ,0),8, "Arial Bold", Aqua);
   ObjectSet("AvgMonthly", OBJPROP_CORNER, Corner);
   ObjectSet("AvgMonthly", OBJPROP_XDISTANCE, 105);
   ObjectSet("AvgMonthly", OBJPROP_YDISTANCE, y_distance + 15);
   
   ObjectDelete ("AvgWeekly");
   ObjectCreate("AvgWeekly", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("AvgWeekly",DoubleToStr(RAvgw ,0),8, "Arial Bold", Magenta);
   ObjectSet("AvgWeekly", OBJPROP_CORNER, Corner);
   ObjectSet("AvgWeekly", OBJPROP_XDISTANCE, 105);
   ObjectSet("AvgWeekly", OBJPROP_YDISTANCE, y_distance + 25);
   
   ObjectDelete ("AvgDaily");
   ObjectCreate("AvgDaily", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("AvgDaily",DoubleToStr(RAvgd ,0),8, "Arial Bold", Lime);
   ObjectSet("AvgDaily", OBJPROP_CORNER, Corner);
   ObjectSet("AvgDaily", OBJPROP_XDISTANCE, 105);
   ObjectSet("AvgDaily", OBJPROP_YDISTANCE, y_distance + 35);
   
   //Perhitungan Current Price
   
   
   dlow0  =  iLow(NULL,PERIOD_D1,0);
   dhigh0 =  iHigh(NULL,PERIOD_D1,0);
   Current_Daily_Range =(dhigh0-dlow0)/Point;
   if (iClose(NULL, PERIOD_D1,0)>(iHigh(NULL,PERIOD_D1,1) + iLow(NULL,PERIOD_D1,1))/2)
      {
      Current_Daily_Hidden_Range = (iHigh(NULL,PERIOD_D1,0)-(iHigh(NULL,PERIOD_D1,1)+iLow(NULL,PERIOD_D1,1))/2)/Point;
      }
      else
         {
         Current_Daily_Hidden_Range = ((iHigh(NULL,PERIOD_D1,1)+iLow(NULL,PERIOD_D1,1))/2-iLow(NULL,PERIOD_D1,0))/Point;
         }

   wlow0  =  iLow(NULL,PERIOD_W1,0);
   whigh0 =  iHigh(NULL,PERIOD_W1,0);
   Current_Weekly_Range =(whigh0-wlow0)/Point;
   if (iClose(NULL, PERIOD_W1,0)>(iHigh(NULL,PERIOD_W1,1) + iLow(NULL,PERIOD_W1,1))/2)
      {
      Current_Weekly_Hidden_Range = (iHigh(NULL,PERIOD_W1,0)-(iHigh(NULL,PERIOD_W1,1)+iLow(NULL,PERIOD_W1,1))/2)/Point;
      }
      else
         {
         Current_Weekly_Hidden_Range = ((iHigh(NULL,PERIOD_W1,1)+iLow(NULL,PERIOD_W1,1))/2-iLow(NULL,PERIOD_W1,0))/Point;
         }
   
   mlow0  =  iLow(NULL,PERIOD_MN1,0);
   mhigh0 =  iHigh(NULL,PERIOD_MN1,0);
   Current_Monthly_Range =(mhigh0-mlow0)/Point;
   if (iClose(NULL, PERIOD_MN1,0)>(iHigh(NULL,PERIOD_MN1,1) + iLow(NULL,PERIOD_MN1,1))/2)
      {
      Current_Monthly_Hidden_Range = (iHigh(NULL,PERIOD_MN1,0)-(iHigh(NULL,PERIOD_MN1,1)+iLow(NULL,PERIOD_MN1,1))/2)/Point;
      }
      else
         {
         Current_Monthly_Hidden_Range = ((iHigh(NULL,PERIOD_MN1,1)+iLow(NULL,PERIOD_MN1,1))/2-iLow(NULL,PERIOD_MN1,0))/Point;
         }
   
   
   ObjectDelete ("CurrMonthly");
   ObjectCreate("CurrMonthly", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("CurrMonthly",DoubleToStr(Current_Monthly_Range, 0),8, "Arial Bold", White);
   ObjectSet("CurrMonthly", OBJPROP_CORNER, Corner);
   ObjectSet("CurrMonthly", OBJPROP_XDISTANCE, 80);
   ObjectSet("CurrMonthly", OBJPROP_YDISTANCE, y_distance + 15);
   
   ObjectDelete ("CurrWeekly");
   ObjectCreate("CurrWeekly", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("CurrWeekly",DoubleToStr(Current_Weekly_Range, 0),8, "Arial Bold", White);
   ObjectSet("CurrWeekly", OBJPROP_CORNER, Corner);
   ObjectSet("CurrWeekly", OBJPROP_XDISTANCE, 80);
   ObjectSet("CurrWeekly", OBJPROP_YDISTANCE, y_distance + 25);
   
   ObjectDelete ("CurrDaily");
   ObjectCreate("CurrDaily", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("CurrDaily",DoubleToStr(Current_Daily_Range, 0),8, "Arial Bold", White);
   ObjectSet("CurrDaily", OBJPROP_CORNER, Corner);
   ObjectSet("CurrDaily", OBJPROP_XDISTANCE, 80);
   ObjectSet("CurrDaily", OBJPROP_YDISTANCE, y_distance + 35);
   
   //Prhitungan SD1 dan SD2
   double drangesq=MathPow((dR1-RAvgd),2)+MathPow((dR2-RAvgd),2)+MathPow((dR3-RAvgd),2)+MathPow((dR4-RAvgd),2)+MathPow((dR5-RAvgd),2)+
                   MathPow((dR6-RAvgd),2)+MathPow((dR7-RAvgd),2)+MathPow((dR8-RAvgd),2)+MathPow((dR9-RAvgd),2)+MathPow((dR10-RAvgd),2)+
                   MathPow((dR11-RAvgd),2)+MathPow((dR12-RAvgd),2)+MathPow((dR13-RAvgd),2)+MathPow((dR14-RAvgd),2)+MathPow((dR15-RAvgd),2)+
                   MathPow((dR16-RAvgd),2)+MathPow((dR17-RAvgd),2)+MathPow((dR18-RAvgd),2)+MathPow((dR19-RAvgd),2)+MathPow((dR20-RAvgd),2);
   
   double wrangesq=MathPow(wR1-RAvgw,2)+MathPow(wR2-RAvgw,2)+MathPow(wR3-RAvgw,2)+MathPow(wR4-RAvgw,2)+MathPow(wR5-RAvgw,2)+
                   MathPow(wR6-RAvgw,2)+MathPow(wR7-RAvgw,2)+MathPow(wR8-RAvgw,2)+MathPow(wR9-RAvgw,2)+MathPow(wR10-RAvgw,2)+
                   MathPow(wR11-RAvgw,2)+MathPow(wR12-RAvgw,2)+MathPow(wR13-RAvgw,2)+MathPow(wR14-RAvgw,2)+MathPow(wR15-RAvgw,2)+
                   MathPow(wR16-RAvgw,2);
                   
   double mrangesq=MathPow(mR1-RAvgm,2)+MathPow(mR2-RAvgm,2)+MathPow(mR3-RAvgm,2)+MathPow(mR4-RAvgm,2)+MathPow(mR5-RAvgm,2)+
                   MathPow(mR6-RAvgm,2)+MathPow(mR7-RAvgm,2)+MathPow(mR8-RAvgm,2)+MathPow(mR9-RAvgm,2)+MathPow(mR10-RAvgm,2)+
                   MathPow(mR11-RAvgm,2)+MathPow(mR12-RAvgm,2);
      
   double dSDRangemax=SD_Max_Range*MathSqrt(drangesq/20);
   double wSDRangemax=SD_Max_Range*MathSqrt(wrangesq/16);
   double mSDRangemax=SD_Max_Range*MathSqrt(mrangesq/12);
   
   double dSDRangemin=SD_Min_Range*MathSqrt(drangesq/20);
   double wSDRangemin=SD_Min_Range*MathSqrt(wrangesq/16);
   double mSDRangemin=SD_Min_Range*MathSqrt(mrangesq/12);
   
   double dmax = dSDRangemax;
   double dmin = dSDRangemin;
   double wmax = wSDRangemax;
   double wmin = wSDRangemin;
   double mmax = mSDRangemax;
   double mmin = mSDRangemin;
   
   if (dmin<0) dmin=0;
   if (wmin<0) wmin=0;
   if (mmin<0) mmin=0;
   
   ObjectDelete ("SD3_Monthly");
   ObjectCreate("SD3_Monthly", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("SD3_Monthly",DoubleToStr(mmax, 0),8, "Arial Bold", Green);
   ObjectSet("SD3_Monthly", OBJPROP_CORNER, Corner);
   ObjectSet("SD3_Monthly", OBJPROP_XDISTANCE, 30);
   ObjectSet("SD3_Monthly", OBJPROP_YDISTANCE, y_distance + 15);
   
   ObjectDelete ("SD3_Weekly");
   ObjectCreate("SD3_Weekly", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("SD3_Weekly",DoubleToStr(wmax, 0),8, "Arial Bold", Green);
   ObjectSet("SD3_Weekly", OBJPROP_CORNER, Corner);
   ObjectSet("SD3_Weekly", OBJPROP_XDISTANCE, 30);
   ObjectSet("SD3_Weekly", OBJPROP_YDISTANCE, y_distance + 25);
   
   ObjectDelete ("SD3_Daily");
   ObjectCreate("SD3_Daily", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("SD3_Daily",DoubleToStr(dmax, 0),8, "Arial Bold", Green);
   ObjectSet("SD3_Daily", OBJPROP_CORNER, Corner);
   ObjectSet("SD3_Daily", OBJPROP_XDISTANCE, 30);
   ObjectSet("SD3_Daily", OBJPROP_YDISTANCE, y_distance + 35);
   
   ObjectDelete ("SD1_Monthly");
   ObjectCreate("SD1_Monthly", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("SD1_Monthly",DoubleToStr(mmin, 0),8, "Arial Bold", HotPink);
   ObjectSet("SD1_Monthly", OBJPROP_CORNER, Corner);
   ObjectSet("SD1_Monthly", OBJPROP_XDISTANCE, 55);
   ObjectSet("SD1_Monthly", OBJPROP_YDISTANCE, y_distance + 15);
   
   ObjectDelete ("SD1_Weekly");
   ObjectCreate("SD1_Weekly", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("SD1_Weekly",DoubleToStr(wmin, 0),8, "Arial Bold", HotPink);
   ObjectSet("SD1_Weekly", OBJPROP_CORNER, Corner);
   ObjectSet("SD1_Weekly", OBJPROP_XDISTANCE, 55);
   ObjectSet("SD1_Weekly", OBJPROP_YDISTANCE, y_distance + 25);
   
   ObjectDelete ("SD1_Daily");
   ObjectCreate("SD1_Daily", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("SD1_Daily",DoubleToStr(dmin, 0),8, "Arial Bold", HotPink);
   ObjectSet("SD1_Daily", OBJPROP_CORNER, Corner);
   ObjectSet("SD1_Daily", OBJPROP_XDISTANCE, 55);
   ObjectSet("SD1_Daily", OBJPROP_YDISTANCE, y_distance + 35);
   
   //Percentage Calculations   

   //Daily Percentage data

   dR1h  = 100*(iHigh(NULL,PERIOD_D1,1)-iOpen(NULL,PERIOD_D1,1))/iOpen(NULL,PERIOD_D1,1);
   dR2h  = 100*(iHigh(NULL,PERIOD_D1,2)-iOpen(NULL,PERIOD_D1,2))/iOpen(NULL,PERIOD_D1,2);
   dR3h  = 100*(iHigh(NULL,PERIOD_D1,3)-iOpen(NULL,PERIOD_D1,3))/iOpen(NULL,PERIOD_D1,3);
   dR4h  = 100*(iHigh(NULL,PERIOD_D1,4)-iOpen(NULL,PERIOD_D1,4))/iOpen(NULL,PERIOD_D1,4);
   dR5h  = 100*(iHigh(NULL,PERIOD_D1,5)-iOpen(NULL,PERIOD_D1,5))/iOpen(NULL,PERIOD_D1,5);         
   dR6h  = 100*(iHigh(NULL,PERIOD_D1,6)-iOpen(NULL,PERIOD_D1,6))/iOpen(NULL,PERIOD_D1,6);
   dR7h  = 100*(iHigh(NULL,PERIOD_D1,7)-iOpen(NULL,PERIOD_D1,7))/iOpen(NULL,PERIOD_D1,7);
   dR8h  = 100*(iHigh(NULL,PERIOD_D1,8)-iOpen(NULL,PERIOD_D1,8))/iOpen(NULL,PERIOD_D1,8);
   dR9h  = 100*(iHigh(NULL,PERIOD_D1,9)-iOpen(NULL,PERIOD_D1,9))/iOpen(NULL,PERIOD_D1,9);
   dR10h = 100*(iHigh(NULL,PERIOD_D1,10)-iOpen(NULL,PERIOD_D1,10))/iOpen(NULL,PERIOD_D1,10);         
   dR11h = 100*(iHigh(NULL,PERIOD_D1,11)-iOpen(NULL,PERIOD_D1,11))/iOpen(NULL,PERIOD_D1,11);
   dR12h = 100*(iHigh(NULL,PERIOD_D1,12)-iOpen(NULL,PERIOD_D1,12))/iOpen(NULL,PERIOD_D1,12);
   dR13h = 100*(iHigh(NULL,PERIOD_D1,13)-iOpen(NULL,PERIOD_D1,13))/iOpen(NULL,PERIOD_D1,13);
   dR14h = 100*(iHigh(NULL,PERIOD_D1,14)-iOpen(NULL,PERIOD_D1,14))/iOpen(NULL,PERIOD_D1,14);
   dR15h = 100*(iHigh(NULL,PERIOD_D1,15)-iOpen(NULL,PERIOD_D1,15))/iOpen(NULL,PERIOD_D1,15);         
   dR16h = 100*(iHigh(NULL,PERIOD_D1,16)-iOpen(NULL,PERIOD_D1,16))/iOpen(NULL,PERIOD_D1,16);
   dR17h = 100*(iHigh(NULL,PERIOD_D1,17)-iOpen(NULL,PERIOD_D1,17))/iOpen(NULL,PERIOD_D1,17);
   dR18h = 100*(iHigh(NULL,PERIOD_D1,18)-iOpen(NULL,PERIOD_D1,18))/iOpen(NULL,PERIOD_D1,18);
   dR19h = 100*(iHigh(NULL,PERIOD_D1,19)-iOpen(NULL,PERIOD_D1,19))/iOpen(NULL,PERIOD_D1,19);
   dR20h = 100*(iHigh(NULL,PERIOD_D1,20)-iOpen(NULL,PERIOD_D1,20))/iOpen(NULL,PERIOD_D1,20);        

   dR1l  = 100*(iOpen(NULL,PERIOD_D1,1)-iLow(NULL,PERIOD_D1,1))/iOpen(NULL,PERIOD_D1,1);
   dR2l  = 100*(iOpen(NULL,PERIOD_D1,2)-iLow(NULL,PERIOD_D1,2))/iOpen(NULL,PERIOD_D1,2);
   dR3l  = 100*(iOpen(NULL,PERIOD_D1,3)-iLow(NULL,PERIOD_D1,3))/iOpen(NULL,PERIOD_D1,3);
   dR4l  = 100*(iOpen(NULL,PERIOD_D1,4)-iLow(NULL,PERIOD_D1,4))/iOpen(NULL,PERIOD_D1,4);
   dR5l  = 100*(iOpen(NULL,PERIOD_D1,5)-iLow(NULL,PERIOD_D1,5))/iOpen(NULL,PERIOD_D1,5);         
   dR6l  = 100*(iOpen(NULL,PERIOD_D1,6)-iLow(NULL,PERIOD_D1,6))/iOpen(NULL,PERIOD_D1,6);
   dR7l  = 100*(iOpen(NULL,PERIOD_D1,7)-iLow(NULL,PERIOD_D1,7))/iOpen(NULL,PERIOD_D1,7);
   dR8l  = 100*(iOpen(NULL,PERIOD_D1,8)-iLow(NULL,PERIOD_D1,8))/iOpen(NULL,PERIOD_D1,8);
   dR9l  = 100*(iOpen(NULL,PERIOD_D1,9)-iLow(NULL,PERIOD_D1,9))/iOpen(NULL,PERIOD_D1,9);
   dR10l = 100*(iOpen(NULL,PERIOD_D1,10)-iLow(NULL,PERIOD_D1,10))/iOpen(NULL,PERIOD_D1,10);         
   dR11l = 100*(iOpen(NULL,PERIOD_D1,11)-iLow(NULL,PERIOD_D1,11))/iOpen(NULL,PERIOD_D1,11);
   dR12l = 100*(iOpen(NULL,PERIOD_D1,12)-iLow(NULL,PERIOD_D1,12))/iOpen(NULL,PERIOD_D1,12);
   dR13l = 100*(iOpen(NULL,PERIOD_D1,13)-iLow(NULL,PERIOD_D1,13))/iOpen(NULL,PERIOD_D1,13);
   dR14l = 100*(iOpen(NULL,PERIOD_D1,14)-iLow(NULL,PERIOD_D1,14))/iOpen(NULL,PERIOD_D1,14);
   dR15l = 100*(iOpen(NULL,PERIOD_D1,15)-iLow(NULL,PERIOD_D1,15))/iOpen(NULL,PERIOD_D1,15);         
   dR16l = 100*(iOpen(NULL,PERIOD_D1,16)-iLow(NULL,PERIOD_D1,16))/iOpen(NULL,PERIOD_D1,16);
   dR17l = 100*(iOpen(NULL,PERIOD_D1,17)-iLow(NULL,PERIOD_D1,17))/iOpen(NULL,PERIOD_D1,17);
   dR18l = 100*(iOpen(NULL,PERIOD_D1,18)-iLow(NULL,PERIOD_D1,18))/iOpen(NULL,PERIOD_D1,18);
   dR19l = 100*(iOpen(NULL,PERIOD_D1,19)-iLow(NULL,PERIOD_D1,19))/iOpen(NULL,PERIOD_D1,19);
   dR20l = 100*(iOpen(NULL,PERIOD_D1,20)-iLow(NULL,PERIOD_D1,20))/iOpen(NULL,PERIOD_D1,20);      
   
   //Weekly Percentage data

   wR1h  = 100*(iHigh(NULL,PERIOD_W1,1)-iOpen(NULL,PERIOD_W1,1))/iOpen(NULL,PERIOD_W1,1);
   wR2h  = 100*(iHigh(NULL,PERIOD_W1,2)-iOpen(NULL,PERIOD_W1,2))/iOpen(NULL,PERIOD_W1,2);
   wR3h  = 100*(iHigh(NULL,PERIOD_W1,3)-iOpen(NULL,PERIOD_W1,3))/iOpen(NULL,PERIOD_W1,3);
   wR4h  = 100*(iHigh(NULL,PERIOD_W1,4)-iOpen(NULL,PERIOD_W1,4))/iOpen(NULL,PERIOD_W1,4);
   wR5h  = 100*(iHigh(NULL,PERIOD_W1,5)-iOpen(NULL,PERIOD_W1,5))/iOpen(NULL,PERIOD_W1,5);         
   wR6h  = 100*(iHigh(NULL,PERIOD_W1,6)-iOpen(NULL,PERIOD_W1,6))/iOpen(NULL,PERIOD_W1,6);
   wR7h  = 100*(iHigh(NULL,PERIOD_W1,7)-iOpen(NULL,PERIOD_W1,7))/iOpen(NULL,PERIOD_W1,7);
   wR8h  = 100*(iHigh(NULL,PERIOD_W1,8)-iOpen(NULL,PERIOD_W1,8))/iOpen(NULL,PERIOD_W1,8);
   wR9h  = 100*(iHigh(NULL,PERIOD_W1,9)-iOpen(NULL,PERIOD_W1,9))/iOpen(NULL,PERIOD_W1,9);
   wR10h = 100*(iHigh(NULL,PERIOD_W1,10)-iOpen(NULL,PERIOD_W1,10))/iOpen(NULL,PERIOD_W1,10);         
   wR11h = 100*(iHigh(NULL,PERIOD_W1,11)-iOpen(NULL,PERIOD_W1,11))/iOpen(NULL,PERIOD_W1,11);
   wR12h = 100*(iHigh(NULL,PERIOD_W1,12)-iOpen(NULL,PERIOD_W1,12))/iOpen(NULL,PERIOD_W1,12);
   wR13h = 100*(iHigh(NULL,PERIOD_W1,13)-iOpen(NULL,PERIOD_W1,13))/iOpen(NULL,PERIOD_W1,13);
   wR14h = 100*(iHigh(NULL,PERIOD_W1,14)-iOpen(NULL,PERIOD_W1,14))/iOpen(NULL,PERIOD_W1,14);
   wR15h = 100*(iHigh(NULL,PERIOD_W1,15)-iOpen(NULL,PERIOD_W1,15))/iOpen(NULL,PERIOD_W1,15);         
   wR16h = 100*(iHigh(NULL,PERIOD_W1,16)-iOpen(NULL,PERIOD_W1,16))/iOpen(NULL,PERIOD_W1,16);
   
   wR1l  = 100*(iOpen(NULL,PERIOD_W1,1)-iLow(NULL,PERIOD_W1,1))/iOpen(NULL,PERIOD_W1,1);
   wR2l  = 100*(iOpen(NULL,PERIOD_W1,2)-iLow(NULL,PERIOD_W1,2))/iOpen(NULL,PERIOD_W1,2);
   wR3l  = 100*(iOpen(NULL,PERIOD_W1,3)-iLow(NULL,PERIOD_W1,3))/iOpen(NULL,PERIOD_W1,3);
   wR4l  = 100*(iOpen(NULL,PERIOD_W1,4)-iLow(NULL,PERIOD_W1,4))/iOpen(NULL,PERIOD_W1,4);
   wR5l  = 100*(iOpen(NULL,PERIOD_W1,5)-iLow(NULL,PERIOD_W1,5))/iOpen(NULL,PERIOD_W1,5);         
   wR6l  = 100*(iOpen(NULL,PERIOD_W1,6)-iLow(NULL,PERIOD_W1,6))/iOpen(NULL,PERIOD_W1,6);
   wR7l  = 100*(iOpen(NULL,PERIOD_W1,7)-iLow(NULL,PERIOD_W1,7))/iOpen(NULL,PERIOD_W1,7);
   wR8l  = 100*(iOpen(NULL,PERIOD_W1,8)-iLow(NULL,PERIOD_W1,8))/iOpen(NULL,PERIOD_W1,8);
   wR9l  = 100*(iOpen(NULL,PERIOD_W1,9)-iLow(NULL,PERIOD_W1,9))/iOpen(NULL,PERIOD_W1,9);
   wR10l = 100*(iOpen(NULL,PERIOD_W1,10)-iLow(NULL,PERIOD_W1,10))/iOpen(NULL,PERIOD_W1,10);         
   wR11l = 100*(iOpen(NULL,PERIOD_W1,11)-iLow(NULL,PERIOD_W1,11))/iOpen(NULL,PERIOD_W1,11);
   wR12l = 100*(iOpen(NULL,PERIOD_W1,12)-iLow(NULL,PERIOD_W1,12))/iOpen(NULL,PERIOD_W1,12);
   wR13l = 100*(iOpen(NULL,PERIOD_W1,13)-iLow(NULL,PERIOD_W1,13))/iOpen(NULL,PERIOD_W1,13);
   wR14l = 100*(iOpen(NULL,PERIOD_W1,14)-iLow(NULL,PERIOD_W1,14))/iOpen(NULL,PERIOD_W1,14);
   wR15l = 100*(iOpen(NULL,PERIOD_W1,15)-iLow(NULL,PERIOD_W1,15))/iOpen(NULL,PERIOD_W1,15);         
   wR16l = 100*(iOpen(NULL,PERIOD_W1,16)-iLow(NULL,PERIOD_W1,16))/iOpen(NULL,PERIOD_W1,16);
       
      
   //Monthly Percentage data

   mR1h  = 100*(iHigh(NULL,PERIOD_MN1,1)-iOpen(NULL,PERIOD_MN1,1))/iOpen(NULL,PERIOD_MN1,1);
   mR2h  = 100*(iHigh(NULL,PERIOD_MN1,2)-iOpen(NULL,PERIOD_MN1,2))/iOpen(NULL,PERIOD_MN1,2);
   mR3h  = 100*(iHigh(NULL,PERIOD_MN1,3)-iOpen(NULL,PERIOD_MN1,3))/iOpen(NULL,PERIOD_MN1,3);
   mR4h  = 100*(iHigh(NULL,PERIOD_MN1,4)-iOpen(NULL,PERIOD_MN1,4))/iOpen(NULL,PERIOD_MN1,4);
   mR5h  = 100*(iHigh(NULL,PERIOD_MN1,5)-iOpen(NULL,PERIOD_MN1,5))/iOpen(NULL,PERIOD_MN1,5);         
   mR6h  = 100*(iHigh(NULL,PERIOD_MN1,6)-iOpen(NULL,PERIOD_MN1,6))/iOpen(NULL,PERIOD_MN1,6);
   mR7h  = 100*(iHigh(NULL,PERIOD_MN1,7)-iOpen(NULL,PERIOD_MN1,7))/iOpen(NULL,PERIOD_MN1,7);
   mR8h  = 100*(iHigh(NULL,PERIOD_MN1,8)-iOpen(NULL,PERIOD_MN1,8))/iOpen(NULL,PERIOD_MN1,8);
   mR9h  = 100*(iHigh(NULL,PERIOD_MN1,9)-iOpen(NULL,PERIOD_MN1,9))/iOpen(NULL,PERIOD_MN1,9);
   mR10h = 100*(iHigh(NULL,PERIOD_MN1,10)-iOpen(NULL,PERIOD_MN1,10))/iOpen(NULL,PERIOD_MN1,10);         
   mR11h = 100*(iHigh(NULL,PERIOD_MN1,11)-iOpen(NULL,PERIOD_MN1,11))/iOpen(NULL,PERIOD_MN1,11);
   mR12h = 100*(iHigh(NULL,PERIOD_MN1,12)-iOpen(NULL,PERIOD_MN1,12))/iOpen(NULL,PERIOD_MN1,12);
   
   mR1l  = 100*(iOpen(NULL,PERIOD_MN1,1)-iLow(NULL,PERIOD_MN1,1))/iOpen(NULL,PERIOD_MN1,1);
   mR2l  = 100*(iOpen(NULL,PERIOD_MN1,2)-iLow(NULL,PERIOD_MN1,2))/iOpen(NULL,PERIOD_MN1,2);
   mR3l  = 100*(iOpen(NULL,PERIOD_MN1,3)-iLow(NULL,PERIOD_MN1,3))/iOpen(NULL,PERIOD_MN1,3);
   mR4l  = 100*(iOpen(NULL,PERIOD_MN1,4)-iLow(NULL,PERIOD_MN1,4))/iOpen(NULL,PERIOD_MN1,4);
   mR5l  = 100*(iOpen(NULL,PERIOD_MN1,5)-iLow(NULL,PERIOD_MN1,5))/iOpen(NULL,PERIOD_MN1,5);         
   mR6l  = 100*(iOpen(NULL,PERIOD_MN1,6)-iLow(NULL,PERIOD_MN1,6))/iOpen(NULL,PERIOD_MN1,6);
   mR7l  = 100*(iOpen(NULL,PERIOD_MN1,7)-iLow(NULL,PERIOD_MN1,7))/iOpen(NULL,PERIOD_MN1,7);
   mR8l  = 100*(iOpen(NULL,PERIOD_MN1,8)-iLow(NULL,PERIOD_MN1,8))/iOpen(NULL,PERIOD_MN1,8);
   mR9l  = 100*(iOpen(NULL,PERIOD_MN1,9)-iLow(NULL,PERIOD_MN1,9))/iOpen(NULL,PERIOD_MN1,9);
   mR10l = 100*(iOpen(NULL,PERIOD_MN1,10)-iLow(NULL,PERIOD_MN1,10))/iOpen(NULL,PERIOD_MN1,10);         
   mR11l = 100*(iOpen(NULL,PERIOD_MN1,11)-iLow(NULL,PERIOD_MN1,11))/iOpen(NULL,PERIOD_MN1,11);
   mR12l = 100*(iOpen(NULL,PERIOD_MN1,12)-iLow(NULL,PERIOD_MN1,12))/iOpen(NULL,PERIOD_MN1,12);
   
   RAvgdp=(Current_Daily_Range/RAvgd)*100;//(dR1h+dR2h+dR3h+dR4h+dR5h+dR6h+dR7h+dR8h+dR9h+dR10h+dR11h+dR12h+dR13h+dR14h+dR15h+dR16h+dR17h+dR18h+dR19h+dR20h+
           //dR1l+dR2l+dR3l+dR4l+dR5l+dR6l+dR7l+dR8l+dR9l+dR10l+dR11l+dR12l+dR13l+dR14l+dR15l+dR16l+dR17l+dR18l+dR19l+dR20l)/40;
   RAvgwp=(Current_Weekly_Range/RAvgw)*100;//(wR1h+wR2h+wR3h+wR4h+wR5h+wR6h+wR7h+wR8h+wR9h+wR10h+wR11h+wR12h+wR13h+wR14h+wR15h+wR16h+
           //wR1l+wR2l+wR3l+wR4l+wR5l+wR6l+wR7l+wR8l+wR9l+wR10l+wR11l+wR12l+wR13l+wR14l+wR15l+wR16l)/32;
   RAvgmp=(Current_Monthly_Range/RAvgm)*100;//(mR1h+mR2h+mR3h+mR4h+mR5h+mR6h+mR7h+mR8h+mR9h+mR10h+mR11h+mR12h+
           //mR1l+mR2l+mR3l+mR4l+mR5l+mR6l+mR7l+mR8l+mR9l+mR10l+mR11l+mR12l)/24;
           
   string P=Period();
   
   ObjectDelete ("Percentage_Monthly");
   ObjectCreate("Percentage_Monthly", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("Percentage_Monthly",DoubleToStr(RAvgmp, 0),8, "Arial Bold", Red);
   ObjectSet("Percentage_Monthly", OBJPROP_CORNER, Corner);
   ObjectSet("Percentage_Monthly", OBJPROP_XDISTANCE, 5);
   ObjectSet("Percentage_Monthly", OBJPROP_YDISTANCE, y_distance + 15);
   
   ObjectDelete ("Percentage_Weekly");
   ObjectCreate("Percentage_Weekly", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("Percentage_Weekly",DoubleToStr(RAvgwp, 0),8, "Arial Bold", Red);
   ObjectSet("Percentage_Weekly", OBJPROP_CORNER, Corner);
   ObjectSet("Percentage_Weekly", OBJPROP_XDISTANCE, 5);
   ObjectSet("Percentage_Weekly", OBJPROP_YDISTANCE, y_distance + 25);
   
   ObjectDelete ("Percentage_Daily");
   ObjectCreate("Percentage_Daily", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("Percentage_Daily",DoubleToStr(RAvgdp, 0),8, "Arial Bold", Red);
   ObjectSet("Percentage_Daily", OBJPROP_CORNER, Corner);
   ObjectSet("Percentage_Daily", OBJPROP_XDISTANCE, 5);
   ObjectSet("Percentage_Daily", OBJPROP_YDISTANCE, y_distance + 35);
   
   //Tambahan Wongangon ben tambah moncrot otak-e .... XD

   //double dHL     = (iHigh(NULL,PERIOD_D1,1)+iLow(NULL,PERIOD_D1,1))/2;
   double Price1  = iMA(Symbol(),0,1,0,MODE_EMA,PRICE_CLOSE,0);   
   if (ShowPrice)
   {
   string PRC1    = DoubleToStr(Price1,Digits);
   ObjectDelete ("CurPrice");
   ObjectCreate("CurPrice", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("CurPrice",PRC1,24, "Arial Bold", DodgerBlue);
   ObjectSet("CurPrice", OBJPROP_CORNER, Corner);
   ObjectSet("CurPrice", OBJPROP_XDISTANCE, 5);
   ObjectSet("CurPrice", OBJPROP_YDISTANCE, y_distance + 60);
   }
   if (Show_HRg)
   {
   ObjectDelete ("HR_Daily");
   ObjectCreate("HR_Daily", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("HR_Daily",DoubleToStr(Current_Daily_Hidden_Range,0),8, "Arial Bold", Warna_HRg);
   ObjectSet("HR_Daily", OBJPROP_CORNER, Corner);
   ObjectSet("HR_Daily", OBJPROP_XDISTANCE, 130);
   ObjectSet("HR_Daily", OBJPROP_YDISTANCE, y_distance + 35);
   
   //double wHL     = (iHigh(NULL,PERIOD_W1,1)+iLow(NULL,PERIOD_W1,1))/2;
   ObjectDelete ("HR_Weekly");
   ObjectCreate("HR_Weekly", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("HR_Weekly",DoubleToStr(Current_Weekly_Hidden_Range,0),8, "Arial Bold", Warna_HRg);
   ObjectSet("HR_Weekly", OBJPROP_CORNER, Corner);
   ObjectSet("HR_Weekly", OBJPROP_XDISTANCE, 130);
   ObjectSet("HR_Weekly", OBJPROP_YDISTANCE, y_distance + 25);
   
   //double mHL     = (iHigh(NULL,PERIOD_MN1,1)+iLow(NULL,PERIOD_MN1,1))/2;
   ObjectDelete ("HR_Monthly");
   ObjectCreate("HR_Monthly", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("HR_Monthly",DoubleToStr(Current_Monthly_Hidden_Range,0),8, "Arial Bold", Warna_HRg);
   ObjectSet("HR_Monthly", OBJPROP_CORNER, Corner);
   ObjectSet("HR_Monthly", OBJPROP_XDISTANCE, 130);
   ObjectSet("HR_Monthly", OBJPROP_YDISTANCE, y_distance + 15);
   }

   //End Tambahan Wongangon
   
   return(0);
  }
//+------------------------------------------------------------------+