Summary
SuperTrend is RTTA's streaming implementation of: ATR-band trend-following indicator.
Update API
result = rtta.SuperTrend().update(close, high, low)
The update(...) call consumes one observation using close, high, low. advance(...)
uses the same inputs when the caller wants to update state without materializing
a Python return value.
Theory Of Operation
SuperTrend builds ATR-scaled bands around the high/low midpoint and trails the active band in the direction of the current trend. Crosses through the active band flip the trend side; otherwise the band only tightens, which makes the indicator a volatility-adjusted trailing stop.
Recurrence
Let \(z_t = (close_t, high_t, low_t)\) denote the observation consumed by one
update(...) call and let \(\theta\) denote constructor parameters such as
window lengths, thresholds, and smoothing constants.
update(...) returns a result struct with fields value, direction, upper, lower.
Composed Primitives
Implementation Notes
The recurrence is implemented in src/rtta/indicator.cpp in class SuperTrend.
