发现连续合约的数据问题。
本人做期货多年。一直以来都很认可程序化交易方式。TB是款非常出色的交易软件,给我们大家筑造了一个良好的可以自由构建程序化交易系统的平台。特别是对交易系统的测试,构思精巧,全面。在此先对tb的工作人员的努力表示感谢。我是从零开始学习编程的。艰苦钻研了几个月,终于有所入门的感觉。已经可以编写比较较简单的程序,并在tb上做些测试。但是发现测试结果跟我以前做的统计有相当出入。我们很多人,做日内交易的大部分都以连续合约做历史测试,因为他基本上就是和历史真实日内行情完全一致(就日内行情来说比加权的指数合约真实)。如:(豆油连续合约)y9888 2009,06,05日的日内k线,不论是m1 m30 d1 理论上应就是y0901 2009,06,05的k线。因为这一天y0901的成交量,持仓量都>豆油其他合约。应该y9888=y0901,因为连续合约,是以最大成交量,或者最大持仓量为换月条件的。
当y0901 2009,06,05日的成交量,持仓量都>y9888,就肯定出现错误了。
说明连续合约取的数据不是最活跃的合约。当我发现这种现象的时候非常沮丧。因为数据不对,所有的工作都白费。历史数据是基础啊,所有的交易系统都在这个数据上测试,所有的tb用户都用这个数据,1个不准确的数据会被重复n多次!
比如:铜的连续合约在6月份6-22-25日4天的日线,cu0910的持仓量,成交量都远大于cu888。因为连续合约都取的cu0909的数据。可是当时cu0910才是最活跃的合约啊,大家都在做cu0910,cu0909的行情应经很萎靡了为什么要取它的数据呢?!。6.25那天成交量都相差10多倍了。数据如下:
2009 6,22 623 624 6;25
cu888
量=189598 // // 量=88236
仓=141834 // // 仓=81468
cu0910
量=455058 // // 量=936344
仓=181062 // // 仓=237510
如果每个合约每月平均有3次不合理数据,一年3*12=36个错。10品种36*10=360个错。5年360*5=1800个错。10000的用户每人测试1次错误的数据就。。。。很大数字了
偶然间发现这种情况,以前用tb在连续合约做的大量的统计都废了,不真实啊。(我一般在tb上做完测试还会在excel上编辑分析)很费功夫。一个程序化交易系统,统计测试极其重要。历史数据有问题,所有工作毫无意义。真的很郁闷!不过我觉得的这种错误,很容易纠正。肯定是疏忽大意造成的。很多最有难度的工作tb都能完成的很出色。工作人员对整理数据这种没技术含量的事务不重视,可是对于我们来说历史数据太重要了,所有程序都在数据上面运作。
本人其实很喜欢tb的,也有可能是我眼花了,看错了,或者对连续合约理解错了。
另外tb连续合约好像是以持仓量最大为换月条件的,强烈希望换成以成交量为换月条件。对日内交易者来说成交量大的合约更活跃更能真实反映历史。。非日内的交易系统有指数合约做测试条件更合适。 关注,打个记号 最近也发现了这个问题.期待TB的同学出来给个解释.应该用哪个合约做测试 以每周五的持仓量为准,一周才会切换一次。 [quote]原帖由 [i]nopain[/i] 于 2009-12-4 22:21 发表 [url=http://www.tradeblazer.net/forum/redirect.php?goto=findpost&pid=39111&ptid=5572][img]http://www.tradeblazer.net/forum/images/common/back.gif[/img][/url]
以每周五的持仓量为准,一周才会切换一次。 [/quote]
您说的这个是888连续合约吗? 现在越来越发现做趋势测试和正式交易的难度了,用什么合约都无法满足,888和000都不行。伤脑筋啊! 这破软件不是按成交量算的,按时间换主力月的,这点还没文华强呢,不过整体来说,两个都挺烂的:(
有同感!那为什么不能按一楼的建议编制呢??
有同感!那为什么不能按一楼的建议编制呢?????????????????????????????????????????????而非要:“以每周五的持仓量为准,一周才会切换一次。 ”呢????????????? 什么叫主力合约本来就有分歧 支持以成交量判断主力合约。如果有分歧,两个都提供嘛,又没有什么难度。关键是是否能及时响应客户需求。 应该以持仓量为主判断主力合约:lol
页:
[1]
