问题描述
/
解决方案
ptrade修改密码后策略停止的原因
在 ptrade 量化交易平台中,如果您修改了资金账户的登录密码,通常会导致当前客户端的登录态失效。为了保障账户资金安全,系统会断开交易连接,这直接导致正在运行的交易策略无法继续获取行情或发送交易委托,从而引发策略停止运行。
解决办法与恢复步骤
遇到修改密码后策略停止的情况,请按照以下步骤进行恢复:
1. 重新登录客户端
使用您修改后的新密码,重新登录 ptrade 交易客户端,确保交易环境重新连接成功。
2. 重新启动策略
在策略列表中找到停止的策略,手动重新启动它。
3. 策略重启时的注意事项(重要)
根据 ptrade API 文档,策略在环境重启或重新拉起时,有一些关键的机制需要注意,以避免逻辑错误或重复下单:
- 持久化变量的恢复顺序:
框架在恢复交易时,会先执行策略的initialize函数,然后再执行持久化信息恢复操作。如果您的持久化信息(如通过pickle保存的变量)保存在全局对象g中,它会覆盖掉initialize函数中初始化的同名变量。请确保您的代码逻辑兼容这一顺序。 - 避免重复执行盘前逻辑:
如果在交易时间段内重启策略,initialize和before_trading_start函数可能会被重复调用。为了避免重复委托或变量被错误重置,建议在initialize中使用set_parameters进行配置:def initialize(context): # 设置交易时间段若服务器重启,不自动执行重新拉起本交易(1为不执行) # 设置若服务器重启导致重拉交易,不重复执行before_trading_start函数(1为不执行) set_parameters(not_restart_trade="1", server_restart_not_do_before="1")
通过以上步骤和配置,您可以安全地在修改密码后恢复您的 ptrade 量化策略。