wajdyss_information_indicator_v1





//+------------------------------------------------------------------+
//|                                                    wajdi avg.mq4 |
//|                                           Copyright 2007 Wajdyss |
//|                                              wajdyss@hotmail.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2007 Wajdyss"
#property link      "wajdyss@hotmail.com"

#property indicator_chart_window
extern int days=360;
extern int TextSize=14;
 extern color TextColor1=Black;
 extern color TextColor2=Red;
 extern color TextColor3=Blue;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
//----

   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
Comment("");
 ObjectDelete("a label");
 ObjectDelete("b label");
 ObjectDelete("c label");
 ObjectDelete("d label");
 ObjectDelete("e label");
//----
   
//----
 
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
  // a
          if(ObjectFind("a label") != 0)
   {
      ObjectCreate("a label", OBJ_LABEL, 0,0,0);
      ObjectSetText("a label","ÈÓã Çááå ÇáÑÍãä ÇáÑÍíã" , TextSize, "Arial", TextColor1);
      ObjectSet("a label", OBJPROP_XDISTANCE,350);
     ObjectSet("a label", OBJPROP_YDISTANCE,0);
   }
   else
   {
   ObjectMove("a label", 0,  0,0);
   }
   
   //b
      if(ObjectFind("b label") != 0)
   {
      ObjectCreate("b label", OBJ_LABEL, 0,0,0);
      ObjectSetText("b label","wajdyss information indicator"  , TextSize, "Arial", TextColor2);
      ObjectSet("b label", OBJPROP_XDISTANCE,305);
     ObjectSet("b label", OBJPROP_YDISTANCE,25);
   }
   else
   {
   ObjectMove("b label", 0,  0,0);
   }
   
   // c

   
      if(ObjectFind("c label") != 0)
   {
      ObjectCreate("c label", OBJ_LABEL, 0,0,0);
      ObjectSetText("c label","wajdyss@yahoo.com"  , TextSize, "Arial", TextColor3);
      ObjectSet("c label", OBJPROP_XDISTANCE,335);
     ObjectSet("c label", OBJPROP_YDISTANCE,50);
   }
   else
   {
   ObjectMove("c label", 0,  0,0);
   }
  
//----
   
//----
//int    counted_bars=IndicatorCounted();
   double up , down , sigmaup=0 , sigmadown=0 ,sigmaup2=0 , sigmadown2=0 , moreup , moredown , lessup , lessdown , upclose , downclose , upp , downp,upp2 ;
   int daysup=0 , daysdown=0 , daysup2=0 , daysdown2=0 ;
   int avgup,avgdown , avg , avgupclose , avgdownclose , same=0 , notsame=0;
   string trend;
   moreup=0;
   moredown=0;
   lessup=9999999999;
   lessdown=9999999999;
   for (int i=days;i>=1;i--) 
   {
   up=(iHigh(Symbol(),NULL, i)-iOpen(Symbol(),NULL, i))/Point;
   down=(iOpen(Symbol(),NULL, i)-iLow(Symbol(),NULL, i))/Point;
   upclose=(iClose(Symbol(),NULL,i)-iOpen(Symbol(),NULL, i))/Point;
   downclose=(iOpen(Symbol(),NULL, i)-iClose(Symbol(),NULL,i))/Point;
   if (up >0) 
   {
   //daysup++;
   if (up > moreup) {moreup=up;}
   if (up < lessup) lessup=up;
   }

   if (down>0)
    {
   //daysdown++;
   if (down > moredown) moredown=down;
   if (down < lessdown) lessdown=down; 
   }

    if (upclose >0) 
   {
   daysup2++;
   sigmaup=sigmaup+up; 
   sigmaup2=sigmaup2+upclose;
    // if (up > moreup) {moreup=up;}
   //if (up < lessup) lessup=up;
   }

   if (downclose>0)
    {
   daysdown2++;
   sigmadown=sigmadown+down;   
   sigmadown2=sigmadown2+downclose;   
   //if (down > moredown) moredown=down;
   //if (down < lessdown) lessdown=down; 
   }
   if ((iClose(Symbol(),NULL,i+1)>iOpen(Symbol(),NULL,i+1) && iClose(Symbol(),NULL,i)>iOpen(Symbol(),NULL,i)) || (iClose(Symbol(),NULL,i+1)<iOpen(Symbol(),NULL,i+1) && iClose(Symbol(),NULL,i)<iOpen(Symbol(),NULL,i)) )
   
         same++;
    else notsame++;
    
   }
   avgup= sigmaup/daysup2;
   avgdown= sigmadown/daysdown2;
   avg=avgup+avgdown;
   avgupclose=sigmaup2/daysup2;
   avgdownclose=sigmadown2/daysdown2;
   upp2=same+notsame;
   upp=same/upp2;
   downp=notsame/upp2;
   if (Open[daysup2+daysdown2]<Close[0]) trend="ÊÑäÏ ÕÇÚÏ"; else trend="ÊÑäÏ åÇÈØ";
   Comment ("\n" , "ÈÓã Çááå Ç áÑÍãä ÇáÑÍíã" , "\n" , "wajdyss ÇÍÕÇÆíÉ" ,"\n","\n" ,
  "ÚÏÏ ÇáÔãÚÇÊ ÇáÕÇÚÏÉ =" , daysup2 ,"\n","ãÊæÓØ ÇáåÇí ááÔãÚÇÊ ÇáÕÇÚÏÉ =" ,avgup,"\n", "ãÊæÓØ äÞÇØ ÇáÔãÚÇÊ ÇáÕÇÚÏÉ =",avgupclose,
   "\n"  , "ÃßËÑ ÚÏÏ äÞÇØ ÕÚæÏÇð =" , moreup ,
   "\n" ,"\n","ÚÏÏ ÇáÔãÚÇÊ ÇáåÇÈØÉ =",daysdown2,"\n","ãÊæÓØ Çááæ ááÔãÚÇÊ ÇáåÇÈØÉ =",avgdown,"\n","ãÊæÓØ äÞÇØ ÇáÔãÚÇÊ ÇáåÇÈØÉ =",
   avgdownclose,"\n","ÃßËÑ ÚÏÏ äÞÇØ åÈæØÇð =" , moredown,"\n","\n", "ãÚÏá ÍÑßÉ ÇáÒæÌ =" ,
    avg,"\n","\n","ÇáÓÚÑ ÇáÓÇÈÞ =",Open[daysup2+daysdown2],"\n","ÇáÓÚÑ ÇáÍÇáí =",Close[0],"\n",trend,"\n","\n","ÚÏÏ ÇáÔãÚÇÊ ÇáãÊÔÇÈåÉ =",
    same,"\n","ÇáäÓÈÉ =",upp,"\n","ÚÏÏ ÇáÔãÚÇÊ ÇáãÎÊáÝÉ =",notsame,"\n","ÇáäÓÈÉ =",downp,"\n","\n","spread = ", MarketInfo(Symbol(),MODE_SPREAD) )  ;
  // ObjectSetText( "gmtl", avgup , 40, "Arial", Green );
   return(0);
  }
//+------------------------------------------------------------------+



Sample





Analysis



Market Information Used:

Series array that contains the highest prices of each bar
Series array that contains open prices of each bar
Series array that contains the lowest prices of each bar
Series array that contains close prices for each bar


Indicator Curves created:


Indicators Used:



Custom Indicators Used:

Order Management characteristics:

Other Features: