RenkoBrickGenerator

Incremental, causal technical analysis documentation

Summary

RenkoBrickGenerator is RTTA's streaming implementation of: Event-driven Renko price transform that emits signed brick counts and current brick state from close updates.

Update API

result = rtta.RenkoBrickGenerator().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

RenkoBrickGenerator implements the streaming form of Event-driven Renko price transform that emits signed brick counts and current brick state from close updates. Each update(...) call consumes exactly one new observation tuple and advances the internal state before returning the current value or result struct.

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.

\[k_t=\left\lfloor\frac{close_t-anchor_{t-1}}{brick\_size}\right\rfloor\]
\[anchor_t=anchor_{t-1}+k_t\,brick\_size, \qquad direction_t=\operatorname{sgn}(k_t)\]

update(...) returns a result struct with fields brick_open, brick_close, direction, bricks, reversal.

Implementation Notes

The recurrence is implemented in src/rtta/indicator.cpp in class RenkoBrickGenerator.

Reference