#OTCFX_MA_PRICEv1





//+------------------------------------------------------------------+ 
//|   #OTCFX_MA_INFO                                             
//|   Copyright © 2008, "OTCFX"                                                            
//|   
//|                                                                
//|                                   
//+------------------------------------------------------------------+ 

#property  copyright "Copyright © 2004, MetaQuotes Software Corp."
#property  link      "http://www.metaquotes.net/"
//---- indicator settings
#property  indicator_separate_window
//---- indicator parameters
extern int  MAPeriod  = 200;  
extern int MAMethod=0;                        
extern int MAPrice=0;
extern int  TimeFrame  = 0;
int nDigits; int FastEMA=1;
//double     SignalBuffer[];
//double    MA0[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {

   IndicatorShortName("OTFX");
  if(Symbol()=="GBPJPY" || Symbol()=="EURJPY" || Symbol()=="USDJPY" || Symbol()=="GOLD" || Symbol()=="USDMXN") nDigits = 2;
   if(Symbol()=="GBPUSD" || Symbol()=="EURUSD" || Symbol()=="NZDUSD" || Symbol()=="USDCHF"  ||
   Symbol()=="USDCAD" || Symbol()=="AUDUSD" || Symbol()=="EURUSD" || Symbol()=="EURCHF"  || Symbol()=="EURGBP"
   || Symbol()=="EURCAD" || Symbol()=="EURAUD" || Symbol()=="AUDNZD")nDigits = 4;
switch(TimeFrame)
   {
      case 1  : string TimeFrameStr="M1" ;   break;    //"MAMethod: 0=SMA,1=EMA,2=SMMA,3=LWMA";
      case 5  :     TimeFrameStr=   "M5" ;   break;
      case 15 :     TimeFrameStr=   "M15";   break;     // "MAPrice: 0=C,1=O,2=H,3=L,4=M,5=T,6=W"; 
      case 30 :     TimeFrameStr=   "M30";   break;
      case 60 :     TimeFrameStr=   "H1" ;   break;
      case 240  :   TimeFrameStr=   "H4" ;   break;
      case 1440 :   TimeFrameStr=   "D1" ;   break;
      case 10080 :  TimeFrameStr=   "W1" ;   break;
      case 43200 :  TimeFrameStr=   "MN1";   break;
      default  :    TimeFrameStr=   "CurrTF";
   }   
   if (TimeFrame<Period()) TimeFrame=Period();
 
//---- initialization done
   return(0);
  }
//+------------------------------------------------------------------+
//| Moving Averages Convergence/Divergence                           |
//+------------------------------------------------------------------+
int start()
  {
   int limit;string   Text=""; 
   int i=0;

   
    double MA1=iMA(Symbol(),TimeFrame,FastEMA,0,MODE_EMA,PRICE_CLOSE,0)-iMA(Symbol(), TimeFrame,MAPeriod,0,MAMethod,MAPrice,0)-Point ;
   
    double MA3 =iMA(Symbol(), TimeFrame,MAPeriod,0,MAMethod,MAPrice,0);
    double MA31 =iMA(Symbol(), TimeFrame,MAPeriod,0,MAMethod,MAPrice,1);
 
    color ColorCOV ;
    if(  MA3 > MA31 ) { ColorCOV = Green ; } else { ColorCOV = Crimson ; }
    color ColorCOR ;  
    if(  MA1 >=0) { ColorCOR = Green ; } else { ColorCOR = Crimson ; } 
   Comment(Text);
   string P=Period(); 
   
   ObjectCreate("OT1", OBJ_LABEL, WindowFind("OTFX"), 0, 0);
   ObjectSetText("OT1",StringSubstr((P),0),11, "Verdana", CornflowerBlue);
   ObjectSet("OT1", OBJPROP_CORNER, 0);
   ObjectSet("OT1", OBJPROP_XDISTANCE, 33);
   ObjectSet("OT1", OBJPROP_YDISTANCE, 2);
   ObjectCreate("OT2", OBJ_LABEL, WindowFind("OTFX"), 0, 0);
   ObjectSetText("OT2",StringSubstr("~MA>PRICE CALC~",0),12, "Verdana", CornflowerBlue);
   ObjectSet("OT2", OBJPROP_CORNER, 0);
   ObjectSet("OT2", OBJPROP_XDISTANCE, 70);
   ObjectSet("OT2", OBJPROP_YDISTANCE, 2);
      
   ObjectCreate("OT3", OBJ_LABEL, WindowFind("OTFX"), 0, 0);
   ObjectSetText("OT3",DoubleToStr( MA3,Digits), 12, "Arial Bold",ColorCOV);
   ObjectSet("OT3", OBJPROP_CORNER, 0);
   ObjectSet("OT3", OBJPROP_XDISTANCE, 250);
   ObjectSet("OT3", OBJPROP_YDISTANCE,20 );
   ObjectCreate("OT4", OBJ_LABEL, WindowFind("OTFX"), 0, 0);
   ObjectSetText("OT4","MA-Price", 11, "Arial ", LightSteelBlue);
   ObjectSet("OT4", OBJPROP_CORNER, 0);
   ObjectSet("OT4", OBJPROP_XDISTANCE, 170);
   ObjectSet("OT4", OBJPROP_YDISTANCE, 20);   
  
   ObjectCreate("OT5", OBJ_LABEL, WindowFind("OTFX"), 0, 0);
   ObjectSetText("OT5",DoubleToStr( MA1,Digits), 12, "Arial Bold",ColorCOR);
   ObjectSet("OT5", OBJPROP_CORNER, 0);
   ObjectSet("OT5", OBJPROP_XDISTANCE, 380);
   ObjectSet("OT5", OBJPROP_YDISTANCE,20 );
   ObjectCreate("OT6", OBJ_LABEL, WindowFind("OTFX"), 0, 0);
   ObjectSetText("OT6","MA>CL+/-", 9, "Arial ", LightSteelBlue);
   ObjectSet("OT6", OBJPROP_CORNER, 0);
   ObjectSet("OT6", OBJPROP_XDISTANCE, 310);
   ObjectSet("OT6", OBJPROP_YDISTANCE, 20);   
   
   
    return(0);
  }
   



Sample





Analysis



Market Information Used:



Indicator Curves created:


Indicators Used:

Moving average indicator


Custom Indicators Used:

Order Management characteristics:

Other Features: