以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  orderqueue在单账户多策略的时候的运行机制  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=98300)

--  作者:a141027
--  发布时间:2016/6/7 0:38:17
--  orderqueue在单账户多策略的时候的运行机制
公式说明里已有多账户和单账户单策略的情形,如果是单账户多策略呢?比方说一个账户里运行三个策略,这三个策略里都有下面这段代码,为说明方便,我现在假定这三个策略同时满足了cond条件

tbuy(cond,vol,lmt,P1,0),orderqueue;
tbuy(1,vol,lmt,close,0),orderqueue;

系统是以下哪种运行机制?还是都不是,如果都不是,会是怎样?

1. 同时发出三个策略的第一条指令,然后哪个策略的指令成交了就接着发出该策略第二条指令,也就是说这三个策略的指令序列是各自独立的。
2. 不是同时发出第一条指令,而是以某种次序(什么次序?)执行第一个策略的指令序列,等它全部完成了之后再执行第二个策略的指令序列。。。也就是说三个策略的指令序列被排列在同一个序列里执行。

谢谢。

--  作者:yukizzc
--  发布时间:2016/6/7 9:03:50
--  

第二种方式,用了order的报单都是存放在统一队列中的。


--  作者:a141027
--  发布时间:2016/6/7 9:21:48
--  
了解。谢谢。
--  作者:a141027
--  发布时间:2016/6/7 10:27:31
--  
个人觉得把不同策略的指令都放在同一个队列里执行似乎不能满足使用需求,因为不同策略的交易思路完全不同,让其他策略排队等候一个不相干的策略的指令执行完毕再执行很大程度上限制了orderqueue的作用,只有各个策略的指令队列彼此独立才有意义。这好比虹桥机场想让登机的旅客保持良好秩序而要求登机者排队登机,这本来是个好事,但却把全国机场登机的旅客都排列在一个队列里逐个登机,虹桥登机的旅客刚好排在北京深圳后面那就得等北京深圳的旅客全部都登机完毕才能登机,那么排队这个事就变成个累赘了,谁还愿意排呢?

我估计绝大部分使用自动化交易的投资者都不会只使用一个策略,即使是只使用单个交易策略,有时候为了提高效率或者是管理上更方便些的原因,也会将单一的策略拆分成若干个独立的子策略,然后叠加运行的方式来实现。显然, orderqueue的本意是提供一个工具,就好像排队一样,它也的确有市场需求,但这个工具目前还不够完备,无法发挥它应有的作用。建议你们考虑进一步完善它,把不同策略的队列独立开来。

--  作者:pyd
--  发布时间:2016/6/7 10:33:00
--  

我们后续考虑下这个建议,谢谢。