以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- [求助](非常重要)OPENMINUTES(TIME)在非夜盘品种下错误 (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=73549) |
-- 作者:kminer -- 发布时间:2014/12/25 11:35:07 -- [求助](非常重要)OPENMINUTES(TIME)在非夜盘品种下错误 客服,您好
(重要)OPENMINUTES(TIME)在非夜盘品种下错误。 郑州切换夜盘后,OPENMINUTES(TIME)在历史数据处理时必然错误。 以前(没有夜盘阶段)的9:01转变为13:01之后,OPENMINUTES(TIME)为151。实际应该为1才对. 请火速处理,谢谢!
|
-- 作者:百湛必胜客 -- 发布时间:2014/12/25 11:45:13 -- 楼主到现在还不知道夜盘的时间归属。有夜盘后,每天的第一分钟是夜盘开盘的第一分钟,而不是原来的9点开始了,原来1对,夜盘变成151才是对的 |
-- 作者:kminer -- 发布时间:2014/12/25 13:25:43 -- 说具体点吧:本月所有郑州切换成夜盘的合约, 2014年12月15日之前,没有夜盘,使用新数据格式后每天OPENMINUTES(TIME)从151开始,为错误;2014年12月15日及之后,有夜盘,使用新数据格式后每天OPENMINUTES(TIME)从1开始,正确;因为这次夜盘切换是合约中途切换的。所以必然存在从13:00开盘的数据和1:00开盘的数据的混合数据序列。但OPENMINUTES(TIME)本意是取得开盘分钟数。使用了OPENMINUTES(TIME)的用户,不可能2014年12月15日之后就全部丢掉2014年12月15日之前的数据不处理。除非他不用历史数据(使用了OPENMINUTES(TIME)函数的用户)。要么就分按日期进行分段(新数据格式),切换夜盘前的开盘分钟数减去150就行。 请客服使用 A:OPENMINUTES(TIME);在任一本月切换成夜盘的合约中,比较一下2014年12月15日前后的图形和数据就明白了。
|
-- 作者:kminer -- 发布时间:2014/12/25 13:36:11 -- 郑州切换夜盘后,OPENMINUTES(TIME)在历史数据处理时必然错误。 ---我这里说的夜盘切换之前的“历史数据”的处理。软件时间相关函数必须要考虑兼容这次切换前后开盘时间点的不同。
|
-- 作者:yukizzc -- 发布时间:2014/12/25 13:46:43 -- 这种没法处理,就像合约信息都是按现在得去处理了。 你自己用data做下判断,之前的时间返回减去150。 还有用todaybar*5,这样去判断计算开盘几分钟 [此贴子已经被作者于2014/12/25 13:50:46编辑过]
|
-- 作者:百湛必胜客 -- 发布时间:2014/12/25 15:54:32 -- 楼主跟不上市场合约的变化了,你还是原来的代码,肯定是错误了。合约的法定时间起始点变化了,代码肯定要做修改的 |
-- 作者:百湛必胜客 -- 发布时间:2014/12/25 16:03:09 -- 用这个来替换原来所有OPENMINUTES(TIME)的地方 if(ref(hour=13,todaybar),OPENMINUTES(TIME)-150,OPENMINUTES(TIME)); |