feat: add RSIH (Ehlers Hann-Windowed RSI) indicator

This commit is contained in:
Miha Kralj
2026-03-17 12:40:55 -07:00
parent 7db48e2418
commit 4552d8529d
16 changed files with 1386 additions and 0 deletions
+9
View File
@@ -50,6 +50,7 @@ __all__ = [
"deco",
"dosc",
"dso",
"rsih",
"dymi",
"crsi",
"bbb",
@@ -556,6 +557,14 @@ def dso(close: object, period: int = 40, offset: int = 0, **kwargs) -> object:
return _wrap(dst, idx, f"DSO_{period}", "oscillators", offset)
def rsih(close: object, period: int = 14, offset: int = 0, **kwargs) -> object:
"""Ehlers Hann-Windowed RSI."""
period = int(kwargs.get("length", period)); offset = int(offset)
src, idx = _arr(close); n = len(src); dst = _out(n)
_check(_lib.qtl_rsih(_ptr(src), n, _ptr(dst), period))
return _wrap(dst, idx, f"RSIH_{period}", "oscillators", offset)
def dymi(close: object, base_period: int = 14, short_period: int = 5,
long_period: int = 10, min_period: int = 3, max_period: int = 30,
offset: int = 0, **kwargs) -> object: