我写了一个简单的公式验证这个问题,公式如下。
MSGOUT(1,'>>A0>>>'+NUMTOSTR(C,2));
MSGOUT(1,'>>A1>>>'+NUMTOSTR(REF(C,1),2));
比如今天是15号,时间是早上8:30.当我用图表模式运行这个公式,信息打印出来时,显示C是昨天(14号)收盘的C。
但是我用后台模式运行这个公式,信息显示C是前天(13号)收盘的C。
请问我如果能让在后台模式运行时的数据起点在昨天,而不是前天呢?
每天有盘后有做收盘动作没?如果没有做收盘也没有做数据补充,很有可能当天的数据有缺失
导致你后台直接运行取了前天数据
我测试了2天,还是不行。
我按照你的要求,执行了收盘操作(我设置的是1分钟),也执行了补充了数据(最近3天)。
但是我当天收盘后运行后台程序化,得到的C还是昨天的C,而不是今天收盘后的C。
请问如何能在今天收盘后,到第二天开盘前,做数据处理的时候,以今天收盘的C结果为REF(C,0),而不是以昨天的为准。
好像在收盘后,到第二天开盘前,这个时间段,今天收盘的数据都会被当成DYNAINFO处理,而不是REF(C,0)。
而我处理明天的操作时候,要把今天的数据考虑进去。这样每次我都被迫在第二天开盘后才能运行后台程序化,而不是今天收盘后,晚上可以做预下单处理。
请问有解决办法吗
这个问题只在后台程序化交易时出现,图表模式是正常的
图表模式,因为打开一只股票,系统会自动补当天数据,所以正常。
但是后台模式,我是处理几千只股票,我收盘操作已经做了,设置1分钟,亲眼看见系统自己操作的,然后手工补充数据选择的是全部深沪A市的最近3天数据。但是今天收盘后,还是只能取到昨天的数据,而不是今天收盘后的。怎么回事呢?是不是你们的补充数据,只能补充,不能归入历史的K线?必须等明天开盘后才可以?
1.当天的数据你需要补充当日分笔,它不属于历史数据。所以你在盘中时补充当天的数据是无效的。
2.你在不打开图表,在动态显示牌上,右键数据---当日分笔数据,抽查下你的本地是否有当日的分笔数据,
或者你直接工具---数据补充当日分笔数据,然后再看输出结果。
我关心的不是当日分笔数据,只是H L C O,这4个数据就足够,这个属于日线图的数据吧,我补充当天的日线数据不就够了,还要下载当天的分笔数据?
我试试吧,但还是不理解,我只算COHL,为啥要下载分笔数据
还是不行呀,我补充了日线数据,不行,按照你说,补充了日内分笔数据,也是不行,补充的都是今天的日期。我在代码里通过DEBUGFILE打印NUMTOSTR(REF(C,0),2)到文件里,显示的数据都是昨天的收盘价,而不是今天的。