以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  建议后台增加获取未成交委托的委托时间和委托价格的函数  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=7893)

--  作者:阿火
--  发布时间:2011/9/6 11:34:46
--  建议后台增加获取未成交委托的委托时间和委托价格的函数

该建议由最近一个10年交易经验的客户需求而来,理由如下:

 

他的系统是分批进场和分批出场的系统

比如: 3分钟K线,每次收阳线都买入1手 ,均线死叉离场,未了避免滑点,限价发单

对于未成交单的控制,不是简单的 N秒内不成交自动撤单,而是 N秒内不成交且成交速度(单位时间内的成交量)达到一定值才撤单后追单,追单价格是委托价上移一定的点数(据说是算法交易)

所以需要获取委托时间、委托价格

目前没这2个函数。tsubmit这个函数也不够强大,因为取得的永远是上一笔委托的未成交秒数,但是,分批买入,未成交单可能有好多笔

 

建议开发2个函数 上N笔委托单的委托价格 和 委托时间(具体的时间)

 

这样就可以通过 未成交委托单的数量 tremainqty(这里错了),用 for i=1 to tremainqty 历遍每一笔未成交委托,然后对未成交委托做相应的处理

应该这样: 

这样就可以通过 未成交委托单的委托数量N (这个N是基于依赖TBUY等交易语句或者在交易监控中的手工干预的委托),用 for i=1 to N 历遍每一笔未成交委托,然后对未成交委托做相应的处理

 

同样的,VBA获取未成交委托单信息时,目前可以获取委托单的委托价格,希望多加一个获取委托单的时间信息。

 

tsubmit(N) 有1000秒的限制。有时候可能不止这个数哦。

[此贴子已经被作者于2011-9-6 22:30:13编辑过]

--  作者:董小球
--  发布时间:2011/9/6 15:56:55
--  
好建议,但是不知道技术上实现起来难度如何
--  作者:fly
--  发布时间:2011/9/6 16:23:13
--  

需要用要分笔成交,估计运算量会较大


--  作者:阿火
--  发布时间:2011/9/6 22:21:59
--  

不需要分笔成交啊。

就是读取后台里的未成交委托单的记录而已

而这些未成交委托单的记录本身就存在,在监控里

 

 

其实VBA已经实现

 

OrderNum2           得到所有国内期货当前有效的未成交合约品种数量

 

OrderInfo2          取指定索引的未成交CTP合约信息

 

只是这个 OrderInfo2  有委托价格,没有委托时间

OrderInfo2(Index, OrderID, ConSign, Filled, Remaining, Action, OrderType, LmtPrice, Account, Kaiping, Code, Market)

 

当然,VBA取得的未成交委托记录,是针对所有操作,包括后台下单,手工下单等,并不是只针对后台下单

[此贴子已经被作者于2011-9-6 22:41:24编辑过]

--  作者:董小球
--  发布时间:2011/9/7 8:45:31
--  
应该可以研发一个指标调用VBA的xx的函数,不过不知道可行不
--  作者:阿火
--  发布时间:2011/9/7 13:07:32
--  

那是可以的。自定义函数

不过,VBA暂时不能取得未成交委托单的委托时间,取得的未成交委托单的委托价格也是所有的委托(人工、后台、图表等),不是仅仅隶属于后台