在Python股票气泡图(一) - 知乎专栏介绍了股票成交by每天by每价格的画图,它能够给你一个直观的每天成交价格、成交量的分布。
知道股票一段时间成交价格集中区域,可以帮助了解这只股票的大家的普遍成本,有助于判断价格所处位置,风险程度。
还是按照前文所讲的,我已经把成交交易的明细整理成HDF5格式,以股票代码做为Key,方便查询。
以 珠海港 sz000507为例。
code = 'sz000507'
files =['trade03.h5','trade04.h5','trade05.h5']
period = 60
start = datetime.now()-(period+1)*BDay()
a=pd.DataFrame(data=None,index=None,columns=None)
for file in files:
try:
t=pd.read_hdf(file, key=code)
a=a.append(t)
except:
continue
if a.empty:
return 0
a=a[~a.index.duplicated(keep='last')]从历史交易数据中,获取sz000507珠海港的交易信息,并且剔除重复项。
接下来整理数据:
t =a[pd.to_datetime(a['date']) > start]
grp = t.groupby('price')
sumbyprice = grp['amount'].sum()
sumbyprice = sumbyprice .reset_index('price')接下来,画图,还是用Boken,因为它的tooltips很好用,可以方便的查询所在价格的成交额。这次要用到Boken.charts库,这是一个封装的高级接口。
from bokeh.charts import Bar,show,output_file
bar = Bar(bb, values='amount',label='price',legend=False,plot_width=900,
tooltips=[ ('price', '@price'),('amount', '@height')])
show(bar)图形结果如下图:
因为我们提取了60天的成交数据,再加上这只股票有几个涨停板然后再回落,成交价格区间跨度很大,从上一篇的汽泡图可以看出来,他从7块涨到11.44,因此显示图像那个的线条很细,比较密集,不过Boken可以局部放大,或者将plot_width放大,也可以看的清楚。
他的密集区在9.5-10之间。
选取部分区域局部放大后。
这里可以看到从10.3-10.7之间成交量很小,应该是主力强力拉升形成的空档期,差不多60天的时间里,成交量都很小,为什么呢,可以猜想。
一叶知秋,从混乱中发现交易的意图,您有什么奇思妙想,欢迎回复。