mirror of
https://github.com/mihakralj/QuanTAlib.git
synced 2026-08-23 21:18:04 +00:00
Add "Ehlers" prefix to 5 Ehlers indicators: SAM, PMA, ILRS, CTI, RVGI
Standardize naming convention so all Ehlers-originated indicators have "Ehlers" in their display name across all documentation and code surfaces: - SAM: Smoothed Adaptive Momentum → Ehlers Smoothed Adaptive Momentum - PMA: Predictive Moving Average → Ehlers Predictive Moving Average - ILRS: Integral of LinReg Slope → Ehlers Integral of LinReg Slope - CTI: Correlation Trend Indicator → Ehlers Correlation Trend Indicator - RVGI: Relative Vigor Index → Ehlers Relative Vigor Index Updated across: .md H1 titles, XML doc summaries, Quantower Name properties, Quantower test assertions, _sidebar.md, lib/_index.md, category _index.md files, docs/indicators.md, docs/validation.md. Build: 0 warnings, 0 errors. All tests pass.
This commit is contained in:
@@ -18,14 +18,14 @@ Finite Impulse Response (FIR) trend indicators. These use fixed-length windows w
|
||||
| [HANMA](hanma/Hanma.md) | Hanning MA | Hanning (raised cosine). Zero at edges. Smooth roll-off. |
|
||||
| [HEND](hend/Hend.md) | Henderson MA | Henderson window. Optimized for trend extraction. Minimal distortion. |
|
||||
| [HMA](hma/Hma.md) | Hull MA | Reduced lag via weighted average differencing. Can overshoot. |
|
||||
| [ILRS](ilrs/Ilrs.md) | Integral of Linear Regression Slope | Cumulative linear regression slope. Smooth trend tracking. |
|
||||
| [ILRS](ilrs/Ilrs.md) | Ehlers Integral of Linear Regression Slope | Cumulative linear regression slope. Smooth trend tracking. |
|
||||
| [KAISER](kaiser/Kaiser.md) | Kaiser Window MA | Kaiser-Bessel window. Adjustable β parameter for sidelobe control. |
|
||||
| [LANCZOS](lanczos/Lanczos.md) | Lanczos (Sinc) Window MA | Windowed sinc function. Optimal frequency-domain characteristics. |
|
||||
| [LSMA](lsma/Lsma.md) | Least Squares MA | Linear regression endpoint. Extrapolates trend. |
|
||||
| [NLMA](nlma/Nlma.md) | Non-Lag MA | Damped cosine kernel convolution. Near-zero lag FIR. |
|
||||
| [NYQMA](nyqma/Nyqma.md) | Nyquist MA | Dual LWMA cascade. Nyquist-compliant FIR smoothing. |
|
||||
| [PARZEN](parzen/Parzen.md) | Parzen (de la Vallée-Poussin) Window MA | Parzen window. Piecewise cubic. Good spectral leakage control. |
|
||||
| [PMA](pma/Pma.md) | Predictive Moving Average | Ehlers predictive filter combining WMA cascade with linear extrapolation. |
|
||||
| [PMA](pma/Pma.md) | Ehlers Predictive Moving Average | Ehlers predictive filter combining WMA cascade with linear extrapolation. |
|
||||
| [PWMA](pwma/Pwma.md) | Pascal Weighted MA | Pascal's triangle coefficients. Binomial distribution weights. |
|
||||
| [QRMA](qrma/Qrma.md) | Quadratic Regression MA | Quadratic polynomial regression endpoint. Captures curvature. |
|
||||
| [RAIN](rain/Rain.md) | Rainbow MA | 10× cascaded SMA. Extreme smoothing via FIR convolution. |
|
||||
|
||||
@@ -31,7 +31,7 @@ public sealed class IlrsIndicator : Indicator, IWatchlistIndicator
|
||||
{
|
||||
OnBackGround = true;
|
||||
SeparateWindow = false;
|
||||
Name = "ILRS - Integral of Linear Regression Slope";
|
||||
Name = "ILRS - Ehlers Integral of Linear Regression Slope";
|
||||
Description = "Cumulative sum of rolling linear regression slope (Ehlers)";
|
||||
_series = new LineSeries(name: $"ILRS {Period}", color: IndicatorExtensions.Averages, width: 2, style: LineStyle.Solid);
|
||||
AddLineSeries(_series);
|
||||
|
||||
@@ -4,7 +4,7 @@ using System.Runtime.InteropServices;
|
||||
namespace QuanTAlib;
|
||||
|
||||
/// <summary>
|
||||
/// ILRS: Integral of Linear Regression Slope
|
||||
/// ILRS: Ehlers Integral of Linear Regression Slope
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Computes the linear regression slope over a rolling window, then accumulates
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# ILRS: Integral of Linear Regression Slope
|
||||
# ILRS: Ehlers Integral of Linear Regression Slope
|
||||
|
||||
> *John Ehlers took the slope of a regression line, integrated it, and got a smoother trend follower. Differentiate to find direction, integrate to find position. Calculus: still useful after 300 years.*
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ public class IlrsIndicatorTests
|
||||
Assert.Equal(14, indicator.Period);
|
||||
Assert.Equal(SourceType.Close, indicator.Source);
|
||||
Assert.True(indicator.ShowColdValues);
|
||||
Assert.Equal("ILRS - Integral of Linear Regression Slope", indicator.Name);
|
||||
Assert.Equal("ILRS - Ehlers Integral of Linear Regression Slope", indicator.Name);
|
||||
Assert.False(indicator.SeparateWindow);
|
||||
Assert.True(indicator.OnBackGround);
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ public override string SourceCodeLink => "https://github.com/mihakralj/QuanTAlib
|
||||
OnBackGround = true;
|
||||
SeparateWindow = false;
|
||||
_sourceName = Source.ToString();
|
||||
Name = "PMA - Predictive Moving Average";
|
||||
Name = "PMA - Ehlers Predictive Moving Average";
|
||||
Description = "Ehlers Predictive Moving Average";
|
||||
_series = new LineSeries(name: $"PMA {Period}", color: Color.Yellow, width: 2, style: LineStyle.Solid);
|
||||
_triggerSeries = new LineSeries(name: "Trigger", color: Color.Orange, width: 1, style: LineStyle.Solid);
|
||||
|
||||
@@ -5,7 +5,7 @@ using System.Runtime.InteropServices;
|
||||
namespace QuanTAlib;
|
||||
|
||||
/// <summary>
|
||||
/// PMA: Predictive Moving Average
|
||||
/// PMA: Ehlers Predictive Moving Average
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Ehlers' linear-extrapolation filter using dual WMA cascade.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# PMA: Predictive Moving Average
|
||||
# PMA: Ehlers Predictive Moving Average
|
||||
|
||||
> *John Ehlers looked at WMA's lag and said: 'What if we just extrapolated it away?' The result is a moving average that actually tries to predict where price is going, not where it has been.*
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ public class PmaIndicatorTests
|
||||
Assert.Equal(7, indicator.Period);
|
||||
Assert.Equal(SourceType.Close, indicator.Source);
|
||||
Assert.True(indicator.ShowColdValues);
|
||||
Assert.Equal("PMA - Predictive Moving Average", indicator.Name);
|
||||
Assert.Equal("PMA - Ehlers Predictive Moving Average", indicator.Name);
|
||||
Assert.False(indicator.SeparateWindow);
|
||||
Assert.True(indicator.OnBackGround);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user