聚宽策略研发
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_c56d36bb/joinquant-dev。
技能介绍
问题
在聚宽里写策略,容易把回测写得太“理想化”:忘记 import jqdata,没有开启动态复权,缺少 set_benchmark() 和 set_order_cost(),数据取到当前时间之后的价格,或者对停牌、涨跌停、订单失败处理不足。这些细节会导致回测结果偏乐观,甚至无法跑通。
工作方式
该技能围绕聚宽 API 的策略研发给出结构化约束:先检查 initialize 中的基础配置,再覆盖数据获取、定时任务、下单与回测验证。核心能力包括:
- 基础校验:必须包含
import jqdata,并设置set_option('use_real_price', True)、set_benchmark()、set_order_cost()。 - 策略骨架:使用
initialize、before_trading_start、run_daily、run_weekly、run_monthly、after_trading_end等函数组织策略,优先替代handle_data。 - 数据与交易:围绕
get_price、attribute_history、history、get_fundamentals、get_current_data等取数,并用order、order_target、order_value、order_target_value下单。 - 风险检查:避免未来函数,检查停牌、涨跌停、订单返回
None,并提醒买入数量保持 100 股整数倍。
关键步骤是先确定股票池与参数,再写初始化、数据获取、信号判断、下单、记录指标和日志,最后用短周期回测验证。
适用边界
它适合 A 股量化策略的代码起草、检查与调试,尤其适合均线、动量、均值回归、多因子等模板。但技能不替代真实交易风险判断,也不应缓存跨日期 API 结果;动态复权模式下价格会变化,panel 参数在新版 pandas 中也需注意兼容。涉及期货、期权等未覆盖函数时,应继续查阅聚宽 API 文档。
使用场景
- 在聚宽环境中编写均线策略时,完成 `initialize`、动态复权、基准与手续费配置。
- 调试取数逻辑时,排查 `get_price` 是否触达未来函数,并改用 `count` 或限制 `end_date`。
- 实现订单逻辑时,区分 `order`、`order_target`、`order_value` 的适用场景并校验返回值。
- 回测结果异常时,检查停牌、涨跌停、100 股整数倍和订单返回 `None` 等限制条件。
适合人员
- 刚接触聚宽 API 的量化新手,需要按检查清单搭建可运行策略骨架。
- 负责 A 股回测的算法工程师,需要排查未来函数、动态复权和订单失败问题。
- 使用 JoinQuant 做因子实验的研究员,需要用 `record`、`log` 和规范函数整理策略输出。
- 维护聚宽策略仓库的工程师,需要在代码评审中核对基准、手续费、滑点和 A 股交易规则。