kingchenc
99dd144576
F8: add Bollinger Bandwidth and %b
Completes the F8 family (Bands & channels) end to end:
- Rust core: bollinger_bandwidth.rs ((upper - lower) / middle — the
squeeze gauge) and percent_b.rs ((price - lower) / (upper - lower) —
price position within the bands, unclamped). Both wrap BollingerBands
and carry a full Indicator impl, runnable doctest and reference /
constant-series / definition-consistency / warmup / reset /
batch==streaming tests.
- Python: PyBollingerBandwidth / PyPercentB PyO3 classes + module
registration + .pyi stubs (defaults (20, 2.0)).
- Node: explicit BollingerBandwidthNode and PercentBNode; index.d.ts
and index.js updated.
- WASM: WasmBollingerBandwidth / WasmPercentB via the scalar macro.
- Wiki: Indicator-BollingerBandwidth.md and Indicator-PercentB.md plus
rows in Indicators-Overview.md and entries in Home.md.
cargo fmt + clippy (core/wickra/data/wasm/node) clean; 362 core tests,
25 data tests and 51 doctests green.