-- 作者:a虎甲虫
-- 发布时间:2018/11/15 14:18:42
-- 代码修改的问题
之前发过一个求助帖,“判断当前行情与最近一次K线下穿10均线之间的最低点是否在50根K线范围内的某根放量K线的影线范围内。”
然后我根据老师给的代码稍加改动写了一个判断逻辑,但有很大的问题,很长时间都没找到问题在哪。还请老师帮忙修改。
MA1:=MA(VOL,50); volx:=MA1+2.3*STD(VOL,50);
yx:=not((c=h and o=l and c>=o) or (o=h and l=c and c<=o));//是否是有影线(满足放量但是没有影线的K过滤掉) fl:=vol>volx;//是否放量 cd1:=fl and yx;//满足放量且有影线
lenk:=BARSLAST(cross(c,ma(c,10)));//最近一次上穿的周期跨度 lvk:=CONST(hhv(h,lenk+1));//最近一次上穿以来的最高点。特别需要注意这里使用了CONST函数,因此公式只能在序列模式下执行 cd2k:=RANGE(lvk,l,h) and if(c>=o,not(RANGE(lvk,c,o)),not(RANGE(lvk,o,c)));//最高点是否在影线范畴内 高点result:count(cd2k and cd1,50)>=1;//最终判断结果。即50周期内是否有满足条件的的放量K使得最近一次上穿到现在的高点在放量K影线范畴内。
此主题相关图片如下:$j~wqbjz9eqsn@dtugjg.png
|