卡夫曼效率比率是如何计算的?(公式、输入和局限性)
直接答案:卡夫曼效率比率公式
卡夫曼效率比率(通常缩写为 ER)是净价格变动与总价格变动在选定回溯窗口内的比值。
一个常见的形式是:
ER = ( |Priceₜ − Priceₜ−n| ) / ( Σᵢ=1→n |Priceₜ−(n−i+1) − Priceₜ−(n−i)| )
其中:
- Price 是你测量的数值价格序列(例如,收盘价序列)。
- t 是窗口的结束索引。
- n 是回溯长度(包含的周期数)。
- 分子是窗口起止点之间的绝对差值(净变动)。
- 分母是窗口内各连续采样点之间绝对变化的总和(总变动)。
如果分母为 0,则 ER 未定义;实现时通常需作为边缘情况处理。
机制或定义:该比率衡量的是什么
ER 在同一回溯窗口内比较两个量:
-
净变动(分子)
- 净变动仅使用窗口的起始和结束点。
- 如果价格终点远离起点,则净变动较大。
- 如果价格终点接近起点,则净变动较小。
-
总变动(分母)
- 总变动累加连续采样点之间的绝对变化。
- 如果价格沿直线移动(较少来回波动),总变动接近净变动。
- 如果价格来回震荡(来回波动),总变动将远大于净变动。
从概念上讲,ER 是路径效率的度量:
- 高 ER 表示价格在窗口内移动时反向抵消较少(来回波动小)。
- 低 ER 表示价格虽大幅波动,但终点接近起点,可能是由于反转或噪声所致。
证据或示例:逐步计算 ER(含明确假设)
假设你在固定时间间隔采样价格序列(例如,每个周期为一小时),并选择:
- 回溯长度 n = 4 个周期。
- 使用 Price = 收盘价(价格类型的选择很重要;ER 的输入取决于你选择的序列)。
设窗口内四个连续价格为:
- Priceₜ−4 = 100
- Priceₜ−3 = 101
- Priceₜ−2 = 100
- Priceₜ−1 = 103
- Priceₜ = 104
1) 净变动
净变动仅使用起止点:
- |Priceₜ − Priceₜ−4| = |104 − 100| = 4
2) 总变动
总变动累加各步绝对变化:
- |101 − 100| = 1
- |100 − 101| = 1
- |103 − 100| = 3
- |104 − 103| = 1
总变动 = 1 + 1 + 3 + 1 = 6
3) ER
ER = 4 / 6 ≈ 0.667
解释(一般性,非预测性):
- 此值高于 0,表示净位移相对于总移动距离较大。
- 它并非“完全高效”,因为总变动超过净变动,表明存在一些反转。
局限性和风险:可能出现的问题或误导
即使计算在输入确定后是确定性的,其含义和可靠性仍取决于你的设置方式。
1) 总变动为零时的除零错误
如果分母(总变动)等于 0,则窗口内所有连续价格都相同(采样点之间无变动)。此时,标准比率形式无法计算 ER。
谨慎的实现必须为此边缘情况定义行为(例如,返回特殊值或跳过该点)。正确处理方式取决于你的分析流程。
2) 对所选回溯长度(n)的敏感性
ER 使用最近的 n 个周期。改变 n 会显著改变 ER,因为:
- 更长的窗口包含更多变动和更多反转机会。
- 更短的窗口聚焦更窄路径,可能放大噪声。
因此,ER 并非“一刀切”;它仅总结你指定窗口的效率。
3) 对价格采样和价格类型的选择依赖
ER 的输入是特定价格序列,在特定时间表下采样。
- 使用收盘价 vs. 典型价格 vs. 其他派生序列会改变逐步步长值。
- 使用不同周期大小(单位时间内的采样次数不同)会改变路径和总变动。
因此,使用不同数据选择的两个 ER 计算结果不可直接比较。
4) 易受噪声数据和微观结构影响
由于分母使用连续采样点之间的绝对差值,ER 可能受以下因素影响:
- 小幅波动和噪声
- 特定情境下的买卖价差效应
- 事件驱动数据中的执行相关异常
这并不意味着公式“错误”,但可能导致计算出的 ER 反映的是交易噪声,而非平滑的定向移动。
5) 历史关系不预示未来结果
ER 是近期移动效率的描述性统计量。它本身不是预测工具。
- 过去的高或低 ER 并不决定未来走势。
- 任何假设其具有可预测性的解释都超出了计算本身。
验证或下一步问题:如何独立验证结果
要自行验证 ER 计算:
- 写下你使用的精确窗口(t 是哪个索引,n 是多少)。
- 确认使用的精确价格序列(例如,收盘价)。
- 重新计算分子,仅使用窗口的起止价格。
- 重新计算分母,累加窗口内各连续对之间的绝对差值。
- 检查总变动为 0 的边缘情况。
- 更改一个输入后重复计算(如 n),观察 ER 对该选择的敏感性。
如果你想进一步探索,一个有用的下一步问题是:改变输入(回溯长度和数据采样)如何影响 ER 的数值行为,以及对描述性效率指标应作何通用解释。