【A函数-账户委托信息】 A_GetOrder-获取报单的localDateTime字段值问题

测试环境:

TBQuant3 :3.2.42

TB期货模拟账户


测试过程:

今天是2026年3月26日,昨天晚上也就是3月25日用TB期货模拟账户对螺纹钢rb2605合约下了三单,分别是卖出开仓,买入平今仓,卖出开仓, 其中第一单是完全成交,后面两单故意控制价格只申报没成功,用于今天26日的测试,具体如下图

今天26日早上没有做任何下单操作

显示出所有未完成的委托单信息,代码如下


        Array<Integer> orderIds;
        //获取指定合约未完成的报单数组
        Bool ret = A_GetUnFillOrderIDs(Symbol, orderIds, "", i);
        Integer j;
        For j = 0 To GetArraySize(orderIds) - 1
        {
            Print("     - OrderID:" + Text(orderIds[j]));
            Order value;
            //获取报单的详细信息
            ret = A_GetOrder(orderIds[j], value);
            HF_Debug_Order(value);
        }

如期获得两个未完成的委托单,如下图所示

注意到localDateTime字段都是 1970-01-01 00:00:00

问题:

1. 显示1970而不是实际的本地时间是否只有模拟交易账户才会这样? 真实账户这个信息的显示是否会因为期货公司或者交易所有所不同?

没有获取委托列表函数和指定合约委托信息,如何避免重复下单?
报单索引值的使用问题
【A函数-账户委托信息】 A_GetLastOpenOrderIndex 返回信息疑问
TBPY中get_account()函数是否可以获取账户信息?
获取委托单的状态值
交易单元一启动立刻就用A函数获取信息是不是有问题?
如何获取账户持仓的所有品种信息?
订单管理,order信息获取
A_DeleteOrderV2-撤指定报单索引的委托单
如何用A函数获取账户持仓头寸的成交时间

看错了。。。

显示非本机啊


自己打印一下看看对不对

不用这个函数

谢谢提醒,本机下单后可以看到时间

遇到无效值就要自己思考一下

问题很容易找出来

你这个debug里面是什么东西,这个不是系统函数吧

我自己写的一个用户函数,把结果规则输出下

这个是原始数据

其实我的问题就是是不是因为是模拟账户的原因,所以这个order结构体里就不提供localDateTime这个值,实盘的话是不是一定会提供?

再补充一点,这个单子是我昨晚用手机版本的智大领峰登录模拟账号手工下的单,我理解的是下单的时候localDateTime信息会包含在发单里,等getOrder的时候还能拿到

试了在电脑上手工下了一单,这次能看到localDateTime了,不纠结了😁

TBQ是提供本地时间的

如果不是用quant3下的单子是获取不到本机委托时间的

策略必须要过滤返回值

和报单序号一个概念

代表没有发生过

也是无效值