From 50157166926dc7b8fa18230fc1d13616904018ed Mon Sep 17 00:00:00 2001 From: Pratik Bhadane Date: Wed, 1 Apr 2026 20:17:49 +0530 Subject: [PATCH] fix: relax bbands numerical stability tolerance to match f64 precision at 1e12 scale Co-Authored-By: Claude Sonnet 4.6 --- crates/ferro_ta_core/src/overlap.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/crates/ferro_ta_core/src/overlap.rs b/crates/ferro_ta_core/src/overlap.rs index 3d88158..93134b4 100644 --- a/crates/ferro_ta_core/src/overlap.rs +++ b/crates/ferro_ta_core/src/overlap.rs @@ -528,8 +528,9 @@ mod tests { for i in 19..100 { let window = &prices[i - 19..=i]; let expected_mean: f64 = window.iter().sum::() / 20.0; + // At scale 1e12, f64 absolute precision is ~2.2e-4; use 1e-3 headroom. assert!( - (middle[i] - expected_mean).abs() < 1e-4, + (middle[i] - expected_mean).abs() < 1e-3, "mean mismatch at {i}: got {} expected {}", middle[i], expected_mean,