等级: 新手上路
- 注册:
- 2021-7-9
- 曾用名:
|
几个问题请教一下:
代码示例:Sub MarketData_ReportNotify(ReportData)
Call Order.HoldingInfoByCode2("AG01","SQ",BuyHolding,BuyCost,BuyTodayHolding,SellHolding,SellCost,SellTodayHolding,PNL,UseMargin,"")
If [size=14.6667px]BuyHolding<4 and NewPrice<5000 Then [size=14.6667px]sOrderID=Order.Buy(0,1,5100,0,"AG01","AQ"",0) '持多单小于4手时,按1手开多单,并返回 OrderID
[size=14.6667px]End Sub
[size=14.6667px]在实际执行过程中,会发现经常出现开仓数量超出 4 手的情况,有时又不会。经分析,认为是收到行情数据即触发开仓动作,但前一笔申报还在进行中或未成交(挂单价远高于卖1价)导致,增加 OrderStatusEx 事件监测发现报单、撤单、刷新[size=14.6667px]BuyHolding 之间有个时间差的问题所导致,平仓情况类似。
[size=14.6667px]1、象这种情况,是否有较好的方法来避免超限开仓的方案?
[size=14.6667px]2、[size=14.6667px]OrderID 返回的数据(订单ID号),是不是一定为数字型?
[size=14.6667px]3、[size=14.6667px]TraderDetaild3.mdb 文档发现经常丢失 “盈亏” 字段的值,笔数倒没错,成交后写这个文档的数据是实时的吗?
[size=14.6667px]4、TraderDetaild3.mdb 这个文档中,是否可以增加成交价字段?便于取用
[size=14.6667px]谢谢!
|
|