开拓者期货期权程序化系统交易论坛

标题: 关于TB的一些使用建议 [打印本页]

作者: 帅牛    时间: 2013-1-29 07:00:19     标题: 关于TB的一些使用建议

本人已经使用TB编程一段时间,在实践中发现一些问题,请TB同事参考。

1. 小bug:缺省参数只能保留小数点2位。目前解决办法:将默认参数含小数点2位以上的初始化放在Begin和End之间,但不方便。

2. 小bug:对数据的显示都是小数点6位,即使用了Round函数。目前解决办法:通过字符串一些函数,可以人为去除多余的0,但影响程序效率。

3. 不支持数组。建议至少支持一维数组。

4. 全局变量只支持500个。由于TB当前不支持数组,只能将全局变量当作一维数组来用,500个量太小,建议设置到5000个以上。

5. 全局变量只支持数字,不支持字符串和Bool型,尤其不支持Bool,不方便。建议在TB内部,将True定义为1,将False定义为-1,这样在全局变量中放进Bool变量也不会出错。

6. IIF和IIFString分别支持返回数字或字符串,不支持返回Bool类型,给编程带来不变。

7. 不支持代理服务器。这给很多上班族带来极大不便。

8. 不支持常量定义。建议添加const关键字来定义常量.

9. 建议在变量定义前加Global关键字,来定义全局变量,该变量只需要定义一次,在应用中的所有函数都可以访问到,这样可以减少很多重复变量或常量的定义。

10. 还有一个头疼的问题,TB的BAR没有固定的位置索引,一旦到后续BAR,无法轻松定位到之前的BAR位置。目前只能通过Date+Time来进行回朔。
建议给每个BAR给个固定的位置索引,如果难办,建议为BAR增加一个Tag(标签)数字属性,允许人为修改和访问,这样在程序中可设置其固定位置,以便后续BAR回朔。

11. 编译的互相依赖问题,比如,A函数调用了B函数,B函数又调用了C函数,若修改了C函数的接口,需要先将A函数禁调B函数,再在B函数中禁调C函数,才能编译C函数,再编译B函数,最后才能编译A函数,
这种编译方式很不方便,有时改了一个底层函数接口,需要将所有函数都去依赖关系才能编译。希望TB在这方面能更智能些。


盼望优化、改正,谢谢!



作者: 小米    时间: 2013-1-30 10:55:28

建议收到。会转交给开发人员的。谢谢
作者: Tony    时间: 2013-2-20 21:16:57

楼主是认真研究TB的,支持一下。

补充一条,希望能在数据导出中,将批量合约的集合保存起来,下次能够直接调出合约的集合,进行批量导出。否则,一个个点击出来,每天都要导出大量合约数据用于分析,非常繁琐,每天在手工导出数据、分析上都要花两三个小时。
作者: a1100600154    时间: 2017-9-15 16:52:48






欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/) Powered by Discuz! X2