PTrade 代码约定、状态与持久化

全局状态

需要跨回调使用的状态通常放在全局对象 g 中,并在 initialize 里显式初始化。读写名称必须完全一致。

重启与持久化

模拟盘或实盘任务重启后,内存变量可能丢失。目标环境支持持久化时,应只保存可序列化对象,并验证恢复顺序。券商升级或环境重启时,框架可能先执行 initialize,再用持久化值覆盖同名状态。

异常处理

捕获异常时必须记录 API、证券、日期和错误信息。不要使用宽泛的 except Exception: continue 静默清空股票池或跳过全部交易。

平台边界

PTrade 使用 initialize(context)handle_data(context, data)order* 系列函数,不应混入其他策略平台的生命周期或下单接口。