Add Negative Volume Index (NVI) implementation and tests

- Implemented NVI indicator in Nvi.Quantower.cs with configurable start value and cold value display option.
- Created unit tests for NVI functionality in Nvi.Tests.cs, covering various scenarios including initialization, updates, and edge cases.
- Added validation tests in Nvi.Validation.Tests.cs to ensure NVI matches expected behavior against known implementations.
- Developed comprehensive documentation for NVI in Nvi.md, detailing its historical context, mathematical foundation, and interpretation guide.
- Included error handling for invalid input values and ensured compatibility with volume data.
This commit is contained in:
Miha Kralj
2026-01-28 15:33:47 -08:00
parent c7e55c2f1e
commit dc1902f4d5
20 changed files with 4195 additions and 6 deletions
+3 -3
View File
@@ -157,7 +157,7 @@ No external reference exists. Implementation verified through unit tests, edge c
| **KDJ Indicator** | Kdj | - | - | - | - |
| **Keltner Channel** | [Kchannel](../lib/channels/kchannel/kchannel.md) | - | - | ✔️ | ❔ |
| **Kendall Rank Correlation** | Kendall | - | - | - | ❔ |
| **Klinger Volume Oscillator** | Kvo | - | ✔️ | ✔️ | ❔ |
| **Klinger Volume Oscillator** | [Kvo](../lib/volume/kvo/Kvo.md) | - | ✔️ | ✔️ | ❔ |
| **Kurtosis** | Kurtosis | - | - | - | ❔ |
| **Least Squares Moving Average** | [Lsma](../lib/trends/lsma/lsma.md) | ✔️ | - | ✔️ | ❔ |
| **Linear Regression** | [LinReg](../lib/statistics/linreg/LinReg.md) | ✔️ | ✔️ | ✔️ | [⚠️](../lib/statistics/linreg/LinReg.md#validation) |
@@ -188,11 +188,11 @@ No external reference exists. Implementation verified through unit tests, edge c
| **Modified MA** | [Mma](../lib/trends_IIR/mma/Mma.md) | - | - | - | - |
| **Momentum** | Mom | ✔️ | ✔️ | - | ❔ |
| **Momentum change; 2nd derivative** | Accel | - | - | - | - |
| **Money Flow Index** | Mfi | ✔️ | ✔️ | ✔️ | ❔ |
| **Money Flow Index** | [Mfi](../lib/volume/mfi/Mfi.md) | ✔️ | ✔️ | ✔️ | ❔ |
| **Moon Phase** | Moon | - | - | - | - |
| **Moving Average Convergence/Divergence** | [Macd](../lib/momentum/macd/Macd.md) | ✔️ | ✔️ | ✔️ | ❔ |
| **Moving Average Envelopes** | [Maenv](../lib/channels/maenv/maenv.md) | - | - | ✔️ | ❔ |
| **Negative Volume Index** | Nvi | - | ✔️ | - | |
| **Negative Volume Index** | [Nvi](../lib/volume/nvi/Nvi.md) | - | ✔️ | - | - |
| **Normalized Average True Range** | Natr | ✔️ | ✔️ | - | - |
| **Normalized Shannon Entropy** | Entropy | - | - | - | - |
| **Notch Filter** | [Notch](../lib/filters/notch/Notch.md) | - | - | - | - |