mirror of
https://github.com/mihakralj/QuanTAlib.git
synced 2026-08-24 05:28:05 +00:00
validation and profiles
This commit is contained in:
@@ -100,6 +100,24 @@ R2/S2 add the full range to/from PP. R3/S3 extend beyond the previous extremes b
|
||||
|
||||
## Performance Profile
|
||||
|
||||
### Operation Count (Streaming Mode)
|
||||
|
||||
Classic Pivot Points compute PP and 6 support/resistance levels from previous bar HLC — O(1).
|
||||
|
||||
| Operation | Count | Cost (cycles) | Subtotal |
|
||||
| :--- | :---: | :---: | :---: |
|
||||
| Store prev HLC | 3 | 1 cy | ~3 cy |
|
||||
| PP = (H + L + C) / 3 | 1 | 2 cy | ~2 cy |
|
||||
| R1 = 2*PP - L | 1 | 2 cy | ~2 cy |
|
||||
| S1 = 2*PP - H | 1 | 2 cy | ~2 cy |
|
||||
| R2 = PP + (H - L) | 1 | 2 cy | ~2 cy |
|
||||
| S2 = PP - (H - L) | 1 | 2 cy | ~2 cy |
|
||||
| R3/S3 extensions | 2 | 2 cy | ~4 cy |
|
||||
| NaN guard + state update | 1 | 2 cy | ~2 cy |
|
||||
| **Total** | **O(1)** | — | **~19 cy** |
|
||||
|
||||
Cheapest O(1) pivot variant — pure previous-bar arithmetic, no smoothing, no buffers beyond a 1-bar state.
|
||||
|
||||
### Implementation Design
|
||||
|
||||
Pure arithmetic with no loops, no buffers, no auxiliary data structures. Each `Update` call performs 3 divisions (via the single division in PP), 6 multiplications/additions, and 3 comparisons for NaN validation.
|
||||
|
||||
Reference in New Issue
Block a user