技术指标¶
技术指标模块提供常见的技术分析指标计算功能,需要通过 akshare_one.indicators 模块调用。
导入模块¶
from akshare_one.indicators import (
get_sma,
get_ema,
get_rsi,
get_macd,
get_bollinger_bands,
get_stoch,
get_atr,
get_cci,
get_adx,
get_willr,
get_ad,
get_adosc,
get_obv,
get_mom,
get_sar,
get_tsf,
get_apo,
get_aroon,
get_aroonosc,
get_bop,
get_cmo,
get_dx,
get_mfi,
get_minus_di,
get_minus_dm,
get_plus_di,
get_plus_dm,
get_ppo,
get_roc,
get_rocp,
get_rocr,
get_rocr100,
get_trix,
get_ultosc,
)
注意事项
- 大部分指标函数支持
calculator_type参数,可以是talib或simple,默认值为simple。 simple使用 Python 实现,不需要额外依赖。talib需要额外安装 TA-Lib 依赖并使用pip install akshare-one[talib]安装。
趋势指标¶
简单移动平均线 (SMA)¶
指数移动平均线 (EMA)¶
移动平均收敛发散指标 (MACD)¶
抛物线转向指标 (Parabolic SAR)¶
时间序列预测 (Time Series Forecast)¶
平均方向性指标 (ADX)¶
动向指标 (DMI/DX)¶
正/负方向指标 (+DI/-DI)¶
def get_plus_di(df: pd.DataFrame, window: int = 14) -> pd.DataFrame
def get_minus_di(df: pd.DataFrame, window: int = 14) -> pd.DataFrame
正/负方向运动 (+DM/-DM)¶
def get_plus_dm(df: pd.DataFrame, window: int = 14) -> pd.DataFrame
def get_minus_dm(df: pd.DataFrame, window: int = 14) -> pd.DataFrame
阿隆指标 (Aroon)¶
动量指标¶
相对强弱指数 (RSI)¶
随机指标 (Stochastic Oscillator)¶
def get_stoch(df: pd.DataFrame, window: int = 14, smooth_d: int = 3, smooth_k: int = 3) -> pd.DataFrame
商品通道指数 (CCI)¶
威廉指标 (Williams' %R)¶
动量指标 (Momentum)¶
变动率 (ROC)¶
def get_roc(df: pd.DataFrame, window: int = 10) -> pd.DataFrame
def get_rocp(df: pd.DataFrame, window: int = 10) -> pd.DataFrame
def get_rocr(df: pd.DataFrame, window: int = 10) -> pd.DataFrame
def get_rocr100(df: pd.DataFrame, window: int = 10) -> pd.DataFrame
终极振荡器 (Ultimate Oscillator)¶
def get_ultosc(df: pd.DataFrame, window1: int = 7, window2: int = 14, window3: int = 28) -> pd.DataFrame
钱德动量振荡器 (CMO)¶
均势指标 (BOP)¶
三重指数平滑平均线的1日变动率 (TRIX)¶
绝对价格振荡器 (APO)¶
def get_apo(df: pd.DataFrame, fast_period: int = 12, slow_period: int = 26, ma_type: int = 0) -> pd.DataFrame
价格振荡器百分比 (PPO)¶
def get_ppo(df: pd.DataFrame, fast_period: int = 12, slow_period: int = 26, ma_type: int = 0) -> pd.DataFrame