Summary
EWMAZScoreShiftDetector is RTTA's streaming implementation of: Causal EWMA mean/variance z-score event detector for threshold-sized shifts.
Update API
result = rtta.EWMAZScoreShiftDetector(alpha=0.05, threshold=3.0).update(close)
The update(...) call consumes one observation using close. advance(...)
uses the same inputs when the caller wants to update state without materializing
a Python return value.
Theory Of Operation
EWMAZScoreShiftDetector standardizes the current error or move against an EWMA mean and variance estimated from prior samples. The detector uses the resulting z-score with hysteresis or reset logic so isolated noisy observations do not become persistent regimes by themselves.
Recurrence
Let \(z_t = close_t\) denote the observation consumed by one
update(...) call and let \(\theta\) denote constructor parameters such as
window lengths, thresholds, and smoothing constants.
When \(y_t\ne0\), the C++ implementation resets \(\mu_t\) to the current close and clears the variance estimate.
The return value is the current scalar indicator value.
Implementation Notes
The recurrence is implemented in src/rtta/indicator.cpp in class EWMAZScoreShiftDetector.
