//+------------------------------------------------------------------+
//|                                                    PROBOY MA.mq4 |
//+------------------------------------------------------------------+
#property copyright " panelektrik@yandex.ru"
#property link   " http://pan-elektrik.inmarket.biz"

//----
#property indicator_chart_window
#property indicator_buffers 3
//+----
 extern string _  = "параметры Ма1"; 
 extern int period1    = 377;      //Период усреднения для вычисления скользящего среднего. 
 extern int ma_shift1  = 0;      //Сдвиг индикатора относительно ценового графика. 
 extern int ma_method1 = 1;      //Метод усреднения. Может быть любым из значений методов скользящего среднего (Moving Average). 
 extern int applied_price1 = 0;  //Используемая цена. Может быть любой из ценовых констант. 
 extern color Color1 = OrangeRed;
 extern string __  = "параметры Ма2"; 
 extern int period2    = 233;      //Период усреднения для вычисления скользящего среднего. 
 extern int ma_shift2  = 0;      //Сдвиг индикатора относительно ценового графика. 
 extern int ma_method2 = 0;      //Метод усреднения. Может быть любым из значений методов скользящего среднего (Moving Average). 
 extern int applied_price2 = 0;  //Используемая цена. Может быть любой из ценовых констант. 
 extern color Color2 = Orange;
 extern string ___  = "параметры Ма3"; 
 extern int period3    = 50;      //Период усреднения для вычисления скользящего среднего. 
 extern int ma_shift3  = 0;      //Сдвиг индикатора относительно ценового графика. 
 extern int ma_method3 = 0;      //Метод усреднения. Может быть любым из значений методов скользящего среднего (Moving Average). 
 extern int applied_price3 = 0;  //Используемая цена. Может быть любой из ценовых констант. 
 extern color Color3 = LightSkyBlue;

 double buf1[],buf2[],buf3[];int t;
 
int init()
  {SetIndexStyle(0,DRAW_LINE,DRAW_LINE,2,Color1);
   SetIndexBuffer(0,buf1);
   SetIndexStyle(1,DRAW_LINE,DRAW_LINE,1,Color2);
   SetIndexBuffer(1,buf2);
   SetIndexStyle(2,DRAW_LINE,DRAW_SECTION,1,Color3);
   SetIndexBuffer(2,buf3);
   if((IsTesting()==false)&&(IsOptimization()==false)&&(IsVisualMode()==false))
   t=GlobalVariableGet(WindowExpertName()+Symbol());
   }
int start()
  {
  int limit =Bars-IndicatorCounted();
  for(int i = limit; i >= 0; i--)
  {
//----
  buf1[i]= iMA(NULL,0,period1,ma_shift1,ma_method1,applied_price1,i);
  buf2[i]= iMA(NULL,0,period2,ma_shift2,ma_method2,applied_price2,i);
  buf3[i]= iMA(NULL,0,period3,ma_shift3,ma_method3,applied_price3,i);
  }
  if((Close[1]>buf1[0])&&(t==1||t==0))
  {
  if(t!=0)Alert(Symbol(),"\n","СИГНАЛ = BUY");
  t=2;
  }
  if((Close[1]<buf1[0])&&(t==2||t==0))
  {
  if(t!=0)Alert(Symbol(),"\n","СИГНАЛ = SELL");
  t=1;
  }}
//+------------------------------------------------------------------+   
  int deinit()
  {
  if((IsTesting()==false)&&(IsOptimization()==false)&&(IsVisualMode()==false))
  {
  GlobalVariableSet(WindowExpertName()+Symbol(),t);
  }}
//+------------------------------------------------------------------+ 