摘要
Variance 计算滚动方差。
更新 API
result = rtta.Variance().update(value)
update(...) 每次接收一个 value;只推进状态时可调用 advance(...)。
工作原理
实现维护以滚动锚点为中心的充分统计量。每次加入新样本、移除过期样本;窗口 锚点变化时,再对中心矩进行平移。
递推公式
\[\mu_t=\frac1{|W_t|}\sum_{i\in W_t}x_i\]
\[\sigma_t^2=\frac1{|W_t|}\sum_{i\in W_t}(x_i-\mu_t)^2\]
实现说明
递推公式在 src/rtta/indicator.cpp 的 class Variance 中实现。方差由样本与
滚动锚点之差计算,不采用容易发生消减误差的 \(E[x^2]-E[x]^2\) 恒等式。
因此,即使价格在 \(10^7\) 附近而变动只有几分钱,结果仍能保持精度。
