同步运行的期货程序里想把自上次检查以来收到的服务器通知集中交给日志或界面处理可以使用天勤 TqSdk 的TqNotify。它提供的是通知收集入口不是启动前历史日志恢复也不是成交确认接口。在已有 API 上创建一次通知对象假设程序已有正常驱动的api先创建与它绑定的通知对象notifyTqNotify(api)这一步放在初始化位置不要为了每轮读取而重新创建一个对象。账户连接与登录仍由原程序负责这里不需要另写账号配置。推进更新后取新增列表在原有同步更新循环中读取whileTrue:api.wait_update()new_notifiesnotify.get_notifies()foriteminnew_notifies:print(item)# 本地显示示意get_notifies取得的是自上次调用以来的通知列表没有新通知时返回空列表。空列表是正常情况不应仅凭它判断程序出了故障也不要期待每次wait_update后都必然出现通知。示例中的print只是把各项交给本地显示需要自己的界面或记录时可以在这个处理位置安排。这里没有真实通知文本、通知次数或外部推送结果。通知与业务核对各有职责收到服务器通知后仍要根据自己的用途处理内容不能把“收到一条通知”自动解释成某笔委托已经成交。真实委托、成交和持仓需要用对应业务数据核对。TqNotify 也不替你提供跨进程持久历史、恰好一次的外部送达或短信、微信推送保证。把它用作现有同步程序的增量通知入口便能清楚区分通知读取与后续显示、保存和业务判断的职责。
阅读完成 · 觉得有帮助?