个人觉得多策略、多账户用后台,更好些
我们在做实盘,多账户情况下每个图表设置各自的交易账户方便管理,TB的方法是一次设置,然后保存成工作室,下次可直接打开,实际上更方便快捷,也更细致。后台程序化的多账户由于不是并行,很怕一个账户停下后,其他跟着停下等执行。
现在的金字塔功能已经很不错,希望能听取实盘的客户的建议,做的更优秀。
图表不是并行的,也是顺序执行。
后台策略是单线程运行,如果排在前面的策略发出睡眠指令,后面的策略都要跟着等。如果后台预警监控多个策略,比如5个以上,那么后面的策略明显吃亏。
图表不是并行的,也是顺序执行。
现在cpu都是多核了,金字塔还玩串行?
楼上已经解释的很清楚了, 多账户的交易指令发出是并行的,其中有个别账户没有成交是不影响的.
但是如果你加了ORDERQUEUE外另当别论.此外向你们普及一下多核的计算机知识 http://www.weistock.com/bbs/dispbbs.asp?boardid=2&Id=49 问题36
即便加了ORDERQUEUE, 出现个别账户无法成交,也不会影响到下个账户的顺序指令发出
假如有5个预警,A B C D E
A 用了sleep(5000) ,那么,会影响到B C D E ,因为必须过了5秒,才开始执行B ……
其实问题的关键是用sleep的目的。
如果sleep的目的单个策略要做到平仓后反手(平多开孔),可以用 if tbuyholdingex=0 and tremainqty=0 then tbuyshort
如果是甲 股指模型控制 A户、B户,间隔5秒下单 。乙橡胶模型 控制A户、 B户间隔5秒下单
如果 A户下股指后sleep(5000) ,再下B户 ,会影响。可是变通一下,用extgbdata控制一下,A下了股指后,直接执行橡胶模型A下了橡胶,然后sleep(5000),第二次轮询时,再对B户下单股指和橡胶
还有其他方法,比如:甲模型把乙橡胶模型的信号引用过来,下单时对A户下单(包括股指和橡胶),5秒后对B户操作股指和橡胶
或者是其他的目的,反正不同目的,都可以有实现的方法