发新话题
打印

[指标EA编写讨论] xfxyldj版请帮忙!

本主题由 xfxyldj 于 2007-11-26 12:41 分类

xfxyldj版请帮忙!

如何将下面的公式两线交叉时在K线的最高价或最低价的位置加‘箭头’信号?谢谢!
#property  indicator_chart_window
#property  indicator_buffers 2
#property  indicator_color1  Silver
#property  indicator_color2  Yellow
#property  indicator_width1  2
extern int Signal=9;
double     BBuffer[];
double     DBuffer[];
int init()
  {
   SetIndexStyle(0,DRAW_LINE);
   SetIndexStyle(1,DRAW_LINE);
   SetIndexDrawBegin(0,20);
   SetIndexDrawBegin(1,20+Signal);
   IndicatorDigits(Digits);
   SetIndexBuffer(0,BBuffer);
   SetIndexBuffer(1,DBuffer);
   return(0);
  }
  
double aa(int x)
   {   return((3*iClose(0,0,x)+iOpen(0,0,x)+iHigh(0,0,x)+iLow(0,0,x))/6);   }

int start()
  {
   int limit;
   int counted_bars=IndicatorCounted();
   if(counted_bars>0) counted_bars--;
   limit=Bars-counted_bars;
   for(int i=0; i<limit; i++)
      BBuffer=(20*aa(i)+19*aa(i+1)+18*aa(i+2)+17*aa(i+3)+16*aa(i+4)+15*aa(i+5)+14*aa(i+6)+13*aa(i+7)+12*aa(i+8)+11*aa(i+9)+10*aa(i+10)
                 +9*aa(i+11)+8*aa(i+12)+7*aa(i+13)+6*aa(i+14)+5*aa(i+15)+4*aa(i+16)+3*aa(i+17)+2*aa(i+18)+aa(i+19))/210;
   for(i=0; i<limit; i++)
      DBuffer=iMAOnArray(BBuffer,Bars,Signal,0,MODE_SMA,i);
   return(0);
  }

TOP

增加箭头需要增加很多代码。
你看下这个帖子里面的交叉箭头代码讲解部分。
一句两句说不清楚。
http://www.onefx.net/bbs/viewthr ... 26amp%3Btypeid%3D29
(不好意思最近没时间写代码!)

TOP

发新话题