24.281 才收到平多的回报, 那 22.281 函数输出的平多未成交数量的确是获取不到的,因为这个时刻都没有收到成交回报呢。 回报是柜台返回的,从报单到收到委托之间需要一定的时间,并不是秒回的。
您这边具体是什么需求呢,是委托单一发出去,立刻就要判断未成交数量吧?
我要的是tbuy,TSELL等交易指令触发后,等成交回报后在执行策略的后面语句,我要拿到成交回报才能根据成交回报继续策略的语句,没有拿到成交结果,ini里写入的都是空值比如:TSELLSHORT(品种全卖持>0, 品种全卖持,LMT,DYNAINFO(7)+MINDIFF,0,AC,STKLABEL);//有空单,平空
成交回报了才能拿到:转上平空买价,然后继续计算:
IF (空持仓均价-转上平空买价)>0 THEN
BEGIN
空平仓亏损次数:=空平仓亏损次数+1;
IF 空平仓亏损次数>1 THEN
平均空平仓亏损率:=(平均空平仓亏损率*(空平仓亏损次数-1)+(空持仓均价-转上平空买价)/空持仓均价*100)/空平仓亏损次数;
ELSE
平均空平仓亏损率:=((空持仓均价-转上平空买价)/空持仓均价*100)/空平仓亏损次数;
TGLOBALSUMITEX要等到下单回报才有值,TISREMAINEX也要等到下单回报才有值吗?
你是想等到订单成交后,再执行相应的动作?
这个pel没有事件反馈的
你如果一定要根据这个做,建议使用vb python c++
这几个里面都有事件订单状态更新,你可以在里面进行编写
2021-01-20 13:37:52.504 【下单】CF05 价15085.000000 量1 买卖1 类型0 开平0 账户180655 Formula 1
2021-01-20 13:37:52.504 【下单】确认报单已发送 ID=-1054652333 RefID = 5830
2021-01-20 13:37:52.535 【指令】收到回报指令 ID = -1054652333 RefID = 5830
2021-01-20 13:37:52.535 【回报】180655 : CF105 - 已报单 1 价格:15085 开 卖
2021-01-20 13:37:52.535 【指令】收到回报指令 ID = -1054652333 RefID = 5830
2021-01-20 13:37:52.575 【指令】收到成交回报指令 REFID = 5830 vol = 1
开发一个函数,把那些指令都拿来啊
触发TBUY /TSELL/TBUYSHORT/TSELLSHORT---->下单-->报单(产生报单ID)-->下单回报(根据报单ID回报)---->成交回报(根据报单ID回报),交易系统应该可以拿到这些结果啊
这个事件回报本身就不适用在pel的,订单状态更新不是一个函数,他是类似事件驱动那种
你在pel里使用函数都是主动的,而事件驱动是被动获知
两者是不一样的,本身你要对订单做这类细致操作就是建议通过上面建议的几种语言