谢谢!我贴出来:
XK:=O;
XD:=L;
XG:=H;
XS:=C;
MA(XS,5);
我的想法是:想从系统提供的(或者系统自动生成的)原始k线数据(假设此为数列集合a),选择今日低价小于n周期的低价的k线和今日高价高于n周期前的k线出来组成新的k线数据组(假设此为新的行情数据集合b),ref(xd,1)要判断的数列b中的前一根k线的低价而不是a中的前一根k线的低价,只有满足条件后才生成新的k线和提取数据,否则过滤掉a数列中不符合条件的数据,有可能后面每根k线都要,有可能只要其中一根,也有可能连续很多根k线的数据都不要。MA(XS,5)是对数据列b中新的数据按照时间顺序排列进行ma(不含过滤掉的数据),特别的说明的是它一般不应该和主图中ma(c,5)等值。
感觉要参考这个公式:
VARIABLE:hh=high,ll=low,n=0,qs=low;
qs[1]:=0;
FOR i=2 TO DATACOUNT DO
begin
qs:=0;
IF HH>HH[i-1] AND LL>LL[i-1] THEn qs:=1 ;
IF HH<HH[i-1] AND LL<LL[i-1] THEN qs:=-1 ;
IF (HH>=HH[i-1] AND LL<=LL[i-1]) or (HH<=HH[i-1] AND LL>=LL[i-1]) THEN
BEGIN
IF qs[i-1]=1 THEN
BEGIN
HH:=MAX(HH,HH[i-1]);
LL:=MAX(LL,LL[i-1]);
END;
IF qs[i-1]=-1 THEN
BEGIN
HH:=MIN(HH,HH[i-1]);
LL:=MIN(LL,LL[i-1]);
END;
n:=n+1;
HH[i-1]:=0;
LL[i-1]:=0;
qs:=qs[i-1];
END;
END;
就是在末尾加Ma(xs,m);
Xs:收盘价的曲线
这两个线。
有哪位大爷是程序和思路的高手作一个