
一句话结论:UO 的超买一侧近一年很清楚。全 A 股上穿 70 后持有 20 天,跑输全市场 1.07%,扣成本后 −1.22%;下穿 30 跑赢 0.49%,扣成本后 +0.34%。三个周期合成一根线,没有让中间的 50 轴交叉变有用。
Larry Williams 后来觉得单周期振荡器太容易在趋势里失效,于是把短、中、长三个周期的买卖压力加权合成一根 UO(Ultimate Oscillator)。

一、原理和公式
先算每天的买卖压力和真实波幅:
- – BP = 收盘 − min(最低,昨收)
- – TR = max(最高,昨收) − min(最低,昨收)
- – 某周期的 AVG = 这段 BP 之和 ÷ 这段 TR 之和
UO = 100 × (4 × AVG7 + 2 × AVG14 + AVG28) ÷ 7
短周期权重大,但仍被 14 日、28 日拉住,所以它比 RSI、KDJ 钝一些。教材:低于 30 超卖,高于 70 超买,50 是中线。
青柠在 指标 → 震荡 → 终极波动指标,默认 7 / 14 / 28。
二、青柠数据实验
全 A 股最近一年。
| 规则 | 信号次数 | 20 天收益 | 胜率 | 20 天超额 | 扣 0.15% 成本后 |
|---|---|---|---|---|---|
| 下穿 30 | 13,411 | +2.91% | 53.8% | +0.49% | +0.34% |
| 上穿 50 | 90,024 | +0.72% | 46.6% | −0.09% | −0.24% |
| 上穿 70 | 7,457 | −1.47% | 39.6% | −1.07% | −1.22% |
下穿 30 一年只有 1.3 万次,比 RSI 下穿 30 更少,超额也更薄(+0.49% 对 +1.61%)。上穿 70 是本章到目前为止最干净的「不要追」:绝对收益 −1.47%,超额 −1.07%。
按当日 UO 分桶:
| UO | 样本数 | 20 天收益 | 20 天超额 |
|---|---|---|---|
| 低于 30 | 26,400 | +2.34% | +0.29% |
| 30 ~ 50 | 653,671 | +0.83% | +0.11% |
| 50 ~ 70 | 481,290 | +0.16% | −0.13% |
| 高于 70 | 15,725 | −1.64% | −1.06% |
越高越差。高于 70 的股票之后 20 天绝对收益也是负的,不是「自己没涨、别人更差」。这和第 25 课 RSI>80 的正超额不一样。
上穿 50 一年 9 万次,扣成本后 −0.24%。多周期合成没有让中线交叉变成有效买点。
三、常见误区
「看三个周期,假信号会少很多」
下穿 30 确实比 RSI 少,但超额也更薄。上穿 50 仍然很密,而且为负。
「UO 高于 70 说明趋势强,该追」
近一年这是最不该追的一档:20 天收益 −1.64%,超额 −1.06%。
「三个周期可以分别设条件」
青柠里的 UO 已经合成一根线。要拆开短中长,得自己另做。
在青柠中实操
- 1. 量化策略 → + 新建策略,在 指标 → 震荡 里拖入 终极波动指标,7 / 14 / 28。
- 2. 入场用 区间判断:UO 低于 30;不要用上穿 70 当买点。
- 3. 对照第 25 课 RSI < 30,看 UO 是不是更少、更稳,还是只是更少、更弱。
更多策略可以在青柠策略市场查看。下一课(第 32 课)把指标简化成「最近 12 天有几天在涨」。
常见问题
UO 和 RSI 该用哪个?
近一年 RSI 下穿 30 的超额更高(+1.61% 对 +0.49%)。UO 的价值在超买一侧更清楚:高于 70 之后明显跑输。
权重大小能改吗?
教材固定 4 : 2 : 1。青柠只开放三个周期,权重按原式。
口径说明
股票池为全 A 股,排除 ST(按当前名称)和北交所,剔除未复权收盘价低于 3 元的股票,价格后复权;信号日 2025-10-14 至 2026-10-14,共 4,971 只股票。UO = 100 × (4×AVG7 + 2×AVG14 + AVG28) ÷ 7,AVG 为对应窗口买卖压力之和除以真实波幅之和。信号日收盘确认,次日开盘买入,持有至第 20 个交易日收盘;次日一字涨停剔除。超额收益 = 信号股票收益 − 同日股票池全部股票同口径平均。个股每笔来回成本 0.15%。本课只用最近一年。数据由青柠量化回测数据库计算。历史统计不代表未来表现,不构成投资建议。
读到这里,不如自己验证一次
文章里的逻辑,你可以在青柠量化里用真实数据重新跑一遍。免费,零代码。