pybroker.vect 模块
包含向量化工具函数。
- adx(high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], lookback: int) NDArray[float64][源代码]
计算平均动向指数(Average Directional Movement Index,ADX)。
- 参数:
high -- 最高价。
low -- 最低价。
close -- 收盘价。
lookback -- 回溯 K 线数量。
- 返回:
计算结果组成的
numpy.ndarray。
- aroon_diff(high: NDArray[float64], low: NDArray[float64], lookback: int) NDArray[float64][源代码]
计算 Aroon 上升趋势指标减去 Aroon 下降趋势指标。
- 参数:
high -- 最高价。
low -- 最低价。
lookback -- 回溯 K 线数量。
- 返回:
计算结果组成的
numpy.ndarray。
- aroon_down(high: NDArray[float64], low: NDArray[float64], lookback: int) NDArray[float64][源代码]
计算 Aroon 下降趋势指标。
- 参数:
high -- 最高价。
low -- 最低价。
lookback -- 回溯 K 线数量。
- 返回:
计算结果组成的
numpy.ndarray。
- aroon_up(high: NDArray[float64], low: NDArray[float64], lookback: int) NDArray[float64][源代码]
计算 Aroon 上升趋势指标。
- 参数:
high -- 最高价。
low -- 最低价。
lookback -- 回溯 K 线数量。
- 返回:
计算结果组成的
numpy.ndarray。
- atr(high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], lookback: int) NDArray[float64][源代码]
计算平均真实波幅(Average True Range,ATR)。
真实波幅取
high - low、abs(high - previous close)和abs(low - previous close)三者中的最大值。- 参数:
high -- 最高价。
low -- 最低价。
close -- 收盘价。
lookback -- 回溯 K 线数量。
- 返回:
由真实波幅的
lookback根 K 线均值组成的numpy.ndarray。前lookback个值为NaN,因为第一根 K 线的真实波幅没有前一根 K 线的收盘价可供参考。
- close_minus_ma(high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], lookback: int, atr_length: int, scale: float = 1.0) NDArray[float64][源代码]
计算收盘价减去移动平均线(Close Minus Moving Average)。
- 参数:
close -- 收盘价。
high -- 最高价。
low -- 最低价。
lookback -- 回溯 K 线数量。
atr_length -- 用于平均真实波幅(ATR)归一化的回溯长度。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为1.0。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- cross(a: NDArray[float64], b: NDArray[float64]) NDArray[bool][源代码]
检测
a上穿b的交叉。- 参数:
a -- 数据组成的
numpy.ndarray。b -- 数据组成的
numpy.ndarray。
- 返回:
当
a上穿b时取值为1,否则取值为0的numpy.ndarray。
- cubic_deviation(values: NDArray[float64], lookback: int, scale: float = 0.6) NDArray[float64][源代码]
计算相对三次趋势的偏离度(Deviation from Cubic Trend)。
- 参数:
values -- 输入组成的
numpy.ndarray。lookback -- 回溯 K 线数量。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为0.6。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- cubic_trend(values: NDArray[float64], high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], lookback: int, atr_length: int, scale: float = 1.0) NDArray[float64][源代码]
计算三次趋势强度(Cubic Trend Strength)。
- 参数:
values -- 输入组成的
numpy.ndarray。high -- 最高价。
low -- 最低价。
close -- 收盘价。
lookback -- 回溯 K 线数量。
atr_length -- 用于平均真实波幅(ATR)归一化的回溯长度。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为1.0。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- delta_on_balance_volume(close: NDArray[float64], volume: NDArray[float64], lookback: int, delta_length: int = 0, scale: float = 0.6) NDArray[float64][源代码]
计算能量潮变化量(Delta On-Balance Volume)。
- 参数:
close -- 收盘价。
volume -- 成交量。
lookback -- 回溯 K 线数量。
delta_length -- 差分所使用的滞后期。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为0.6。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- detrended_rsi(values: NDArray[float64], short_length: int, long_length: int, reg_length: int) NDArray[float64][源代码]
计算去趋势相对强弱指数(Detrended RSI)。
- 参数:
values -- 输入组成的
numpy.ndarray。short_length -- 短期 RSI 的回溯长度。
long_length -- 长期 RSI 的回溯长度。
reg_length -- 用于线性回归的 K 线数量。
- 返回:
计算结果组成的
numpy.ndarray。
- highv(array: NDArray[float64], n: int) NDArray[float64][源代码]
计算
array中每n个周期的最高值。- 参数:
array -- 数据组成的
numpy.ndarray。n -- 周期长度。
- 返回:
array中每n个周期最高值组成的numpy.ndarray。
- intraday_intensity(high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], volume: NDArray[float64], lookback: int, smoothing: float = 0.0) NDArray[float64][源代码]
计算日内强度(Intraday Intensity)。
- 参数:
high -- 最高价。
low -- 最低价。
close -- 收盘价。
volume -- 成交量。
lookback -- 回溯 K 线数量。
smoothing -- 平滑量;
<= 1表示不平滑。默认为0。
- 返回:
计算结果组成的
numpy.ndarray。
- laguerre_rsi(open: NDArray[float64], high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], fe_length: int = 13) NDArray[float64][源代码]
计算拉盖尔相对强弱指数(Laguerre RSI)。
- 参数:
open -- 开盘价。
high -- 最高价。
low -- 最低价。
close -- 收盘价。
fe_length -- 分形能量(Fractal Energy)长度。默认为
13。
- 返回:
计算结果组成的
numpy.ndarray。
- linear_deviation(values: NDArray[float64], lookback: int, scale: float = 0.6) NDArray[float64][源代码]
计算相对线性趋势的偏离度(Deviation from Linear Trend)。
- 参数:
values -- 输入组成的
numpy.ndarray。lookback -- 回溯 K 线数量。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为0.6。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- linear_trend(values: NDArray[float64], high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], lookback: int, atr_length: int, scale: float = 1.0) NDArray[float64][源代码]
计算线性趋势强度(Linear Trend Strength)。
- 参数:
values -- 输入组成的
numpy.ndarray。high -- 最高价。
low -- 最低价。
close -- 收盘价。
lookback -- 回溯 K 线数量。
atr_length -- 用于平均真实波幅(ATR)归一化的回溯长度。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为1.0。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- lowv(array: NDArray[float64], n: int) NDArray[float64][源代码]
计算
array中每n个周期的最低值。- 参数:
array -- 数据组成的
numpy.ndarray。n -- 周期长度。
- 返回:
array中每n个周期最低值组成的numpy.ndarray。
- macd(high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], short_length: int, long_length: int, smoothing: float = 0.0, scale: float = 1.0) NDArray[float64][源代码]
计算指数平滑异同移动平均线(Moving Average Convergence Divergence,MACD)。
- 参数:
high -- 最高价。
low -- 最低价。
close -- 收盘价。
short_length -- 短期回溯长度。
long_length -- 长期回溯长度。
smoothing -- 计算 MACD 减去其平滑值(当参数
>= 2时)。scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为1.0。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- money_flow(high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], volume: NDArray[float64], lookback: int, smoothing: float = 0.0) NDArray[float64][源代码]
计算佳庆资金流量指标(Chaikin's Money Flow)。
- 参数:
high -- 最高价。
low -- 最低价。
close -- 收盘价。
volume -- 成交量。
lookback -- 回溯 K 线数量。
smoothing -- 平滑量;
<= 1表示不平滑。默认为0。
- 返回:
计算结果组成的
numpy.ndarray。
- normalized_negative_volume_index(close: NDArray[float64], volume: NDArray[float64], lookback: int, scale: float = 0.5) NDArray[float64][源代码]
计算归一化负成交量指标(Normalized Negative Volume Index)。
- 参数:
close -- 收盘价。
volume -- 成交量。
lookback -- 回溯 K 线数量。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为0.5。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- normalized_on_balance_volume(close: NDArray[float64], volume: NDArray[float64], lookback: int, scale: float = 0.6) NDArray[float64][源代码]
计算归一化能量潮指标(Normalized On-Balance Volume)。
- 参数:
close -- 收盘价。
volume -- 成交量。
lookback -- 回溯 K 线数量。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为0.6。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- normalized_positive_volume_index(close: NDArray[float64], volume: NDArray[float64], lookback: int, scale: float = 0.5) NDArray[float64][源代码]
计算归一化正成交量指标(Normalized Positive Volume Index)。
- 参数:
close -- 收盘价。
volume -- 成交量。
lookback -- 回溯 K 线数量。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为0.5。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- price_change_oscillator(high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], short_length: int, multiplier: int, scale: float = 4.0) NDArray[float64][源代码]
计算价格变化振荡指标(Price Change Oscillator)。
- 参数:
high -- 最高价。
low -- 最低价。
close -- 收盘价。
short_length -- 短期回溯 K 线数量。
multiplier -- 用于计算长期回溯 K 线数量的乘数:长期回溯长度 =
multiplier * short_length。scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为4.0。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- price_intensity(open: NDArray[float64], high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], smoothing: float = 0.0, scale: float = 0.8) NDArray[float64][源代码]
计算价格强度(Price Intensity)。
- 参数:
open -- 开盘价。
high -- 最高价。
low -- 最低价。
close -- 收盘价。
smoothing -- 平滑量。默认为
0。scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为0.8。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- price_volume_fit(close: NDArray[float64], volume: NDArray[float64], lookback: int, scale: float = 9.0) NDArray[float64][源代码]
计算价量拟合指标(Price Volume Fit)。
- 参数:
close -- 收盘价。
volume -- 成交量。
lookback -- 回溯 K 线数量。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为9.0。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- quadratic_deviation(values: NDArray[float64], lookback: int, scale: float = 0.6) NDArray[float64][源代码]
计算相对二次趋势的偏离度(Deviation from Quadratic Trend)。
- 参数:
values -- 输入组成的
numpy.ndarray。lookback -- 回溯 K 线数量。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为0.6。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- quadratic_trend(values: NDArray[float64], high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], lookback: int, atr_length: int, scale: float = 1.0) NDArray[float64][源代码]
计算二次趋势强度(Quadratic Trend Strength)。
- 参数:
values -- 输入组成的
numpy.ndarray。high -- 最高价。
low -- 最低价。
close -- 收盘价。
lookback -- 回溯 K 线数量。
atr_length -- 用于平均真实波幅(ATR)归一化的回溯长度。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为1.0。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- reactivity(high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], volume: NDArray[float64], lookback: int, smoothing: float = 1.0, scale: float = 0.6) NDArray[float64][源代码]
计算反应性指标(Reactivity)。
- 参数:
high -- 最高价。
low -- 最低价。
close -- 收盘价。
volume -- 成交量。
lookback -- 回溯 K 线数量。
smoothing -- 平滑乘数。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为0.6。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- returnv(array: NDArray[float64], n: int = 1, use_log: bool = False) NDArray[float64][源代码]
计算收益率。
- 参数:
array -- 数据组成的
numpy.ndarray。n -- 收益率计算周期。默认为 1。
use_log -- 是否计算对数收益率(
log(array[i] / array[i - n])),而非算术收益率。默认为False。
- 返回:
收益率组成的
numpy.ndarray。
- stochastic(high: NDArray[float64], low: NDArray[float64], close: NDArray[float64], lookback: int, smoothing: int = 0) NDArray[float64][源代码]
计算随机指标(Stochastic,KD)。
- 参数:
high -- 最高价。
low -- 最低价。
close -- 收盘价。
lookback -- 回溯 K 线数量。
smoothing -- 原始随机值被平滑的次数,为 0、1 或 2 次。默认为
0。
- 返回:
计算结果组成的
numpy.ndarray。
- stochastic_rsi(values: NDArray[float64], rsi_lookback: int, sto_lookback: int, smoothing: float = 0.0) NDArray[float64][源代码]
计算随机相对强弱指数(Stochastic RSI)。
- 参数:
values -- 输入组成的
numpy.ndarray。rsi_lookback -- RSI 计算的回溯长度。
sto_lookback -- 随机指标(Stochastic)计算的回溯长度。
smoothing -- 平滑量;
<= 1表示不平滑。默认为0。
- 返回:
计算结果组成的
numpy.ndarray。
- sumv(array: NDArray[float64], n: int) NDArray[float64][源代码]
计算
array中每n个周期的总和。- 参数:
array -- 数据组成的
numpy.ndarray。n -- 周期长度。
- 返回:
array中每n个周期总和组成的numpy.ndarray。
- volume_momentum(volume: NDArray[float64], short_length: int, multiplier: int = 2, scale: float = 3.0) NDArray[float64][源代码]
计算成交量动量(Volume Momentum)。
- 参数:
volume -- 成交量。
short_length -- 短期回溯 K 线数量。
multiplier -- 回溯乘数。默认为
2。scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为3.0。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。
- volume_weighted_ma_ratio(close: NDArray[float64], volume: NDArray[float64], lookback: int, scale: float = 1.0) NDArray[float64][源代码]
计算成交量加权移动平均比率(Volume-Weighted Moving Average Ratio)。
- 参数:
close -- 收盘价。
volume -- 成交量。
lookback -- 回溯 K 线数量。
scale -- 大于
1.0会使返回值被压缩得更多,小于1.0则压缩得更少。默认为1.0。
- 返回:
计算结果组成的
numpy.ndarray,取值范围为 [-50, 50]。