外汇EA
Parabolic SAR Color
回复:0  浏览:966
  • 楼主admin 圈主
  • 2020-01-01 14:47
//+------------------------------------------------------------------+
//|                                    SAR_COLOR.mq4 |
//|                                        Kalenzo |
//|                           http://www.foreksik.prv.pl |
//+------------------------------------------------------------------+
#property copyright Kalenzo
#property link      http://www.foreksik.prv.pl
#property indicator_color1 Yellow
#property indicator_color2 Magenta
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_width1 1
#property indicator_width2 1
double sarUp[],sarDn[];//buffers
extern bool alertsEnabled=true;
extern double Step = 0.01;//was .01
extern double Maximum = 0.2;
extern int Precision =4;
double alertBar;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                  |
//+------------------------------------------------------------------+
int init()
 {
//---- indicators
   SetIndexStyle(0,DRAW_ARROW,STYLE_DOT);
   SetIndexStyle(1,DRAW_ARROW,STYLE_DOT);
   SetIndexBuffer(0,sarUp);
   SetIndexBuffer(1,sarDn);
   SetIndexArrow(0,115);
   SetIndexArrow(1,115);
   IndicatorShortName( SAR COLORED
   SetIndexLabel(0, SAR Up Channel
   SetIndexLabel(1, SAR Down Channel
   SetIndexDrawBegin(0,2);
   SetIndexDrawBegin(1,2);
//----
   return(0);
 }
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function               |
//+------------------------------------------------------------------+
int deinit()
 {
//----
//----
   return(0);
 }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                     |
//+------------------------------------------------------------------+
int start()
 {
   int limit;
   int counted_bars=IndicatorCounted();
   if(counted_bars 0) counted_bars=0;
   if(counted_bars 0) counted_bars--;
   limit=Bars-counted_bars;
//----
 for(int i = 0; i limit ;i++)
   {
     double sar = NormalizeDouble(iSAR(Symbol(),0,Step,Maximum,i),Precision);
        if(sar = iHigh(Symbol(),0,i))
     {
      if(alertsEnabled==true sarUp[i] == 0 Bars alertBar)
     {
     alert( BB抛物线--下降-- ,Symbol(), - ,Period());
     alertBar = Bars;
      }
       sarUp[i] = sar; 
       sarDn[i] = 0;
     }
    else
     {
      if(alertsEnabled==true sarDn[i] == 0 Bars alertBar)
     {
     alert( BB抛物线--上升-- ,Symbol(), - ,Period());
     alertBar = Bars;
     }
       sarUp[i] = 0;
       sarDn[i] = sar;
      }
   }
//----
   return(0);
 }
//+------------------------------------------------------------------+