「价格突破近 20 日高点就买」——这是海龟交易法、唐奇安通道(Donchian Channel)在散户口语里最常见的版本。逻辑朴素:新高意味着趋势延续,追涨吃波段。但在 A 股,同样的句子会撞上另一套现实:涨跌停板、T+1、跳空高开、题材一日游、以及「突破当日追进去、次日低开」的追高风险。
更麻烦的是概念与工具之间的缝隙:很多平台没有名为「唐奇安通道」的按钮,可视化编辑器里也没有「海龟法则」一键模板。若把不存在的功能写进策略,回测再漂亮也是空中楼阁。
本文做两件事:(1)把通道突破思路诚实地形式化为「近 N 日高点突破 + 可选过滤」;(2)用筛选、批量/单账户回测、动画复盘走一遍证伪流程。示例界面来自 LemonPicking——常规日线用后复权、信号收盘确认、下一根开盘成交并计佣金滑点;与打板专项(未复权、涨跌停约束)明确区分,后者属专业版能力。
一、海龟 / 唐奇安在口语里是什么:先通俗化
| 概念 | 口语 | 量化等价(日线) |
|---|---|---|
| 唐奇安上轨 | N 日最高价 | max(High, N) |
| 突破买入 | 收盘价站上 N 日高点 | Close > max(High, N)[1] 或 Close ≥ 昨日 N 日高 |
| 唐奇安下轨 | N 日最低价 | min(Low, N) |
| 出场 | 跌破 M 日低点 | Close < min(Low, M) |
| 海龟加仓 | 每 0.5ATR 加一仓 | 需 ATR 组件与复杂仓位规则(进阶) |
经典海龟用 20 日突破入场、10 日反向突破出场(或 55/20 长短组合)。个人研究可先从单档 20/10 开始,再对比 55/20 是否更少假突破。
诚实边界: LemonPicking 界面若无「Donchian Channel」同名指标,请用 「近 N 日高点突破」 类组件或 比较条件:收盘价 > 近 N 日最高价(不含当日) 实现等价语义。不要编造「内置海龟模板」——有就是有,没有就用比较条件拼。
经典双系统:20/10 与 55/20 怎么选
海龟原版常用两套通道:短通道抓启动,长通道抓大趋势。个人研究可先做对照:
| 组合 | 入场 | 出场 | 预期 |
|---|---|---|---|
| 20 / 10 | 近 20 日高 | 近 10 日低 | 信号多,假突破多 |
| 55 / 20 | 近 55 日高 | 近 20 日低 | 信号少,更趋势 |
| 20 入 / 10 出 + MA 过滤 | 突破且 Close>MA(60) | 不变 | 折中 |
对比时保持同一标的池、同一成本假设,只改 N——否则无法判断是「长通道有效」还是「碰巧躲过熊市」。
二、A 股突破追涨的特殊约束
| 约束 | 对突破策略的影响 | 回测口径建议 |
|---|---|---|
| 涨跌停 | 突破日一字板,开盘买不到 | 常规后复权回测不模拟「排板」;打板研究用专业版未复权 + 涨跌停约束 |
| T+1 | 当日买入当日不能卖 | 出场信号最早下一交易日执行(引擎默认下一根 K 线处理) |
| 跳空高开 | 突破确认后次日高开,追入成本高 | 坚持「下根开盘成交 + 滑点」,勿用信号日收盘价 |
| 题材脉冲 | 假突破多、回落快 | 需过滤(量能、均线多头)或更长 N |
| 成本 | 追涨策略交易少但单笔大 | 佣金、滑点对单笔收益敏感 |
系列前文讨论过 T+1 与涨跌停对回测可信度的影响——突破类策略是重灾区:看起来「突破 N 日高」,实盘中可能是涨停价成交或根本成交不了。
突破策略在 A 股的三种「假好看」
| 类型 | 表现 | 回测里常怎么被美化 |
|---|---|---|
| 涨停突破 | 突破日一字板 | 常规模式仍可能按次日开盘「买到」 |
| 跳空高开 | 确认后次日 +5% 开盘 | 滑点设太低时忽略追价成本 |
| 题材退潮 | 突破后三日 A 字杀 | 批量平均被其他票稀释 |
识别方式不是改口径逃避,而是:动画复盘 + 单账户 + 保守滑点 三重对照。若三重对照下结论仍成立,再继续加 AND 过滤;若任一环节翻转,先修假设而非加指标。
三、形式化:「近 N 日高点突破」怎么写
推荐最小可回测版本(日线、后复权):
| 层级 | 写法 |
|---|---|
| 指标 | 近 20 日最高价(或 Rolling High);可选 MA(20) 作趋势过滤 |
| 入场 | 比较条件:Close > 近 20 日 High(通常不含当日,避免 trivial) |
| 过滤(可选) | AND:Close > MA(20);或成交量 > 均量 × 1.2 |
| 出场 | Close < 近 10 日 Low;或固定持有 20 日 |
| 仓位 | 固定 25%–30%;单账户最大持仓 3–5 |

与「严格唐奇安」的细微差别
严格唐奇安上轨 = 过去 N 根 K 线最高价(不含当前 K 线)。若比较条件写成「Close > 含当日的 N 日高」,几乎永不触发或语义错误。搭建后先用筛选扫一只熟悉的大票,看突破日是否与肉眼一致。
出场规则的两种流派
| 流派 | 规则 | 特点 |
|---|---|---|
| 通道对称 | 跌破 M 日低出场 | 与海龟一致,持仓随波动拉长 |
| 固定持有 | 入场后持有 H 日 | 简单,便于与突破入对比 |
| 均线辅助 | Close < MA(20) 出场 | 常比 10 日低更早离场 |
回测对比时,入场相同、只改出场——否则你无法知道收益变化来自突破还是来自出场运气。个人研究建议先固定「10 日低出场」,再试 MA 出场,记录交易次数与平均持仓天数变化。
四、突破 vs 金叉 vs 打板:别混赛道
| 类型 | 触发语义 | 典型 N | 复权 | 适用模块 |
|---|---|---|---|---|
| 通道突破 | 创新高 | 20 / 55 | 后复权 | 常规回测 |
| 均线金叉 | 短均线上穿长均线 | 5 / 20 | 后复权 | 常规回测 |
| 打板 / 涨停突破 | 涨停价、排板成交 | 当日 | 未复权 | 专业版打板回测 |
把打板结果与唐奇安突破曲线放在一起比年化,是口径错误。本文聚焦后复权日线通道突破;若你研究「涨停突破」,请切换专业版打板能力,不在此混谈。
读者常问:没有唐奇安组件还能不能做?
能。只要比较条件能表达「收盘价 > 过去 N 根 K 线最高价(不含当日)」,语义就与唐奇安上轨突破等价。下轨出场同理。界面文案可能是「近 N 日高点突破」「滚动最高价」等,看语义不看名字。搭建后务必用单票筛选核对边界日(例如第 N+1 根 K 线是否该触发),避免 off-by-one 导致全盘结论失真。
五、路径 A:编辑器搭建 20/10 突破策略

可执行步骤
- 1. 新建策略,命名如
突破20高_出场10低_v1。 - 2. 添加入场比较:Close > 近 20 日最高价(参数 N=20,确认是否 exclude current bar)。
- 3. (可选)AND 过滤:Close > MA(20) 或 成交量 > MA_VOL(20)×1.5。
- 4. 出场比较:Close < 近 10 日最低价(N=10)。
- 5. 仓位:30%;回测启用单账户,最大持仓 5。
- 6. 验证策略 → 保存。
- 7. 筛选(最新 K 线 + 自选股)→ 看命中是否合理。
- 8. 批量回测 → 单账户 → 动画复盘。
六、路径 B:AI 生成突破策略草稿
与系列入门文同一流程:用自然语言描述,再人工验收。
示例 prompt:
当收盘价突破过去 20 日最高价时买入;当收盘价跌破过去 10 日最低价时卖出;每次使用总资金的 30%,最多同时持有 5 只股票。
生成后重点核对:
- 1. 比较对象是 Close 还是 High——突破常用 Close,误写 High 会改变语义。
- 2. N 日高是否含当日——AI 常忽略这一细节。
- 3. 有无误加「涨停价」「打板」等词——若出现,删除并回到后复权常规口径。
- 4. 导入编辑器后,对一只熟悉个股跑筛选,看突破日是否与肉眼一致。
七、筛选与证伪:突破策略的第一关
突破策略常见失败模式不是「回测亏钱」,而是根本不可研究:
| 筛选结果 | 可能原因 | 动作 |
|---|---|---|
| 0 命中 | N 过大 / 比较口径含当日 / 标的池过小 | 检查比较条件定义,N 改 20 试 |
| 全市场 >100 只/日 | N 过小或无条件突破 | 加长 N 或加 AND 量能 |
| 仅 ST、微盘命中 | 标的池未过滤 | 换指数成分池 |
证伪步骤 1(筛选层)
全市场最新 K 线筛选
→ 命中数是否在 5–40 只/日(可调,但需「人能做」)
→ 随机抽 10 只,肉眼看突破日是否真创新高
→ 若大量「假突破」(长上影、次日低开),进入步骤 2 加过滤
→ 若突破日多为涨停,提醒:常规回测 ≠ 打板可成交性

八、回测:成本敏感与双模式对照
突破追涨交易次数少、单笔权重大,佣金 0.03% 看似小事,叠加滑点 0.1%–0.3% 会显著吃掉边缘优势。LemonPicking 常规回测默认下一根开盘成交 + 费用——务必开启,勿与「信号日收盘价成交」的乐观版本比较。
批量 vs 单账户
| 模式 | 突破策略要回答的问题 |
|---|---|
| 批量单标的 | 20 日突破在不同行业是否普遍有效,还是只靠少数趋势龙头 |
| 单账户 | 同时来 8 个突破信号,30% 仓位 + 最多 5 持仓,你实际能抓到几个 |
系列前文强调:批量年化 30%、单账户 10% 不矛盾——突破策略在信号扎堆的牛市阶段尤其容易夸大批量收益。
关注指标(勿只盯年化)
- – 交易次数:过少则统计不稳
- – 胜率与盈亏比:趋势策略常低胜率高盈亏比
- – 最大回撤与回撤期长度:能否扛过长期横盘
- – 中位数收益(批量):比「最好一只」诚实
成本敏感性实验(建议必做)
| 实验组 | 滑点 | 佣金 | 目的 |
|---|---|---|---|
| G0 | 0 | 0 | 仅看规则方向(勿当结论) |
| G1 | 0.1% | 万三 | 接近散户乐观 |
| G2 | 0.2%–0.3% | 万三 | 接近追涨保守 |
若 G1 中位数收益 ≤ 0 而 G0 为正,说明 edge 对成交假设极度敏感——突破类策略在 A 股尤其常见。系列前文讨论佣金滑点的结论在这里往往比均线策略更「残酷」。
行业与标的池:别用全市场平均掩盖结构
| 标的池 | 突破策略常见现象 |
|---|---|
| 沪深 300 | 信号少,偏大盘趋势 |
| 中证 1000 / 小盘 | 假突破多,脉冲多 |
| 单一行业(如券商) | 强 beta,结论难推广 |
| 自选股 | 适合验证「我能不能做」,不适合普适性 |
证伪时若只有某一行业批量中位数为正,应缩小声明范围为「该行业样本内有效」,而非「A 股突破 universal alpha」。
九、动画复盘:追在尖顶上还是趋势中段?

汇总曲线好看,可能是一只超级趋势股贡献大部分利润。复盘必做:
- 1. 贡献度前 3 名标的:删除后策略是否仍为正?
- 2. 突破 K 线:是稳步抬升还是涨停/长上影?
- 3. 成交假设:买点是否在下一根开盘价;若突破日涨停,开盘价是否已远高于「突破确认价」。
反例
- – 「突破即最高价成交」——系统性乐观。
- – 用未复权后复权混算 N 日高——除权日假突破。
- – 把 2020–2021 核心资产牛市当全样本——证伪时须含 2022–2024 震荡段。
复盘抽样表格(建议打印或本地记录)
| 序号 | 代码 | 突破日 | 次日开盘溢价 | 后续 5 日 | 结论标签 |
|---|---|---|---|---|---|
| 1 | 示例 | 2024-xx-xx | +2.1% | 回落 | 假突破 |
| 2 | 示例 | 2023-xx-xx | +0.5% | 延续 | 真趋势 |
抽 20 笔比盯一只妖股诚实。标签只需三档:假突破 / 中性 / 真趋势——再对照你的 AND 过滤能否减少「假突破」占比。若过滤后假突破占比未降、真趋势占比大降,说明过滤方向错了。
十、涨跌停与追高风险:常规回测的诚实说明

常规后复权日线回测通常不模拟「涨停排队买不到」「炸板回落」。因此:
- – 回测中的「突破买入」≈ 以可成交价格假设在下一根开盘买入;
- – 实盘中突破日常常已大涨,追入成本更高;
- – 若策略依赖「突破日刚好可买」,实盘落差会大于均线类策略。
决策树:我是否该继续优化这条突破规则?
批量中位数收益 ≤ 0 且单账户更差?
├─ 是 → 证伪成立:优先改 N、加过滤或放弃赛道
│ └─ 仅个别行业正?→ 缩小标的池,勿全市场宣称
└─ 否 → 复盘贡献度是否集中?
├─ 是 → 视为「趋势龙头策略」,接受低频率
└─ 否 → 样本外 / 第二时间段复测(专业版 WFO 更佳)
需要严格涨跌停可成交性时,应使用专业版打板 / 未复权专项能力——那是另一条策略线,不是本文 20 日高的简单延伸。
十一、增强与过滤:AND 与 SEQUENCE 的可选叠层
纯突破假信号多,常见增强(均可零代码):
| 增强 | 组件写法 | 利弊 |
|---|---|---|
| 均线趋势 | AND:Close > MA(60) | 减少震荡假突破,晚入场 |
| 放量确认 | AND:Vol > MA_VOL(20)×1.5 | 过滤缩量假突破 |
| 先突破再站稳 | SEQUENCE:Day1 Close>20日高 → Day2 Close>MA20 | 减少一日游 |
| 更长通道 | N=55 入场、N=20 出场 | 信号更少、更趋势 |
每加一层,立刻跑筛选看命中数——与系列「多指标 AND 共振」一文同一纪律。
与三均线、量价策略的衔接
| 你的痛点 | 可叠过滤 | 系列延伸 |
|---|---|---|
| 突破太多假信号 | AND 放量 | 量价深度文 28 |
| 震荡假突破 | AND MA 多头 | 三均线文 26 |
| 一日游 | SEQUENCE 突破后站稳 | 多指标 AND 文 16 |
不要一次叠满;每加一条,记录筛选命中与批量中位数变化,形成可追溯的实验笔记(策略本地保存,便于版本对比)。
十二、完整证伪工作流(按周可执行)
第 1 天:形式化
写清 N/M、比较口径、后复权、下根开盘成交;搭建 20/10 基线策略。
第 2 天:筛选
自选股 + 全市场最新 K 线;记录命中数;抽 10 只肉眼核对突破日。
第 3 天:批量
300 成分或 50 只自选;看中位数收益、回撤、交易次数;对比 55/20。
第 4 天:单账户
30% 仓位、最大 5 持仓;对比批量差异。
第 5 天:复盘 + 决策
动画复盘贡献度;走决策树决定「继续加过滤 / 换标的池 / 证伪放弃」。
海龟法则在个人研究中的合理裁剪
原版海龟还涉及 ATR 仓位、加仓、多市场分散——对个人 A 股日线研究,建议先裁剪到「突破入、反向突破出、固定比例仓」,验证通道逻辑是否成立,再考虑是否值得引入更复杂仓位规则。裁剪不是「阉割圣杯」,而是控制变量:你连 20/10 在后复权日线都无法证伪或证实,加 ATR 加仓只会增加过拟合维度。
若专业版参数实验室扫描 N=15..25 的入场通道,也应固定出场 N=10 与成本假设,只扫一个维度——这与系列 WFO 文的「单维度寻优」纪律一致。
十三、证伪清单:何时宣布「突破追涨在我样本里不成立」
- 近 N 日高比较口径已核对(是否含当日)
- 后复权 + 下根开盘 + 佣金滑点已启用
- 筛选命中落在可操作区间
- 批量看中位数收益、回撤、交易次数
- 单账户曲线与批量差异已记录
- 动画复盘检查贡献度与涨停追入
- 第二时间段或不同 N(20 vs 55)交叉验证
- 未与打板 / 未复权结果混比
若多组设定下中位数收益持续为负、且单账户更差——诚实结论是:在你的标的池与成本假设下,简单突破追涨不足以支撑继续调参,而非「回测软件有问题」。
与打板专项的边界再强调
| 维度 | 本文 20/10 通道突破 | 专业版打板回测 |
|---|---|---|
| 复权 | 后复权 | 未复权 |
| 涨跌停 | 常规不模拟排板 | 约束可成交性 |
| 目标 | 趋势跟踪研究 | 涨停接力研究 |
| 结论 | 不可直接推广到打板 | 不可与后复权突破比年化 |
若你的真实交易是「突破当日涨停价排队」,请切换专业版打板能力重新形式化——否则你在用错误的问题验证错误的规则。
从证伪到迭代:三条合法出路
证伪「简单 20/10 突破」不等于证伪「所有突破思想」。常见合法下一步:
- 1. 加长通道(55/20)——换频率与样本
- 2. 加 AND 过滤(量、均线)——见系列 26、28
- 3. 缩小标的池——声明为行业/大盘趋势策略
非法下一步:在单票上微调 N=19.5 类参数、或换一段最牛区间再宣布有效——那是过拟合,不是迭代。
研究突破策略,请把「我证伪了简单版」也当作成果写进笔记——它比又一个未经检验的「优化版」更有价值,也更节省你的研究时间。
结语:突破策略的价值在证伪之后
海龟与唐奇安的伟大,在于规则清晰、可重复——不是「追涨一定赚钱」。在 A 股,通道突破必须叠加涨跌停认知、成本假设、批量与单账户双验证,才能判断是继续加过滤,还是把精力换到更匹配的赛道。
LemonPicking 用比较条件即可表达「近 N 日高点突破」,无需虚构不存在的通道组件;常规日线研究免费版可闭环,打板、分钟线、参数实验室与 WFO 在专业版按需使用。
写突破策略最容易犯的错,是把研究结论说成市场真理。20 日高在部分年份、部分标的池有效,不等于永久有效;证伪与迭代同样是正经研究成果——比硬撑「海龟圣杯」更接近专业量化人的思维方式。
https://www.zpyztech.com/product/lemonpicking/
免责声明: 本文仅作量化研究方法与软件使用说明,不构成任何投资建议。历史回测不代表未来表现,请独立判断并自行承担交易风险。