mirror of
https://ghfast.top/https://github.com/aeroxw/easy_tdx_max.git
synced 2026-09-12 16:54:20 +08:00
118 lines
5.6 KiB
Python
118 lines
5.6 KiB
Python
"""Type stubs for MyTT technical indicator library.
|
|
|
|
Provides type annotations for the MyTT functions used in easy_tdx.
|
|
All indicator functions accept numpy arrays and return numpy arrays.
|
|
"""
|
|
from __future__ import annotations
|
|
|
|
import numpy as np
|
|
import numpy.typing as npt
|
|
|
|
NDArray = npt.NDArray[np.float64]
|
|
|
|
# ── Moving Averages ──────────────────────────────────────────────────────────
|
|
|
|
def MA(S: npt.ArrayLike, N: int) -> NDArray: ...
|
|
def EMA(S: npt.ArrayLike, N: int) -> NDArray: ...
|
|
def SMA(S: npt.ArrayLike, N: int, M: int = ...) -> NDArray: ...
|
|
def WMA(S: npt.ArrayLike, N: int) -> NDArray: ...
|
|
def DMA(S: npt.ArrayLike, A: npt.ArrayLike) -> NDArray: ...
|
|
|
|
# ── MACD / Momentum ─────────────────────────────────────────────────────────
|
|
|
|
def MACD(
|
|
CLOSE: npt.ArrayLike,
|
|
SHORT: int = ...,
|
|
LONG: int = ...,
|
|
M: int = ...,
|
|
) -> tuple[NDArray, NDArray, NDArray]: ...
|
|
|
|
def RSI(CLOSE: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def MTM(CLOSE: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def ROC(CLOSE: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def OBV(CLOSE: npt.ArrayLike, VOL: npt.ArrayLike) -> NDArray: ...
|
|
|
|
# ── Bollinger / Envelope ────────────────────────────────────────────────────
|
|
|
|
def BOLL(
|
|
CLOSE: npt.ArrayLike,
|
|
N: int = ...,
|
|
P: float = ...,
|
|
) -> tuple[NDArray, NDArray, NDArray]: ...
|
|
|
|
# ── Trend Indicators ────────────────────────────────────────────────────────
|
|
|
|
def ATR(CLOSE: npt.ArrayLike, HIGH: npt.ArrayLike, LOW: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def DMI(
|
|
CLOSE: npt.ArrayLike,
|
|
HIGH: npt.ArrayLike,
|
|
LOW: npt.ArrayLike,
|
|
M: int = ...,
|
|
N: int = ...,
|
|
) -> tuple[NDArray, NDArray, NDArray, NDArray]: ...
|
|
|
|
def KDJ(
|
|
CLOSE: npt.ArrayLike,
|
|
HIGH: npt.ArrayLike,
|
|
LOW: npt.ArrayLike,
|
|
N: int = ...,
|
|
M1: int = ...,
|
|
M2: int = ...,
|
|
) -> tuple[NDArray, NDArray, NDArray]: ...
|
|
|
|
def WR(CLOSE: npt.ArrayLike, HIGH: npt.ArrayLike, LOW: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def CCI(CLOSE: npt.ArrayLike, HIGH: npt.ArrayLike, LOW: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def TRIX(CLOSE: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
|
|
# ── Volume Indicators ───────────────────────────────────────────────────────
|
|
|
|
def VR(
|
|
CLOSE: npt.ArrayLike,
|
|
VOL: npt.ArrayLike,
|
|
N: int = ...,
|
|
) -> NDArray: ...
|
|
def MFI(CLOSE: npt.ArrayLike, HIGH: npt.ArrayLike, LOW: npt.ArrayLike, VOL: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def EMV(HIGH: npt.ArrayLike, LOW: npt.ArrayLike, VOL: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
|
|
# ── Other Indicators ────────────────────────────────────────────────────────
|
|
|
|
def ASI(CLOSE: npt.ArrayLike, HIGH: npt.ArrayLike, LOW: npt.ArrayLike, OPEN: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def BBI(CLOSE: npt.ArrayLike, N1: int = ..., N2: int = ..., N3: int = ..., N4: int = ...) -> NDArray: ...
|
|
def BIAS(CLOSE: npt.ArrayLike, N1: int = ..., N2: int = ..., N3: int = ...) -> tuple[NDArray, NDArray, NDArray]: ...
|
|
def BIAS_SIGNAL(CLOSE: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def BRAR(OPEN: npt.ArrayLike, CLOSE: npt.ArrayLike, HIGH: npt.ArrayLike, LOW: npt.ArrayLike, N: int = ...) -> tuple[NDArray, NDArray]: ...
|
|
def CR(HIGH: npt.ArrayLike, LOW: npt.ArrayLike, CLOSE: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def DFMA(CLOSE: npt.ArrayLike, N1: int = ..., N2: int = ...) -> tuple[NDArray, NDArray]: ...
|
|
def DPO(CLOSE: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def EXPMA(CLOSE: npt.ArrayLike, N1: int = ..., N2: int = ...) -> tuple[NDArray, NDArray]: ...
|
|
def KTN(CLOSE: npt.ArrayLike, HIGH: npt.ArrayLike, LOW: npt.ArrayLike, N: int = ..., M: int = ...) -> tuple[NDArray, NDArray, NDArray]: ...
|
|
def MASS(HIGH: npt.ArrayLike, LOW: npt.ArrayLike, N1: int = ..., N2: int = ...) -> NDArray: ...
|
|
def PSY(CLOSE: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def TAQ(CLOSE: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def XSII(CLOSE: npt.ArrayLike, HIGH: npt.ArrayLike, LOW: npt.ArrayLike, N: int = ...) -> NDArray: ...
|
|
def ZHUOYAO(CLOSE: npt.ArrayLike, HIGH: npt.ArrayLike, LOW: npt.ArrayLike, VOL: npt.ArrayLike) -> NDArray: ...
|
|
def SAR(HIGH: npt.ArrayLike, LOW: npt.ArrayLike, AF_STEP: float = ..., AF_MAX: float = ...) -> NDArray: ...
|
|
def VWAP(
|
|
CLOSE: npt.ArrayLike,
|
|
HIGH: npt.ArrayLike,
|
|
LOW: npt.ArrayLike,
|
|
VOL: npt.ArrayLike,
|
|
N: int = ...,
|
|
) -> NDArray: ...
|
|
def AROON(
|
|
HIGH: npt.ArrayLike,
|
|
LOW: npt.ArrayLike,
|
|
N: int = ...,
|
|
) -> tuple[NDArray, NDArray, NDArray]: ...
|
|
def FK(CLOSE: npt.ArrayLike) -> NDArray: ...
|
|
|
|
# ── Utility Functions ────────────────────────────────────────────────────────
|
|
|
|
def CROSS(A: npt.ArrayLike, B: npt.ArrayLike) -> NDArray: ...
|
|
def HHV(S: npt.ArrayLike, N: int) -> NDArray: ...
|
|
def LLV(S: npt.ArrayLike, N: int) -> NDArray: ...
|
|
def REF(S: npt.ArrayLike, N: int) -> NDArray: ...
|
|
def SUM(S: npt.ArrayLike, N: int) -> NDArray: ...
|
|
def COUNT(S: npt.ArrayLike, N: int) -> NDArray: ...
|
|
def STD(S: npt.ArrayLike, N: int) -> NDArray: ...
|