有您的持续关注
我们会做得更好

指标 Weighted WCCI



Weighted WCCI 指标在副图绘制慢速和快速 ССI, 以及彩色柱线来判断形态和趋势。

Weighted WCCI 指标图表效果如下:Weighted WCCI 指标Weighted WCCI 指标源码:

//+------------------------------------------------------------------+
//|                                                Weighted WCCI.mq4 |
//|                         Copyright @2005, Luis Guilherme Damiani |
//|                                      http://www.damianifx.com.br |
//+------------------------------------------------------------------+
#property copyright "Copyright @2005, Luis Guilherme Damiani"
#property link      "http://www.damianifx.com.br"
//----
#property indicator_separate_window
#property indicator_buffers 8
#property indicator_color1 Red
#property indicator_color2 DodgerBlue
#property indicator_color3 CadetBlue
#property indicator_color4 Red
#property indicator_color5 Red
#property indicator_color6 RoyalBlue
#property indicator_color7 RoyalBlue
#property indicator_color8 PaleGreen
//---- input parameters
extern int       TCCIp=7;
extern int       CCIp=13;
extern double    overbslevel=200.0;
extern double    triglevel=50.0;
extern double    weight=1.0;
//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
double ExtMapBuffer4[];
double ExtMapBuffer5[];
double ExtMapBuffer6[];
double ExtMapBuffer7[];
double ExtMapBuffer8[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,ExtMapBuffer1);
   SetIndexLabel(0,"Turbo CCI");
   SetIndexStyle(1,DRAW_LINE,1,3);
   SetIndexBuffer(1,ExtMapBuffer2);
   SetIndexLabel(2,"CCI");
   SetIndexStyle(2,DRAW_HISTOGRAM);
   SetIndexBuffer(2,ExtMapBuffer3);
   SetIndexStyle(3,DRAW_LINE,1,3);
   SetIndexLabel(3,"CCI");
   SetIndexBuffer(3,ExtMapBuffer4);
   SetIndexStyle(4,DRAW_LINE,1,3);
   SetIndexBuffer(4,ExtMapBuffer5);
   SetIndexStyle(5,DRAW_LINE,STYLE_DASH,1);
   SetIndexBuffer(5,ExtMapBuffer6);
   SetIndexStyle(6,DRAW_LINE,STYLE_DASH,1);
   SetIndexBuffer(6,ExtMapBuffer7);
   SetIndexStyle(7,DRAW_LINE,STYLE_DASH,1);
   SetIndexBuffer(7,ExtMapBuffer8);
//----
   SetIndexDrawBegin(0,50);
   SetIndexDrawBegin(1,50);
   SetIndexDrawBegin(2,50);
   SetIndexDrawBegin(3,50);
   SetIndexDrawBegin(4,50);
   SetIndexDrawBegin(5,50);
   SetIndexDrawBegin(6,50);
   SetIndexDrawBegin(7,50);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
Comment("www.125808047.com"); 
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int trend_counter=0;
string trend="ZERO";
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int start()
  {
   int    counted_bars=IndicatorCounted();
//---- check for possible errors
   if(counted_bars<0) return(-1);
//---- last counted bar will be recounted
//if(counted_bars>0) counted_bars=-1;
   int limit=Bars-counted_bars;
//if (limit>Bars-CCIp-1)limit=Bars-CCIp-1;
//Comment(Bars+"    "+limit); 
   double Kw=0.0;
   int alt=0;
//---- 
   for(int shift=0; shift<=limit;shift++)
     {
      double CCI=iCCI(NULL,0,CCIp,PRICE_TYPICAL,shift);
      double TCCI=iCCI(NULL,0,TCCIp,PRICE_TYPICAL,shift);
      //----
      if(weight==0)Kw=0;
      else
        {
         if(iATR(NULL,0,49,shift)==0) continue;
         Kw=weight*iATR(NULL,0,7,shift)/iATR(NULL,0,49,shift);
         CCI=CCI*Kw;
         TCCI=TCCI*Kw;
        }
      if(TCCI>overbslevel+50)TCCI=overbslevel+50;
      if(CCI>overbslevel+50)CCI=overbslevel+50;
      if(CCI<-overbslevel-50)CCI=-overbslevel-50;
      if(TCCI<-overbslevel-50)TCCI=-overbslevel-50;
      ExtMapBuffer1[shift]=TCCI;
      ExtMapBuffer2[shift]=CCI;
      ExtMapBuffer3[shift]=CCI;
      ExtMapBuffer4[shift]=overbslevel;
      ExtMapBuffer5[shift]=-overbslevel;
      ExtMapBuffer6[shift]=triglevel;
      ExtMapBuffer7[shift]=-triglevel;
      ExtMapBuffer8[shift]=0;
      if(shift==0)
        {
         if(CCI>0)
         if(trend=="UP" && limit>1)trend_counter+=1; else {trend_counter=1;trend="UP";}
         else if(trend=="DOWN" && Bars-counted_bars>1) trend_counter+=1; else {trend_counter=1;trend="DOWN";}
         //----
         Comment("CCI is trending ",trend," during last ",trend_counter," bar(s)");
        }
     }
//----
   return(0);
  }
//+------------------------------------------------------------------+

如您喜欢此文章请点下面分享按钮↴峰汇在线 » 指标 Weighted WCCI
上一篇:
下一篇:
分享到:更多 ()