专题
聚宽新手入门教程(JoinQuant 平台实操)
一套从零开始的聚宽(JoinQuant)平台实操入门教程(GitHub LHospitalLKY/JointQuantLearning 镜像整理,2015–2017 语境)。9 篇,从「十行代码跑通第一个策略」讲到策略框架、多股票、市值轮动三版演进、因子分析与股票数据 API。这是量化跟踪的主线起点,后续「量化课堂 43 篇」会大量链接本 collection 提炼的平台概念。
第一次来,可以从第一篇开始;也可以在目录中选择感兴趣的主题。正文底部的“下一篇”会沿下方顺序继续。
关于这套内容与阅读提示
这是什么
原素材是个人整理的聚宽新手教程(非官方文档),写作风格是「先想人怎么做,再翻译成代码」。整体价值在平台机制与工程递进:initialize/handle_data/run_daily 框架、四种下单、股票池、止损止盈写法、市值轮动从 1.0 到 3.0 的演进。注意:raw 代码含大量笔误(portfolio/positions 拼写、变量名不一致、000300 指数代码多零、Python 里写 AND 等),本 collection 把它当「概念地图 + 示意代码」读,落地必须对照官方 API。
怎么读
- 先读 十行代码带你量化交易入门(最小策略 + 框架 + 回测)与 什么是量化策略(概念),建立全局。
- 再读 使用 JoinQuant 编写一个策略(数据/股票池/下单/止盈止损 API 全景 + 双均线与追涨示例),这是全库 API 地图。
- 3.1 → 2.2 是「单股→多股」,重点看资金分配教训(聚宽下单 API 与订单对象)。
- 市值轮动 1.0 → 2.0 → 3.0 建议连续读,看同一个策略的工程化演进:定时循环与计数轮动(1.0)→ 模块化、均衡资金、每日止损(2.0)→ 分钟止损、行业/概念选股、大盘择时(3.0)。
- 因子分析与股票数据两篇是 API 手册,需要时查。
- 代码别照抄(笔误多),概念与参数按本库的 concept 页为准。
主线
一条由简到繁、由「写一个能跑的策略」到「把策略做工程」的主线:
- 最小闭环(01→02):一个策略 = 初始化 + 周期循环两段;用代码表达「先定股票、每天看信号买卖」;回测三指标判断好坏。概念上补「策略 = 输入/逻辑/输出、逻辑 = 选股/择时/仓位/止盈止损」。
- 平台 API 全景(03):行情数据五取法(data/attribute_history/history/get_current_data/get_price)+ 财务 get_fundamentals;股票池三来源;四种下单;止盈止损写法;两个官方示例(双均线、多股票追涨)演示四个入口(initialize/before_trading_start/handle_data/run_daily)。
- 多股票与分散(04):for 循环遍历股票池 + 「资金要平分」——多股票的意义是分散风险,资金不散就名存实亡。
- 轮动策略三版演进(05→06→07)——本套教程的工程主线:
- 1.0:交易对象从固定股票变成「每 10 天重选的全 A 最小市值 5 只」;新机制 run_daily + 计数取模做低频;换仓 = 不在名单就卖、现金均分买。
- 2.0:代码抽函数(pick/trade/stop);意识到「平分现金」导致持仓失衡 → 改 order_target_value 摊总资产;过滤停牌/涨停/ST;止损独立每天跑。
- 3.0:节奏再细分(止损按分钟);选股域扩展行业/概念;加「沪深300 vs 20 日均线」决定满/半仓的大盘择时。
- 从策略到研究(08→09):因子 API 把指标对象化(可批量算、为因子检验铺路);证券元数据 API(上市退市/ST/两融)服务股票池过滤与资金面。
贯穿的论证:策略 = 规则,平台 = 把规则按时点拆成函数;工程难点都在「资金怎么分、节奏怎么控、对象怎么过滤」,而不是信号本身。
关键概念
- 聚宽策略框架(initialize / handle_data / before_trading_start) — initialize / before_trading_start / handle_data 入口体系
- run_daily 与任务节奏控制(定时任务) — run_daily 定时与任务节奏(every_bar/open/before_open、计数轮动)
- 聚宽下单 API 与订单对象 — 四种下单 API 与资金分配(order_value vs order_target_value)
- 股票池(交易对象范围与过滤) — 股票池来源(指数/行业/概念/全市场)与过滤
- 聚宽行情与财务数据获取 API — 行情五取法 + get_fundamentals
- 止盈止损与持仓管理(聚宽写法) — 止盈止损与持仓管理写法
- 聚宽因子分析 API(Factor 与 calc_factors) — 因子分析 API(Factor/calc_factors)
- 聚宽证券元数据 API(股票信息 / ST / 融资融券) — 证券元数据/ST/融资融券 API
- 量化策略的组成(输入 / 逻辑 / 输出) — 量化策略的组成(输入/逻辑/输出)
- 回测评价三指标(收益 / 最大回撤 / 交易次数) — 回测三指标(收益/最大回撤/交易次数)
读完应该记住的
- 聚宽策略是「入口函数 + 定时注册」:initialize 一次、before_trading_start 每交易日盘前、handle_data 每周期、自定义函数用 run_daily 挂节奏。新代码优先 run_daily。
- 行情取数五方式按三问选:能否研究环境用、要当期还是历史、单股还是多股——attribute_history 单股多字段可跳停牌,history 多股但单字段,get_price 是研究侧万能接口。
- 下单四 API 的语义差异决定资金能不能均衡:order_value 是加一笔,order_target_value 是把仓位拉回目标;「每只持有总资产均分」必须用后者,否则长期入选的股票越积越多。
- 清仓与止损统一写
order_target(x, 0);止损判断用price/avg_cost比例,且要独立高频跑(每日/分钟),别等低频调仓周期。 - 轮动策略 = 定期重排名单 + 对账换仓:范围要在周期内现算(市场在变);卖出条件是「不在名单」,不是「跌了」。
- 选股域可插拔:指数/行业/概念/全市场换来换去,选股与轮动逻辑不用改——股票池是数据问题不是策略问题。
- 回测三指标(收益、最大回撤、交易次数)只是入门口径;代码流程跑通 ≠ 策略有效(教程示例自己就是反例)。
- 质量警示:raw 代码笔误很多(portfolio/positions、i 与 security 混用、0003000 多零、Python 里 AND、600000.SXHG),所有参数与 API 用法以官方文档为最终依据;本批各页「不确定 / 待验证」已逐条列出。
- 本教程是平台实操入门,不是策略有效性的证据;哪些策略真的能赚钱,留待量化课堂与回测方法论系列回答。
更新 2026-09-06