From e2161054ecc4344e2a6d3aa1475cf752115a8710 Mon Sep 17 00:00:00 2001 From: Toh4iem9 Date: Fri, 2 Jan 2026 16:51:42 +0100 Subject: [PATCH] docs(indicators): Optimized for incremental calculation --- Indicators/MyIndicators/Vortex_Pro.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Indicators/MyIndicators/Vortex_Pro.md b/Indicators/MyIndicators/Vortex_Pro.md index cdb2670..aacc6af 100644 --- a/Indicators/MyIndicators/Vortex_Pro.md +++ b/Indicators/MyIndicators/Vortex_Pro.md @@ -42,9 +42,11 @@ Our MQL5 implementation follows a modern, object-oriented design to ensure stabi * **`CVortexCalculator`**: The base class that performs the full VI calculation on a given set of High, Low, and Close prices. * **`CVortexCalculator_HA`**: A child class that inherits all logic and only overrides the initial data preparation step to use smoothed Heikin Ashi prices. -* **Stability via Full Recalculation:** We employ a "brute-force" full recalculation within `OnCalculate` for maximum stability. - -* **Efficient Calculation:** The summation over the lookback period is handled by an efficient **sliding window sum** technique, which is significantly faster than recalculating the sum on every bar. +* **Optimized Incremental Calculation (O(1)):** + Unlike basic implementations that recalculate the entire history on every tick, this indicator employs an intelligent incremental algorithm. + * **State Tracking:** It utilizes `prev_calculated` to process only new bars. + * **Persistent Buffers:** Internal buffers (TR, VM+, VM-) persist their state between ticks. + * **Sliding Window:** The summation over the lookback period is handled by an efficient sliding window logic (`sum += new_value; sum -= old_value;`), which is significantly faster than recalculating the sum on every bar. ## 4. Parameters