以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp) -- 高级功能研发区 (http://www.weistock.com/bbs/list.asp?boardid=5) ---- 关于定时撤单的问题 (http://www.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了 ![]() ![]() |
-- 作者: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 |