交易策略分析指标(5) - BOLL 布林线

布林线指标 BOLL

BOLL 指标, Bollinger Bands.

根据价格, 求出标准差以及信赖区间(通道), 从而确定波动范围以及未来走势. 当价格在上下轨(通道)之间时, 认为是正常震荡; 当价格突破上轨, 认为是看涨信号, 价格突破下轨, 认为是看跌信号.

计算公式

移动平均线(N 条数据)

$$
MA(N) = \frac{\sum_1^N(P_i)}{N}
$$

标准差(N 条数据)

$$
MD(N) = \sqrt{
\frac{(P_i - MA)^2}{N}
}
$$

  • 中轨线 MB = N 日的移动平均线 = MA(N-1)
  • 上轨线 UP = 中轨线 + k1 倍的标准差 = MB + k1 * MD
  • 下轨线 DN = 中轨线 - k2 倍的标准差 = MB - k2 * MD

Python 计算

1
2
3
4
5
6
7
import talib

# npclose: numpy ndarray
upper, mid, lower = talib.BBANDS(npclose, timeperiod=5, nbdevup=2, nbdevdn=2, matype=talib.MA_Type.SMA)

# df['close']: close price series; .values: numpy ndarray
df['bbupper'], df['bbmid'], df['bblower'] = talib.BBANDS(df['close'].values, timeperiod=5, nbdevup=2, nbdevdn=2, matype=talib.MA_Type.SMA)

参数说明:

  • timeperiod: 数据条数 N
  • nbdevup: 上轨标准差倍数 k1
  • nbdevdn: 下轨标准差倍数 k2
  • matype: 计算 MA 的方式(SMA, EMA…)
Donate - Support to make this site better.
捐助 - 支持我让我做得更好.