以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (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=8828)

--  作者:wsanle
--  发布时间:2011/11/5 13:42:47
--  求助:用ORDERQUEUE顺序下单问题

对ORDERQUEUE顺序下单有些疑惑,是不是买平和卖开,或者卖平买开必须成对同时加ORDERQUEUE,如:

Tsell(1,0,Mkt,0,0,‘800888’),ORDERQUEUE;

TbuyShort(1,100,Mkt,0,0,‘800888),ORDERQUEUE;

 

Tsellshort(1,0,Mkt,0,0,’800888‘),ORDERQUEUE;

Tbuy(1,100,Mkt,0,0,’800888‘),ORDERQUEUE;

按使用说明理解,是把所有报单放入队列,按顺序成交一个委托下一个。我的问题是:平仓反手开仓,才需要先平仓后开仓,也就需要在Tsell和Tsellshort指令后加ORDERQUEUE,但如果我在程序中的其他地方只需要平仓或者开仓,并不需要反手,那么我的理解有两种:一是程序只对加上ORDERQUEUE的一对平仓、开仓指令放入队列按顺序先后成交,对程序其他地方没有加ORDERQUEUE的交易指令不按队列顺序委托成交? 二是一旦程序中任何地方出现有一对平仓、开仓指令用了ORDERQUEUE,那么整个程序都会将指令放入队列,按顺序成交一个再委托下一个? 我的那种理解是对的?请老师帮助解答,先谢了!


--  作者:阿火
--  发布时间:2011/11/5 18:43:12
--  
第一种理解正确 。如果没成交撤单了,继续下后面的单
[此贴子已经被作者于2011-11-5 18:44:24编辑过]

--  作者:wsanle
--  发布时间:2011/11/6 18:26:18
--  继续请教ORDERQUEUE问题

假如我有一段代码如下:

NN:=barslast(day<>ref(day,1))+1;

If NN=1 Then

  Begin

  Tsellshort(1,0,Mkt,0,0,\'800888\'),ORDERQUEUE;     //平仓1

  Tbuy(1,1000,Mkt,0,0,\'800888\'),ORDERQUEUE;   //开仓1

  End

If NN=5 Then

   Begin

   Tbuy(1,500,Mkt,0,0,\'800888\');                    //开仓2

   End

以上代码在资金充足的情况下,开仓2  执行委托,是否一定要等到 平仓1 完成后,再等 开仓1 也成交后才执行 开仓2 的委托?谢谢解答!

 


--  作者:阿火
--  发布时间:2011/11/6 18:38:31
--  

开仓2   出信号就直接发单,不等待。


--  作者:wsanle
--  发布时间:2011/11/7 11:23:45
--  

多谢,我明白了!

 


--  作者:木鱼石传说
--  发布时间:2013/8/20 22:23:33
--  
学习中
--  作者:木鱼石传说
--  发布时间:2013/8/20 22:23:47
--  
学习