MT4-判断趋势是否成立的指标


#property copyright "Copyright ?2007, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

#property indicator_chart_window
//>=16根线在平均线上/下,并且最远的一个K线开盘价格与当前收盘价差价>20点
extern int MA_Period=20;
extern int MA_Mode=0;
extern int JC=20;
extern int Kxsl=16; //K线数量

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

//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
  
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
 

if(CheckTrend()==1)
Print("趋势成立");
  
   //Print("pjjg="+pjjg);
   return (0);

  }
  // 返回1趋势成立,0不成立
  int CheckTrend()
  {
 
  int upcount=0; //在平均线以上的K线数量
  int downcount=0;//在平均线以下的K线数量

                                      
                              


   int    counted_bars=IndicatorCounted();  
   if(counted_bars<0) return (-1);
  
   double pjjg=iMA(NULL,0,MA_Period,0,MA_Mode,PRICE_CLOSE,1);  //从最近已经完成的K线计算的平均价
   double iClosesum=0;
   for(int i=0;i<MA_Period;i++)
   {
      //iClosesum=iClosesum+iClose(NULL,0,i+1);
      iClosesum=iClose(NULL,0,i+1);
      if(iClosesum>pjjg)
      {
      upcount++;
      }
      else if(iClosesum<pjjg)
     
      downcount++;
     
   }
  
   double kpj=iOpen(NULL,0,MA_Period);//取最远的那根K线的开盘价
   double spj=iClose(NULL,0,1);//取最近K线的收盘价
  
   if(upcount>=Kxsl)
   {
   if(MathAbs(kpj-spj)>JC )
   {
   return (1);
   }
  
   }
   return (0);
  
  }
//+------------------------------------------------------------------+ 

你可能感兴趣的:(function,null,initialization)