设为首页收藏本站

 找回密码
 注册
楼主: tufeiyige
打印 上一主题 下一主题

全球10大 顶尖模型 集合(有源码) [复制链接]

Rank: 2

精华
0
UID
107997
积分
115
帖子
89
主题
6
阅读权限
30
注册时间
2012-3-30
最后登录
2015-2-14
1#
发表于 2012-7-22 13:45:40 |显示全部楼层
这个是著名的Asctrend的源码(mt4),楼主能不能帮忙译成TB的代码,大家共同学习。

int start()
{   
   
   double value2;
   double value3;
   double value10=10;
   double value11;
   double x1=70;
   double x2=30;
   int TrueCount;
   int counter;
   int MRO1;
   int MRO2;
   int i1;
   double Range;
   double AvgRange;
   double val1;
   double val2;
   double Table_value2[500][2];
   int counted_bars=IndicatorCounted();
   
   value10=3+RISK*2;
   x1=67+RISK;
   x2=33-RISK;
   value11=value10;
  //----------------------------
   
   if(counted_bars<0) return (-1);
   if(counted_bars>0) counted_bars--;       //last bar recounted
   int i;
   int shift = Bars-counted_bars-1;
   if (shift > AllBars) shift = AllBars;
         
  for(i=shift; i>0; i--)
   {
   


   
                 
      counter=i;
      Range=0;
      AvgRange=0;
      for (counter=i ;counter<=i+9;counter++)
      {
         AvgRange=AvgRange+MathAbs(High[counter]-Low[counter]);
      }
      Range=AvgRange/10;
      
      
      counter=i;
      TrueCount=0;
      while (counter<i+9 && TrueCount<1)
      {
         if (MathAbs(Open[counter]-Close[counter+1])>=Range*2.0 )
               TrueCount++;
         counter++;
      }

      if (TrueCount>=1)
            MRO1=counter ;
      else
            MRO1=-1;
            
      counter=i;
      TrueCount=0;
      while (counter<i+6 && TrueCount<1)
      {
           if(MathAbs(Close[counter+3]-Close[counter])>=Range*4.6)
            {TrueCount++;}
           counter++;
      }
      
      if(TrueCount>=1)
            MRO2=counter;
      else
            MRO2=-1;
            
      if (MRO1>-1)
            value11=3;
      else
            value11=value10;
            
      if (MRO2>-1)
            value11=4;
      else
           value11=value10;
         
            
      value2=100-MathAbs(iWPR(NULL,0,value11,i));
      Table_value2[0]=i;
      Table_value2[1]=value2;
      val1=0;
      val2=0;
      value3=0;
      //-------------------     val1  
      if (value2<x2 )  //  x2 = 30
      {
         i1=1;
         while (Table_value2[i+i1][1]>=x2 && Table_value2[i+i1][1]<=x1)
         {i1++;}

         if (Table_value2[i+i1][1]>x1)
         {
            value3=High+Range*0.5;
            val1=value3;
         }
      }
      
      //-------------------     val2  
      if ( value2>x1) // x1 = 70
      {  
            i1=1;
            while (Table_value2[i+i1][1]>=x2 && Table_value2[i+i1][1]<=x1)
            {i1++;}
            
            if (Table_value2[i+i1][1]< x2)
            {
               value3=Low-Range*0.5;
               val2=value3;
            }
      }
      
      
      
     
      if (val2!=0 && up==0 )
      {     
           val1buffer= val2-1*Point;
           up=1;
           dn=0;
           if(shift<=2)
           {
            Alert (Symbol()," ",Period(),"M  Asctrend BUY ");
            }
      }  
      if (val1 !=0 && dn==0)
      {
      
            val2buffer= val1+1*Point;
            dn=1;
            up=0;
            if(shift<=2)
            {
            Alert (Symbol()," ",Period(),"M   Asctrend SELL ");
            }
       }
   
   }
return(0);

使用道具 举报

Rank: 2

精华
0
UID
107997
积分
115
帖子
89
主题
6
阅读权限
30
注册时间
2012-3-30
最后登录
2015-2-14
2#
发表于 2012-8-2 05:22:30 |显示全部楼层
此贴 看起来是广告贴···

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-4 12:40

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部