终极波动指标

业务意义

UOSC 综合三个不同时间周期的动量(7 日、14 日、28 日),通过加权平均减少虚假信号,提供更可靠的多时间框架动量分析。

核心使用场景

1. 多时间框架动量确认

  • 强势上升:UOSC > 70 且三个周期动量均向上

  • 强势下降:UOSC < 30 且三个周期动量均向下

  • 动量分歧:不同周期动量方向不一致,预示震荡

2. 趋势强度判断

  • 趋势健康:UOSC 在 50-70(上升趋势)或 30-50(下降趋势)区间

  • 趋势衰竭:UOSC 进入极端区域后快速反转

  • 趋势延续:UOSC 在趋势方向震荡,未进入极端区域

使用要点总结

多时间框架优势:

  • 7 日周期:捕捉短期动量

  • 14 日周期:中期趋势

  • 28 日周期:长期方向

三者一致时信号最可靠

最佳应用场景:

  • 趋势转换点的早期识别

  • 震荡市中的区间交易

  • 趋势中的回调买入 / 反弹卖出时机

信号可靠性排序:

  • 三重周期一致 + 背离 > 双重周期一致 > 单一信号

  • 有成交量确认 > 无成交量确认

  • 在支撑阻力位附近 > 在价格中间区域

特别优势:

  • 减少虚假突破信号

  • 提供多维度动量分析

  • 适合各种市场环境

UOSC 通过综合多个时间周期的动量分析,提供了比单一振荡器更可靠的交易信号,特别适合追求高胜率的交易者。

计算公式

第一步:计算买方压力(Buying Pressure - BP)

BP = 收盘 - min(最低, 收盘 [-1])

第二步:计算真实波幅(True Range - TR)

TR = max(最高, 收盘 [-1]) - min(最低, 收盘 [-1])

第三步:计算三个时间周期的平均值 (默认 7,14,28)

短期平均值 =BP[1-n1:0].sum()/ TR[1-n1:0].sum()

中期平均值 = BP[1-n2:0].sum()/ TR[1-n2:0].sum()

长期平均值 = BP[1-n3:0].sum()/ TR[1-n3:0].sum()

第四步:加权计算终极波动指标

UOSC = 100 *((4 * 短期平均值) + (2 * 中期平均值) + 长期平均值 )/ (4 + 2 + 1)

实现代码

指标参数:

y

输出列名

n1

短周期

n2

中周期

n3

长周期

函数代码:


A

B

1

func UOSC(A,$y,n1,n2,n3)

=A.derive@o(收盘 -min(最低, 收盘 [-1]):BP, max(最高, 收盘 [-1])-min(最低, 收盘 [-1]):TR, : 短期平均值, : 中期平均值, : 长期平均值 )



=A.run(BP[1-n1:0].sum()/TR[1-n1:0].sum():短期平均值, BP[1-n2:0].sum()/TR[1-n2:0].sum(): 中期平均值, BP[1-n3:0].sum()/TR[1-n3:0].sum(): 长期平均值, 100 *((4 * 短期平均值) + (2 * 中期平均值) + 长期平均值 )/ (4 + 2 + 1):${y})



=A.alter(;BP,TR,短期平均值, 中期平均值, 长期平均值 )

举例:

调用脚本计算浦发银行 2024 年的终极波动指标


A


1

/计算出源数据

2

=A1.derive(:UOSC)

/增加要返回的指标字段

3

= UOSC(A2, UOSC,7,14,28)

/调用函数计算指标

运行效果:

..