我曾经于2014年4月14日发表了博文《ASI指标的使用技巧和实战成功案例》,为了能够在选股时不顾此失彼,就要让软件帮自己全面考察各种参数。上周末我已经在自己开发的软件中加入了ASI指标的自动分析。现将银河证券的双子星软件中的计算公式(同花顺模式)复制如下:
LC=REF(CLOSE,1);
//REF()是引用若干周期前的数据,1表示上一周期,在日线上就是取昨日收盘价
AA=ABS(HIGH-LC); //ABS()是取绝对值
BB=ABS(LOW-LC);
CC=ABS(HIGH-REF(LOW,1));
DD=ABS(LC-REF(OPEN,1));
R=IF(AA>BB AND AA>CC,AA+BB/2+DD/4,IF(BB>CC AND BB>AA,BB+AA/2+DD/4,CC+DD/4));
X=(CLOSE-LC+(CLOSE-OPEN)/2+LC-REF(OPEN,1));
SI=16*X/R*MAX(AA,BB);
ASI:SUM(SI,M1); //ASI=M1周期的SI之和,在日线上就是M1天的SI之和
ASIT:MA(ASI,M2); //ASIT=M2周期的ASI的移动平均值
和我在网上查到的计算方法大同小异,不同之处在于SI=16*X/R*MAX(AA,BB)。网上所有文章给出的公式都是SI=50*X/R*MAX(AA,BB)/3,也就是说双子星软件把50/3近似成16。为了和双子星软件保持一致,得到同样的计算结果,我的软件采用和双子星相同的参数,包括ASI=SUM(SI,M1)中的参数M1,双子星的默认参数是26,实战结果证明这个参数很灵,使用效果比其它交易软件的默认参数明显更好。所以我的软件中也采用ASI=SUM(SI,26)。今天的测试验证了程序的正确性,计算出的每日ASI值和双子星软件中显示的
LC=REF(CLOSE,1);
AA=ABS(HIGH-LC);
BB=ABS(LOW-LC);
CC=ABS(HIGH-REF(LOW,1));
DD=ABS(LC-REF(OPEN,1));
R=IF(AA>BB AND AA>CC,AA+BB/2+DD/4,IF(BB>CC AND BB>AA,BB+AA/2+DD/4,CC+DD/4));
X=(CLOSE-LC+(CLOSE-OPEN)/2+LC-REF(OPEN,1));
SI=16*X/R*MAX(AA,BB);
ASI:SUM(SI,M1);
ASIT:MA(ASI,M2); //ASIT=M2周期的ASI的移动平均值
和我在网上查到的计算方法大同小异,不同之处在于SI=16*X/R*MAX(AA,BB)。网上所有文章给出的公式都是SI=50*X/R*MAX(AA,BB)/3,也就是说双子星软件把50/3近似成16。为了和双子星软件保持一致,得到同样的计算结果,我的软件采用和双子星相同的参数,包括ASI=SUM(SI,M1)中的参数M1,双子星的默认参数是26,实战结果证明这个参数很灵,使用效果比其它交易软件的默认参数明显更好。所以我的软件中也采用ASI=SUM(SI,26)。今天的测试验证了程序的正确性,计算出的每日ASI值和双子星软件中显示的

