Real-time chart analysis needs deterministic updates per bar and explicit handling of warm-up periods. RSE addresses this by implementing Calculates Relative Squared Error between two sources using SMA for averaging with parameterized inputs and direct state progression.
This implementation favors streaming execution over batch recomputation. The trade-off is more attention to state initialization, but latency stays predictable when charts scale.
Calculates Relative Squared Error between two sources using SMA for averaging
| Parameter | Purpose |
|---|---|
source1 |
First series to compare (actual) |
source2 |
Second series to compare (predicted) |
period |
Lookback period for error averaging |
- RSE value averaged over the specified period using SMA
| Input variable | Type | Configuration |
|---|---|---|
i_source1 |
input.source |
default: close, label: "Source" |
i_period |
input.int |
default: 100, label: "Period" |
- Declared optimization: not explicitly annotated in source comments.
- Streaming model: single-pass update on each new bar.
- Warm-up behavior: outputs can be unstable until enough samples satisfy
period. - Memory model: state is kept in Pine series context rather than external buffers.
Streaming logic keeps incremental cost stable, but initialization and edge-case handling become first-class concerns. That is a deliberate choice: predictable execution beats opaque recalculation spikes in live charts.
- Open the script in TradingView and confirm it compiles under Pine Script v6.
- Validate warm-up behavior on sparse data and short histories.
- Compare output against a trusted reference implementation for the same parameters.
- Confirm parameter bounds reject invalid values without silent fallback.
- Source code:
indicators/errors/rse.pine - Documentation file:
indicators/errors/rse.md - GitHub source view: https://github.com/mihakralj/QuanTAlib/blob/main/indicators/errors/rse.pine
- GitHub documentation view: https://github.com/mihakralj/QuanTAlib/blob/main/indicators/errors/rse.md