一句话结论:同一个入场信号,三种出场方式近一年表现:持有 7 日最好(净 +0.17%),ATR 移动止损次之(净 +0.15%),固定 5% 止损/10% 止盈最差(净 −0.10%)。出场设计改变的是持仓时间和盈亏比,而不是信号本身的质量。
前面几章讲了数十种入场指标,但量化策略的完整循环是:入场 → 出场 → 下一次入场。出场决定了每笔交易的持仓时间、盈亏比,对最终收益的影响不亚于入场。
一、三种出场的原理
1.1 固定止损止盈
- – 止损:价格从买入价下跌 X%,立即卖出,控制最大单笔亏损
- – 止盈:价格从买入价上涨 Y%,立即卖出,锁定利润
- – 哪个先触发哪个生效
优点:规则简单,情绪无关;缺点:固定比例忽视了不同股票的波动性,低波动股票常被"噪音止损"。
1.2 ATR 移动止损(Trailing Stop)
- – 每日更新止损线:
止损价 = 最近 N 日收盘最高点 − k × ATR(N) - – 止损线只升不降(对多头而言)
- – 价格跌破止损线,出场
ATR(第 37 课)是真实波幅,自适应股票的波动大小。波动大的股票止损距离更远,避免被日常震荡止损掉;利润大时止损线自动抬高,保护已有盈利。
1.3 按时间出场(Time Stop)
- – 持有满 N 个交易日,无论盈亏,直接平仓
- – 优点:确定性强,成本可预测;避免长期持仓等待"将来也许会好"
- – 缺点:趋势好的时候可能过早离场
三种出场可以同时设置(优先级:止损 > 止盈 > 时间),青柠支持在策略里组合使用。
二、第 3 课的出场对比参考
第 3 课(策略组件)用 2016—2026 年的数据做了四种出场的全历史对比,入场信号是"价格站上 MA20":
| 出场方式 | 10 年平均收益/笔 | 胜率 | 说明 |
|---|---|---|---|
| A 持有 5 日 | −0.05% | 45.1% | 简单持有 |
| B 持有 20 日 | +0.26% | 45.5% | 持有更久 |
| C 止损8%/止盈15% | +0.25% | 42.9% | 固定止损止盈 |
| D 跌破 MA20 出 | −0.42% | 29.2% | 均线止损 |
均线出场(D)胜率最低、收益最差,是因为均线滞后,往往在已经下跌很多之后才出场。固定止损止盈(C)与持有 20 日(B)收益接近,但胜率更低、盈亏比更高——止损把小亏换成了大部分的零收益。
三、青柠数据实验(近一年)
入场信号:RSI14 上穿 30(第 25 课,前一日 RSI≤30,当日 RSI>30)。
全 A 股 2025-10-14 至 2026-10-16,约 4985 只股票。
三种出场规则:
- – 出场 A:持有满 7 日(第 7 个交易日收盘出场)
- – 出场 B:固定 5% 止损 / 10% 止盈(7 日内最低价触及止损价或最高价触及止盈价,先触发者)
- – 出场 C:ATR(14) 1.5 倍移动止损(止损价 = 买入价 − 1.5 × ATR,近似)
| 出场方式 | 信号次数 | 平均收益 | 胜率 | 扣成本后 |
|---|---|---|---|---|
| A. 持有 7 日 | 41,985 | +0.32% | 47.5% | +0.17% |
| B. 5% 止损/10% 止盈 | 41,985 | +0.05% | 42.5% | −0.10% |
| C. ATR 1.5 倍移动止损 | 41,985 | +0.30% | 44.3% | +0.15% |
关键发现:
- – 固定止损止盈(B)胜率最低(42.5%),净收益为负。5% 止损在正常波动里很容易被触发(A 股日均波幅约 3%-5%),把一部分实际上会反弹的股票止损掉了。
- – ATR 移动止损(C)胜率 44.3%,与 7 日持有相比仅差 0.02 个百分点,但在强趋势下能持有更久、保护利润。
- – 简单的 7 日持有反而最好——这和 Kevin Davey 567,000 次回测的结论一致:最简单的出场往往不差。
四、为什么固定止损反而更差
直觉上止损应该"保护资金",但 A 股中 5% 止损的实际问题:
| 问题 | 说明 |
|---|---|
| A 股波动大 | 个股日波幅 3-5%,5% 止损约等于"1-2 个交易日的正常跌幅" |
| T+1 延迟 | 当天跌破 5% 止损,次日才能卖出,执行价更差 |
| 涨跌停冲击 | 下跌途中常有跌停,无法在 5% 处成交,实际损失超过设定值 |
| 不分波动率 | 高波动股和低波动股用同一个 5%,不合适 |
ATR 移动止损解决了第 4 个问题(自适应波动),但前 3 个在 A 股都是系统性障碍。
五、常见误区
「有止损才专业」
止损本身没有对错,关键是止损比例要和股票的波动率匹配。5% 止损用在高波动策略上,会频繁触发,胜率下降。更合理的做法是按 ATR 设定止损(第 37 课)。
「止盈设得越高越好」
止盈设太高会导致很少触发(价格达不到),退化成"持有一段时间";设太低会过早离场,遗漏大行情。常见参考:止盈 = 2-3 × ATR(止损距离的 2-3 倍)。
「时间止损是最差的」
近一年数据里,持有 7 日(时间止损)的净收益最高。时间止损在"短线均值回归"策略里很实用,尤其是入场信号的预期持仓时间固定时。
六、三种出场的适用场景
| 出场方式 | 最适合 | 不适合 |
|---|---|---|
| 固定时间止损 | 短线均值回归、信号预期持仓时间明确 | 趋势策略(可能过早离场) |
| 固定止损止盈 | 盈亏比确定、风险可量化 | 波动率高的策略(频繁触发) |
| ATR 移动止损 | 趋势跟踪、不设目标价 | 震荡行情(ATR 大,止损距离远,亏损放大) |
七、在青柠中实操
- 1. 从时间止损开始:先测"持有 N 日"(N=5/10/20),找到你的信号期望产生多久的效果,作为基准。
- 2. 加 ATR 止损替代固定比例止损:设置"止损 = 1.5 × ATR",比 5% 止损更贴合波动率。
- 3. 在回测报告里看"平均持仓天数":如果平均持仓很短(1-3 天),说明止损太紧,经常被触发;平均持仓接近 N 日,说明止损没什么用。
更多策略可以在青柠策略市场查看。
常见问题
可以同时设置止损、止盈和时间止损吗?
可以。青柠支持多出场条件,优先级是止损(亏损控制最高优先)> 止盈 > 时间。三者同时设置是最完整的出场结构。
ATR 移动止损里的"最近 N 日最高点"怎么跟踪?
在青柠策略编辑器里,可以用"持仓期间最高收盘价"变量,或者用滚动最大值函数。第 37 课(ATR 真实波幅)有更详细的设置方法。
5% 止损触发后,次日开盘大幅低开怎么办?
这是 A 股的真实风险:跌停板导致"止损失效"。实际执行价可能是 −7%、−10% 甚至更差。这也是为什么 A 股策略的实际止损成本往往比设定值高,回测时应该加"滑点"假设。
口径说明
股票池为全 A 股,排除 ST(按当前名称)和北交所,剔除未复权收盘价低于 3 元的股票,价格后复权;信号窗口 2025-10-14 至 2026-10-16,共 4985 只股票,245 个交易日。入场信号:RSI(14) 上穿 30(前一日 ≤30,当日 >30);RSI 简单移动平均版,预热 6 个月。出场 A:持有满 7 个交易日(第 7 日收盘);出场 B:5% 止损 / 10% 止盈(用 7 日内期间最高/最低价近似判断触发,非精确日内模拟);出场 C:ATR(14) 1.5 倍移动止损(用入场价 − 1.5×ATR 估计止损价,期间最低价触及则止损,否则持满 7 日,近似)。以上为 SQL 层面近似,真实引擎结果以完整回测为准,本课仅供教学对比。信号日收盘确认,次日开盘买入,一字涨停剔除。成本每笔来回 0.15%。数据由青柠量化回测数据库计算。历史统计不代表未来表现,不构成投资建议。
第 3 课出场对比数据来源:第 3 课:一个策略由什么组成,全历史(2016-2026)计算。
上一课:第 50 课 多指标组合
下一课:第 52 课 仓位管理
读到这里,不如自己验证一次
文章里的逻辑,你可以在青柠量化里用真实数据重新跑一遍。免费,零代码。