以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  关于定时撤单的问题  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=60964)

--  作者:wn10000neng
--  发布时间:2014/1/15 10:04:31
--  关于定时撤单的问题
请问,我下单后,过了3秒如果不成交,就要撤单,那么“过了3秒”怎么写
--  作者:jinzhe
--  发布时间:2014/1/15 10:10:50
--  
系统自带的就有,如果想要用代码,这个得要用VBA了
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

--  作者:wn10000neng
--  发布时间:2014/1/15 10:14:12
--  

我要用代码实现的,后台策略,有相关的函数可以实现吗

 

还有,请说下VBA的思路,比如怎么知道下单后过了10秒


--  作者:jinzhe
--  发布时间:2014/1/15 10:15:47
--  
这个请去高级区咨询,
--  作者:wn10000neng
--  发布时间:2014/1/15 10:18:13
--  
帮我把帖子移到高级区可以吗
--  作者:王锋
--  发布时间:2014/1/15 10:34:38
--  

编写了一个套利的vba程序框架模板,感兴趣的朋友可以在此基础上做进一步开发

http://www.weistock.com/bbs/dispbbs.asp?BoardID=5&ID=7088&replyID=&skin=1

 

请参考此贴,里面有定时追撤单的代码


--  作者:wn10000neng
--  发布时间:2014/1/15 10:47:45
--  

能否说下撤单思路,怎么实现定时,每笔委托单要各自定时吧

有空我取看看那个帖子


--  作者:guotx2010
--  发布时间:2014/1/15 16:26:32
--  
order对象中有一个方法,返回委托单的下单时间,你把它转换为hh:mm:ss的格式,然后与系统时间进行比较,格式是Datediff("s",T1,Time) 如果超过3秒就撤单。

Sub OrderCheDan() \'获取未成交单,指定秒数后撤单
PendingCount=Order.OrderNum2
For i=0 to PendingCount-1
Call Order.OrderInfo2(i,OrderID,ConSign,Filled,Remaining,Action,OrderType,LmtPrice,Account,Kaiping,Code,Market) 
\'application.MsgOut Cdate(time) & ",sAction:" & sAction & ",sKaiping:" & sKaiping & ",LmtPrice:" & LmtPrice & ",OrderID:" & OrderID
OrdTime=right(Order.OrderInfoTime2(i),8)
\'application.MsgOut "OrdTime:"&OrdTime
if Datediff("s",OrdTime,Cdate(time))>10 then     \'大于10秒撤单
Call Order.CancelOrder( OrderID) 
end if
Next
End Sub


--  作者:李亚弟
--  发布时间:2014/2/28 10:53:25
--  
mark