A帐户~
1913买入1手c09
B帐户执行同样操作~
下面这个是跟3分之1的单子~不过是通过成交回报~
我需要的是跟限价单的操作~
谁能帮我改一下代码?
以下内容为程序代码:
1
2 Sub ORDER_OrderStatusEx2(OrderID, Status, Filled, Remaining, Price, Code, Market, OrderType, Aspect, Kaiping, Account, AccountType)
3 if Status="Tradeing" and filled>0 and Account="800007" and StrComp(Code,"IF12")<>0 then
4 'if Status="Tradeing" and filled>0 and Account="800007" then
5
6 Call Order.HoldingInfoByCode2(Code, Market, BuyHoding_1, BuyCost_1, BuyTodayHoding_1, SellHoding_1, SellCost_1, SellTodayHoding_1, PNL_1, UseMargin_1,Account)
7 Call Order.HoldingInfoByCode2(Code, Market, BuyHoding_2, BuyCost_2, BuyTodayHoding_2, SellHoding_2, SellCost_2, SellTodayHoding_2, PNL_2, UseMargin_2,"800052")
8
9 if round(BuyHoding_1/3)>BuyHoding_2 then order.Buy 1,round(BuyHoding_1/3)-BuyHoding_2,0,0,code,market,"800052",0
10 if round(BuyHoding_1/3)<BuyHoding_2 then order.Sell 1,BuyHoding_2-round(BuyHoding_1/3),0,0,code,market,"800052",0
11 if round(SellHoding_1/3)>SellHoding_2 then order.Buyshort 1,round(SellHoding_1/3)-SellHoding_2,0,0,code,market,"800052",0
12 if round(SellHoding_1/3)<SellHoding_2 then order.sellshort 1,SellHoding_2-round(SellHoding_1/3),0,0,code,market,"800052",0
13
14 end if
15 End Sub
你好~
上述代码只是在委托成交的时候才会触发B帐户的操作~
我的意思是A帐户一旦发出限价单~立马触发B帐户发出限价委托单~
不需要出现委托单成交~
如何改进上述代码?
OrderStatusEx2 事件
当委托订单出现变化时发生,比如撤单、成交等
OrderStatusEx2(OrderID, Status, Filled, Remaining, Price, Code, Market, OrderType, Aspect, Kaiping, Account, AccountType)
OrderID 订单ID,使用Buy,Sell,BuyShort,SellShort等方法下单时返回的订单ID
Status 订单的变化类型,有如下字符串值:
"Cancelled" 表示订单已经撤销
"Submitted"和"PreSubmitted" 表示订单已经提交,当只成交一部分尚未完全成交时也会出现此事件,此时已成交数量在Filled参数中显示
"Filled" 表示本地订单已经全部成交
"Tradeing" 每笔成交回报,此时Filled是本次成交数量,Remaining将始终为0
"Inactive" 表示本次委托无效,比如价格超过允许范围,委托数量超出范围等等
"PendingSubmit" 本次委托已经发送服务器,但是服务器未发出确认消息(仅IB有效)
"PendingCancel" 本次撤单委托已经发送服务器,但是服务器未发出确认消息(仅IB有效)
Filled 已成交数量
Remaining 未成交数量
Price 成交价格
Code 本次有关的品种代码
Market 本次有关的品种市场
OrderType 下单类型 0限价 1市价 2停损 3限价停损
Aspect 买卖方向 0买 1卖
Kaiping 开平仓类型 0开仓 1平仓 2平今
Account 用户操作账户名称
AccountType 账户类型 0IB 1CTP 2金仕达
===================
也就是Status="Submitted"时~无论是否成交~
我需要委托单的价格与委托手数~如何取?
if Status="Tradeing"
全部改成
if Status="Submitted" 就可以了