百度百科是这么写的:
量比定义:股市开市后平均每分钟的成交量与过去5个交易日平均每分钟成交量之比。
计算公式:量比=(现成交总手数 / 现累计开市时间(分) )/ 过去5日平均每分钟成交量。
这里公式没有问题,但是注意有个歧义:“过去5个交易日”,是不包括今天的!
import pandas as pd
# 读取量价数据
df = pd.read_csv('600xxx_daily.XSHG')
df = df[:'2023-02-28']['volume']
# 通过日线计算2023-02-28当日收盘的量比
vol_ratio = df[-1:].values/df[-6:-1].mean() # 1.497
import pandas as pd
# 读取量价数据
df = pd.read_csv('600xxx_1min.XSHG')
df = df[:'2023-02-28']['volume']
# 通过1分钟线计算2023-02-28 15:00:00的量比
vol_ratio = df[-240:].mean() / df[-6*240:-240].mean() # 同样是1.497
算下来可以和炒股软件上标准的量比数据进行对比。
一句话实现序列的量比计算:
df['vol_ratio'] = df['volume'] / df['volume'].shift(1).rolling(5).mean() # 量比