第二版//+------------------------------------------------------------------+
//| 5 Min RSI 12-period qual INDICATOR                               |
//+------------------------------------------------------------------+
#property copyright "Ron T"
#property link      "http://www.lightpatch.com"
#property indicator_chart_window
#property indicator_buffers 8
#property indicator_color1 Red
#property indicator_color2 HotPink
#property indicator_color3 DarkGray
#property indicator_color4 Red
#property indicator_color5 White
#property indicator_color6 LightGray
#property indicator_color7 DarkGray
#property indicator_color8 White
//---- buffers
double Buffer1;
double Buffer2;
double Buffer3;
double Buffer4;
double Buffer5;
double Buffer6;
double Buffer7;
double Buffer8;
// User Input
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//|------------------------------------------------------------------|
int init()
  {
   // 233 up arrow
   // 234 down arrow
   // 159 big dot
   // 158 little dot
   // 168 open square
   // 120 box with X
   
   SetIndexStyle(0,DRAW_ARROW);
   SetIndexBuffer(0, Buffer1);
   SetIndexArrow(0,159);  //up
   
   SetIndexStyle(1,DRAW_ARROW);
   SetIndexBuffer(1, Buffer2);
   SetIndexArrow(1,159);  //down
   SetIndexStyle(2,DRAW_ARROW);
   SetIndexBuffer(2, Buffer3);
   SetIndexArrow(2,112);
   SetIndexStyle(3,DRAW_ARROW);
   SetIndexBuffer(3, Buffer4);
   SetIndexArrow(3,120);
   SetIndexStyle(4,DRAW_ARROW);
   SetIndexBuffer(4, Buffer5);
   SetIndexArrow(4,159);
   SetIndexStyle(5,DRAW_ARROW);
   SetIndexBuffer(5, Buffer6);
   SetIndexArrow(5,159);
   SetIndexStyle(6,DRAW_ARROW);
   SetIndexBuffer(6, Buffer7);
   SetIndexArrow(6,112);
   SetIndexStyle(7,DRAW_ARROW);
   SetIndexBuffer(7, Buffer8);
   SetIndexArrow(7,120);
   return(0);
  }
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
   int i;
   
   for( i=0; i
=1)
     {
      cMAfst=iMA(Symbol(),0,5,0,MODE_LWMA,PRICE_CLOSE, pos);
      pMAfst=iMA(Symbol(),0,5,0,MODE_LWMA,PRICE_CLOSE, pos+1);
      
      cMAslo=iMA(Symbol(),0,25,0,MODE_LWMA,PRICE_CLOSE, pos);
      pMAslo=iMA(Symbol(),0,25,0,MODE_LWMA,PRICE_CLOSE, pos+1);
      // rising
      if (pMAfst<=pMAslo && cMAfst>=cMAslo)
        {
         Buffer8[pos]=cMAfst;
        }
      //falling
      if (pMAfst>=pMAslo && cMAfst<=cMAslo)
        {
         Buffer4[pos]=cMAfst;
        }
 	   pos--;
     }
   return(0);
  }
//+------------------------------------------------------------------+第三版//+------------------------------------------------------------------+
//| 5 Min RSI 12-period qual INDICATOR                               |
//+------------------------------------------------------------------+
#property copyright "Ron T"
#property link      "http://www.lightpatch.com"
#property indicator_chart_window
#property indicator_buffers 8
#property indicator_color1 Red
#property indicator_color2 HotPink
#property indicator_color3 DarkGray
#property indicator_color4 Red
#property indicator_color5 White
#property indicator_color6 LightGray
#property indicator_color7 LightGreen
#property indicator_color8 White
//---- buffers
double Buffer1;
double Buffer2;
double Buffer3;
double Buffer4;
double Buffer5;
double Buffer6;
double Buffer7;
double Buffer8;
// User Input
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//|------------------------------------------------------------------|
int init()
  {
   // 233 up arrow
   // 234 down arrow
   // 159 big dot
   // 158 little dot
   // 168 open square
   // 120 box with X
   
   SetIndexStyle(0,DRAW_ARROW);
   SetIndexBuffer(0, Buffer1);
   SetIndexArrow(0,159);  //up
   
   SetIndexStyle(1,DRAW_ARROW);
   SetIndexBuffer(1, Buffer2);
   SetIndexArrow(1,159);  //down
   SetIndexStyle(2,DRAW_ARROW);
   SetIndexBuffer(2, Buffer3);
   SetIndexArrow(2,112);
   SetIndexStyle(3,DRAW_ARROW);
   SetIndexBuffer(3, Buffer4);
   SetIndexArrow(3,120);
   SetIndexStyle(4,DRAW_ARROW);
   SetIndexBuffer(4, Buffer5);
   SetIndexArrow(4,159);
   SetIndexStyle(5,DRAW_ARROW);
   SetIndexBuffer(5, Buffer6);
   SetIndexArrow(5,159);
   SetIndexStyle(6,DRAW_ARROW);
   SetIndexBuffer(6, Buffer7);
   SetIndexArrow(6,120);
   SetIndexStyle(7,DRAW_ARROW);
   SetIndexBuffer(7, Buffer8);
   SetIndexArrow(7,120);
   return(0);
  }
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
   int i;
   
   for( i=0; i=1)
     {
      cMAfst=iMA(Symbol(),0,5,0,MODE_LWMA,PRICE_CLOSE, pos);
      pMAfst=iMA(Symbol(),0,5,0,MODE_LWMA,PRICE_CLOSE, pos+1);
      
      cMAslo=iMA(Symbol(),0,25,0,MODE_LWMA,PRICE_CLOSE, pos);
      pMAslo=iMA(Symbol(),0,25,0,MODE_LWMA,PRICE_CLOSE, pos+1);
      
      MA100=iMA(Symbol(),0,100,0,MODE_LWMA,PRICE_CLOSE, pos);
      // rising
      if (pMAfst<=pMAslo && cMAfst>=cMAslo && MA100=pMAslo && cMAfst<=cMAslo && MA100>cMAslo)
        {
         Buffer4[pos]=cMAfst;
        }
      // possible take-profit mark
      if ((MA100cMAslo) || (MA100>pMAslo && MA100