Summary
CamarillaPivotPoints is RTTA's streaming Camarilla pivot set. Levels for the
current bar are computed from the previous bar's high, low, and close using
Camarilla range multipliers, then the current bar becomes the next previous bar.
Update API
result = rtta.CamarillaPivotPoints(fillna=True).update(high, low, close)
# result.pp, result.r1, result.r2, result.r3, result.s1, result.s2, result.s3
The first bar only seeds previous HLC. With fillna=True, all seven fields
return that bar's close; with fillna=False, they return NaN.
Theory Of Operation
Nick Scott's Camarilla equation places support/resistance tightly around the previous close using fixed fractions of the previous range. The classic levels use multipliers \(1.1/12\), \(1.1/6\), and \(1.1/4\) for R1/S1 through R3/S3. RTTA also reports a classic mid pivot \(PP = (H+L+C)/3\) for convenience in the same result struct used by floor/Woodie/Fib pivots.
Because levels depend only on the prior completed bar, the streaming form stores previous HLC and recomputes once per bar before overwriting that previous state.
Recurrence
Let \(H_{t-1}, L_{t-1}, C_{t-1}\) be the previous bar's high, low, and close, and let \(R = H_{t-1} - L_{t-1}\).
After emitting levels, RTTA sets previous HLC to the current bar's \(H_t, L_t, C_t\).
Implementation Notes
The recurrence is implemented in src/rtta/indicator.cpp in
class CamarillaPivotPoints. The result type is PivotPointsResult with fields
pp, r1, r2, r3, s1, s2, s3.
