恩,我暂时用的方法也是这一类的,是用asset和numprofit来计算的,如后面的代码。
我想求助一个使用循环语句的方法,因为这个平均周期是不固定的。
但因本人对循环语句和数组语句的使用尚未掌握,故而无法用循环来完成计算。
请帮我看看我后面的循环代码部分是什么问题,谢谢。
//非循环方式计算的代码
lastmoney:ref(asset,EXITBARS),NOAXIS,linedot;
lastmoney_1:=lastmoney;
lastmoney_2:=lastmoney_1-NUMPROFIT(1);
lastmoney_3:=lastmoney_2-NUMPROFIT(2);
lastmoney_4:=lastmoney_3-NUMPROFIT(3);
lastmoney_5:=lastmoney_4-NUMPROFIT(4);
lastmoney_6:=lastmoney_5-NUMPROFIT(5);
lastmoney_7:=lastmoney_6-NUMPROFIT(6);
lastmoney_8:=lastmoney_7-NUMPROFIT(7);
lastmoney_9:=lastmoney_8-NUMPROFIT(8);
lastmoney_10:=lastmoney_9-NUMPROFIT(9);
ma10_lastmoney:(lastmoney_1+lastmoney_2+lastmoney_3+lastmoney_4+lastmoney_5+lastmoney_6+
lastmoney_7+lastmoney_8+lastmoney_9+lastmoney_10)/10,NOAXIS,linedot;//,NOAXIS,linedot;
//循环计算代码,其中mdt为统计周期变量。
lastmoney:ref(asset,EXITBARS);
VARIABLE:sum_slastmoney=lastmoney,slastmoney[mdt]=0;
slastmoney[1]:=lastmoney;
for i=1 to mdt do
begin
slastmoney[i+1]:=slastmoney[i]-NUMPROFIT(i);
sum_slastmoney:=sunslastmoney+slastmoney[i+1];
end
maslastmoney:sum_slastmoney/mdt,NOAXIS,linedot;