Refactor documentation to remove "Zero-Allocation Design" sections across various trend indicators and implement a PowerShell script for automated cleanup

- Updated mathematical foundations and performance profiles where necessary to maintain clarity and coherence.
This commit is contained in:
Miha Kralj
2025-12-21 14:37:44 -08:00
parent 54c309e5cf
commit a7b7207801
65 changed files with 1766 additions and 482 deletions
+1 -5
View File
@@ -22,10 +22,6 @@ The core mechanic is the **Money Flow Multiplier (MFM)**, also known as the Clos
This multiplier is then applied to the volume to determine the "Money Flow Volume" for the period.
### Zero-Allocation Design
Our implementation is a stateful accumulator. It maintains a single `double` state variable representing the cumulative sum.
## Mathematical Foundation
### 1. Money Flow Multiplier (MFM)
@@ -59,7 +55,7 @@ ADL is extremely lightweight.
## Validation
We validate against **TA-Lib**, **Skender.Stock.Indicators**, and **Tulip Indicators**.
Validation is performed against **TA-Lib**, **Skender.Stock.Indicators**, and **Tulip Indicators**.
- **Accuracy**: Matches external libraries to 9 decimal places.
- **Edge Cases**: Handles `High == Low` (division by zero protection) by setting MFM to 0.
+1 -5
View File
@@ -23,10 +23,6 @@ The physics here is identical to MACD:
- **Slow EMA (10)**: Represents the established, medium-term money flow.
- **Difference**: The spread between them represents the momentum of accumulation.
### Zero-Allocation Design
Our implementation composes existing zero-allocation components (`Adl` and `Ema`). The `Update` method simply pipes the bar into the ADL, and the ADL result into the two EMAs.
## Mathematical Foundation
$$
@@ -51,7 +47,7 @@ ADOSC is slightly heavier than ADL because it involves two EMAs.
## Validation
We validate against **TA-Lib**, **Skender.Stock.Indicators**, and **OoplesFinance**.
Validation is performed against **TA-Lib**, **Skender.Stock.Indicators**, and **OoplesFinance**.
- **Accuracy**: Matches external libraries to 9 decimal places.
- **Note**: Tulip's `adosc` implementation diverges significantly from other libraries and is excluded from validation.