想输出股票连续3个涨停板后次日的收盘价,上次这里的老师指导通过选股公式中debugfile输出到text。
问题是我选股时间设置了2017年1月到2019年1月,但输出文件XG2.txt中最早的是2015年,且2017之前只有几条,多数是2018-2020年的,但与我设置的完全不同啊,请问是什么原因呢?
选股结果有4000多项,头尾如下(在excel中按日期排序)
此主题相关图片如下:1.png
此主题相关图片如下:2.png
条件选股设置如下:
此主题相关图片如下:3.png
代码如下:
//输出涨停板3日以后的开盘价
jc:count(c/ref(c,1)>1.095,3)=3;//设计前期三个涨停板
cd:ref(jc,1);//想输出满足条件的次日的数据
str:STKLABEL+
'DATE:'+NUMTOSTR(date+19000000,0)+' C:'+NUMTOSTR(c,0);
if cd then
DEBUGFILE2('E:\XG2.txt',str,0,0);
U:cd;//
1. 你本地是否有足够数据量?
2.有数据量情况下。你需要把数据量设置的覆盖到2017年才行。选项-维护里那个设置,你改下。或者你直接勾选刷新指定数据量那个选项,把数据量设置大点。
谢谢,我明白了,即使我设置了历史阶段为17年1月到19年1月,但他不是按照这个历史阶段来选的,他就是按照指定数据量那里设置的K线数量,从当前日期往前推,我设置了1200根K线,选出来就是15年到现在,也就是说最下面选择的历史阶段那里填什么时间段都是没用的
不是这样。测试了下。是这样的。
前面用输出到文本的方式核对不严谨。
公式计算是按照数据量,要么是选项里面的设置,要么是指定的K数量。
但是选股结果是进过时间区间的筛选的。
所以你在文本文件里面能看到2015年的输出,实际上软件的选股结果里面并没有2015年的。
比如你设置的是1000个K,实际选股时候,代码执行这么多个K。然后在这个基础上根据时间区间再筛选一次。