Momentum:FISHER(费雪变换指标)技术指标详解一、FISHER的定义FISHER(Fisher Transform Indicator,费雪变换指标)是由约翰·F·埃勒斯(John F. Ehlers)开发的一种技术指标,其核心原理是通过数学变换,将原本不服从正态分布的价格数据转换为近似高斯正态分布,从而使价格走势图中“极端值”更容易被识别,帮助投资者发现潜在的价格反转点。核心设计理念市场价格的原始分布往往不是正态的——趋势、跳空、聚集等现象使得“什么是正常的价格波动”很难界定。埃勒斯(Ehlers)的核心思路是:将价格缩放到标准范围,再施加非线性变换,将靠近区间边界的数值“拉伸”,从而让极值区域变得极其敏感,使其能比传统震荡指标更早地捕捉到价格拐点信号。FISHER的核心特征特征说明理论基础将价格转换为高斯正态分布,使拐点更容易识别指标类型动量震荡指标(无边界,数值通常不限制在固定范围)开发者约翰·F·埃勒斯(John F. Ehlers)默认参数length=9, signal=1核心优势对极端价格区间敏感,可能提供领先信号而非滞后信号二、FISHER的计算方法1. 核心公式费雪变换的核心数学公式是将输入值XXX映射为近似正态分布的YYY值:Y=0.5×ln(1+X1−X) Y = 0.5 \times \ln \left( \frac{1 + X}{1 - X} \right)Y=0.5×ln(1−X1+X)其中XXX被限定在−1-1−1到+1+1+1之间,ln\lnln为自然对数。对于价格数据的实际应用,pandas_ta库的 Fisher 实现采用了一套具体算法:第一步:计算HL2(高低价均值)HL2=High+Low2 \mathrm{HL2} = \frac{\mathrm{High} + \mathrm{Low}}{2}HL2=2High+Low第二步:寻找HL2在回看窗口中的极值HHL2=max(HL2,length) \mathrm{HHL2} = \max(\mathrm{HL2}, \mathrm{length})HHL2=max(HL2,length)LHL2=min(HL2,length) \mathrm{LHL2} = \min(\mathrm{HL2}, \mathrm{length})LHL2=min(HL2,length)第三步:计算价格在区间中的归一化位置HLR=HHL2−LHL2 \mathrm{HLR} = \mathrm{HHL2} - \mathrm{LHL2}HLR=HHL2−LHL2为了防止分母为零,设置HLR0.001\mathrm{HLR} 0.001HLR0.001时取值为0.0010.0010.001。position=(HL2−LHL2HLR)−0.5 \text{position} = \left( \frac{\mathrm{HL2} - \mathrm{LHL2}}{\mathrm{HLR}} \right) - 0.5position=(HLRHL2−LHL2)−0.5此时position的范围大致在−0.5−0.5−0.5到+0.5+0.5+0.5之间。第四步:递归平滑与费雪变换通过一个递归公式对position进行平滑:v=0.66×position+0.67×vprev v = 0.66 \times \text{position} + 0.67 \times v_{\text{prev}}v=0.66×position+0.67×vprev然后将vvv强制限制在−0.99-0.99−0.99到+0.99+0.99+0.99之间,以避免对数计算中的奇异点。最后,应用费雪变换核心公式,并累加历史值:FISHERt=0.5×ln(1+v1−v)+FISHERt−1 \mathrm{FISHER}_t = 0.5 \times \ln \left( \frac{1 + v}{1 - v} \right) + \mathrm{FISHER}_{t-1}FISHERt=0.5×ln(1−v
Momentum:FISHER(费雪变换指标)技术指标详解
发布时间:2026/6/18 9:05:36
Momentum:FISHER(费雪变换指标)技术指标详解一、FISHER的定义FISHER(Fisher Transform Indicator,费雪变换指标)是由约翰·F·埃勒斯(John F. Ehlers)开发的一种技术指标,其核心原理是通过数学变换,将原本不服从正态分布的价格数据转换为近似高斯正态分布,从而使价格走势图中“极端值”更容易被识别,帮助投资者发现潜在的价格反转点。核心设计理念市场价格的原始分布往往不是正态的——趋势、跳空、聚集等现象使得“什么是正常的价格波动”很难界定。埃勒斯(Ehlers)的核心思路是:将价格缩放到标准范围,再施加非线性变换,将靠近区间边界的数值“拉伸”,从而让极值区域变得极其敏感,使其能比传统震荡指标更早地捕捉到价格拐点信号。FISHER的核心特征特征说明理论基础将价格转换为高斯正态分布,使拐点更容易识别指标类型动量震荡指标(无边界,数值通常不限制在固定范围)开发者约翰·F·埃勒斯(John F. Ehlers)默认参数length=9, signal=1核心优势对极端价格区间敏感,可能提供领先信号而非滞后信号二、FISHER的计算方法1. 核心公式费雪变换的核心数学公式是将输入值XXX映射为近似正态分布的YYY值:Y=0.5×ln(1+X1−X) Y = 0.5 \times \ln \left( \frac{1 + X}{1 - X} \right)Y=0.5×ln(1−X1+X)其中XXX被限定在−1-1−1到+1+1+1之间,ln\lnln为自然对数。对于价格数据的实际应用,pandas_ta库的 Fisher 实现采用了一套具体算法:第一步:计算HL2(高低价均值)HL2=High+Low2 \mathrm{HL2} = \frac{\mathrm{High} + \mathrm{Low}}{2}HL2=2High+Low第二步:寻找HL2在回看窗口中的极值HHL2=max(HL2,length) \mathrm{HHL2} = \max(\mathrm{HL2}, \mathrm{length})HHL2=max(HL2,length)LHL2=min(HL2,length) \mathrm{LHL2} = \min(\mathrm{HL2}, \mathrm{length})LHL2=min(HL2,length)第三步:计算价格在区间中的归一化位置HLR=HHL2−LHL2 \mathrm{HLR} = \mathrm{HHL2} - \mathrm{LHL2}HLR=HHL2−LHL2为了防止分母为零,设置HLR0.001\mathrm{HLR} 0.001HLR0.001时取值为0.0010.0010.001。position=(HL2−LHL2HLR)−0.5 \text{position} = \left( \frac{\mathrm{HL2} - \mathrm{LHL2}}{\mathrm{HLR}} \right) - 0.5position=(HLRHL2−LHL2)−0.5此时position的范围大致在−0.5−0.5−0.5到+0.5+0.5+0.5之间。第四步:递归平滑与费雪变换通过一个递归公式对position进行平滑:v=0.66×position+0.67×vprev v = 0.66 \times \text{position} + 0.67 \times v_{\text{prev}}v=0.66×position+0.67×vprev然后将vvv强制限制在−0.99-0.99−0.99到+0.99+0.99+0.99之间,以避免对数计算中的奇异点。最后,应用费雪变换核心公式,并累加历史值:FISHERt=0.5×ln(1+v1−v)+FISHERt−1 \mathrm{FISHER}_t = 0.5 \times \ln \left( \frac{1 + v}{1 - v} \right) + \mathrm{FISHER}_{t-1}FISHERt=0.5×ln(1−v