已弃用 (2026-05-25) —— 该算子是 Layer-1 变换、非 Layer-0 原子输入,已并入
compute_bollinger_v1。保留作历史。
做什么(One-liner)
Bollinger Bands upper/middle/lower,20 日 SMA + 2σ envelope。
怎么用
python
from services.algo.technical import compute_bollinger
upper, middle, lower = compute_bollinger(prices, period=20, num_std=2.0)核心公式
middle = prices.rolling(20).mean()
std = prices.rolling(20).std(ddof=0)
upper = middle + 2×std
lower = middle - 2×std假设与适用场景
假设:Bollinger 20/2σ defaults + ddof=0 + pandas-ta 等价。
适用:mean reversion 信号、breakout 识别、volatility envelope。
不适用:n<20、trending(bands hug price)。
已知局限
- ddof 选择敏感
- 20/2σ 硬编码
- pandas-ta 依赖
参考文献
Bollinger (2001) 原著 + Murphy (1999) 教科书。
Golden Test
tests/golden/fixtures/tier1/compute_bollinger/,1e-10,2026-04-20 passing。
Changelog
- 1.0.0 (2026-04-20) — BUG-GOLDEN-002 修复 + 首次 Active

