全部 智大领峰 TBQuant功能 TBL语言 TB开户 问答专区 高手圈 其他
请教老师有没有办法可以优化这段代码,缩短其长度?
2022-06-28 13:40


// 简称: ER
// 名称: 效率比
 

Vars
    Numeric M;
    Numeric N1;
    Numeric N2;
    Numeric N3;
    Numeric N4;
    Numeric N5;
    Numeric N6;
    Numeric N7;
    Numeric N8;
    Numeric N9;
    Numeric N10;
    Numeric N11;
    Numeric N12;
    Numeric N13;
    Numeric N14;
    Numeric N15;
    Numeric N16;
    Numeric N17;
    Numeric N18;
    Numeric N19;
    Numeric N20;
    Numeric P;
    Numeric ER;
       
    OnBar(ArrayRef<Integer> indexs)
    {
        
        M= abs(Close[21]- Close[1]);       
       
        N1= abs(close[21]- Close[20]);
        N2= abs(close[20]- Close[19]);
        N3= abs(close[19]- Close[18]);
        N4= abs(close[18]- Close[17]);
        N5= abs(close[17]- Close[16]);
        N6= abs(close[16]- Close[15]);
        N7= abs(close[15]- Close[14]);
        N8= abs(close[14]- Close[13]);
        N9= abs(close[13]- Close[12]);
        N10= abs(close[12]- Close[11]);
        N11= abs(close[11]- Close[10]);
        N12= abs(close[10]- Close[9]);
        N13= abs(close[9]- Close[8]);
        N14= abs(close[8]- Close[7]);
        N15= abs(close[7]- Close[6]);
        N16= abs(close[6]- Close[5]);
        N17= abs(close[5]- Close[4]);
        N18= abs(close[4]- Close[3]);
        N19= abs(close[3]- Close[2]);
        N20= abs(close[2]- Close[1]);
        
        P= N1+ N2+ N3+ N4+ N5+ N6+ N7+ N8+ N9+ N10+ N11+ N12+ N13+ N14+ N15+ N16+ N17+ N18+ N19+ N20;
        
        ER= M/ P;
        
        Commentary("ER="+Text(ER));
        
       
      
    
    
    
    
    
    
    
    }



 

Bryan2020

Params
    Numeric Length(21);
Vars
    Numeric nER;
    Numeric nP;
    Numeric nM;   
Events
    OnBar(ArrayRef<Integer> indexs)
    {
        Numeric i;
        nM = Abs(Close[length] - Close[1]);
        For i = 2 To Length
        {
            nP = nP + Abs(Close[i] - Close[i-1]);
        }
        nER = nM / nP;
        
        Commentary("nER="+text(nER));
    }

2022-06-28 15:17
ackliyu1981
@Bryan2020

谢谢!

2022-06-28 20:24
kyover

Params
    Numeric length(20);
Vars
    Numeric m;
    series<Numeric> n;
    Numeric p;
    Numeric er;    
Events
    //Bar更新事件函数,参数indexs表示变化的数据源图层ID数组
    OnBar(ArrayRef<Integer> indexs)
    {
        m = abs(close[length+1]-close[1]);
        n = abs(close[2]-close[1])
        p = Summation(n,length);
        er = m/p;
         Commentary("ER="+Text(ER));
    }
 

2022-06-28 16:21
ackliyu1981
@kyover

非常感谢!

2022-06-28 20:25
您未登录,请先 登录注册 后发表评论
顶部