看似宽泛的条件限定,本文的实现方法也许值得探讨,请看留言: 网友的留言 留言的思路是说:建立1~2个月内,2~3次涨停的筛选算法。 思路步骤
算法建立 1. 应用BARSLAST函数,进行递进式时间确定 WZ1:=CONST(BARSLAST(MONTH!=REF(MONTH,1))); WZ2:=CONST(REF(BARSLAST(MONTH!=REF(MONTH,1)),WZ1+1))+WZ1+1; 2. 计算涨停的相关思路逻辑 TJ:=(FINANCE(3)=4 OR (DATE>1200822 && FINANCE(3)=3)); ZTJ:=IF(TJ,ZTPRICE(REF(CLOSE,1),0.2),ZTPRICE(REF(CLOSE,1),0.1)); ZT:=(CLOSE>=ZTJ); 3. 应用COUNT函数限定在给出的时间范围内出现涨停的次数 RANGE(COUNT(ZT,WZ2),1,4)=1; 完整代码 代码流程 WZ1:=CONST(BARSLAST(MONTH!=REF(MONTH,1))); WZ2:=CONST(REF(BARSLAST(MONTH!=REF(MONTH,1)),WZ1+1))+WZ1+1; TJ:=(FINANCE(3)=4 OR (DATE>1200822 && FINANCE(3)=3)); ZTJ:=IF(TJ,ZTPRICE(REF(CLOSE,1),0.2),ZTPRICE(REF(CLOSE,1),0.1)); ZT:=(CLOSE>=ZTJ); RANGE(COUNT(ZT,WZ2),1,4)=1; 本文虽简短,但是应用价值很大,例如,在跨周期数据引用时,将会非常精准地界定月份的界限。 |
|