V6 迁移问题表:用户问答
由bq1fuwkt创建,最终由bq1fuwkt 被浏览 2 用户
本表围绕旧、新环境里的 bigquant。先核对代码使用的模块;两边相同的 from bigquant import dai, bigtrader 无需修改。完整差异见按模块对照用法。
| 用户遇到的现象 | 先怎么处理 | 怎么验证 |
|---|---|---|
旧代码调用 bigquant.init(...) 报属性不存在或认证失败 |
本地使用新环境时,先用 bq auth login --apikey ... 配置凭证;Studio 内检查当前会话身份。 |
认证状态正常,原查询能返回数据。 |
同一条 bigquant.dai.query(...) 在新环境结果不同 |
保留查询结构,检查 filters、SQL、数据源、日期/标的、字段类型、空值、排序与滚动窗口。 |
对比旧、新环境的行数、键和关键计算值。 |
bigquant.bigtrader.IContext / IBarData / PerOrder 报错 |
这是同一 bigquant.bigtrader 在两环境间的接口变化。按新 Context、DataReader 和费用接口调整回调;只换类型名不够。 |
同输入回测,对比订单、成交、持仓和收益。 |
bigtrader.run(data=...) 或回调里的 context.data 报错 |
新版将自有信号作为 datasets={"signal": df} 传入,在回调中从 context.datasets["signal"] 读取。 |
核对信号日期、标的与交易日匹配,并查看成交。 |
Frequency.DAILY、engine=、render= 等旧参数报错 |
按新 run() 的频率字符串和参数重新配置;确认旧参数原先承担的功能。 |
特别检查分钟/tick 订阅、回测引擎行为和输出。 |
旧 performance.summary / raw_perf 读取失败,或回测结束却零成交 |
新结果从 perf.diagnostics、perf.metrics、perf.result 读取;先查诊断、订单和成交,再看收益。 |
逐日比较订单、成交、持仓、资金和主要指标。 |
M.bigtrader.v30(data=新 DataSource) 报 not supported instruments type |
这是独立 M 模块与新 DataSource 的输入兼容问题。可在副本中先把 DataSource 读成 DataFrame,再传给旧模块;其他模块调用先保持原样。 |
核对 DataFrame 的 date、instrument、信号和回测结果。 |
| PyArrow 要求 NumPy 2,但运行时导入 NumPy 1.x | 检查实际导入的 NumPy 路径和版本;用户目录中的旧包可能覆盖环境依赖。尝试先删除自己安装的冲突包,例如 numpy等,重启内核后(ipynb)后再尝试,还是出错保留信息联系平台支持处理任务环境。 | 导入路径与目标环境一致,原查询和回测重新通过。 |
| Notebook 已改,运行任务或分享版本还是旧代码 | 分别确认 Notebook、运行任务和已发布代码版本;副本验证后按原流程更新对应对象。 | 检查实际执行代码和结果。 |
若代码使用的是独立的裸 import dai 或旧 bigtrader 包,请先确认那是另一套入口;不要把它们的差异误记为旧 bigquant 与新 bigquant 的差异。