前言:
而今同学们对“windpython策略”大约比较注意,同学们都需要知道一些“windpython策略”的相关文章。那么小编同时在网络上搜集了一些有关“windpython策略””的相关资讯,希望看官们能喜欢,小伙伴们快快来学习一下吧!NO.94
2020.05.10
工欲善其事,必先利其器
//
- 前言 -
◆ ◆ ◆ ◆
在万德及其他分析交易工具中,往往会出现以下行情图。
数据来源:wind
今天,小咖带大家在Python中做出股票行情的蜡烛图、均线、成交量,最终将得到以下结果。
数据来源:西瓜财经资讯
- 用Python做出行情图 -
◆ ◆ ◆ ◆
本文需要使用蜡烛图函数,因此需要在语句之前进行以下操作,而具体步骤如下:
pip install mpl_finance
第一步:导入各种“包”(有些不一定用到)。
数据来源:西瓜财经资讯
第二步:从wind提取指数行情数据
(1)首次使用Python的wind接口时,需要进行如下操作:wind客户端——量化——修复插件——修复Python接口。
(2)在导入“包”时已经导入了Windpy,并设置为w,之后的语句直接使用w即可。
(3)语句需要以w.start() 开始,否则所有与wind相关的程序都无法运行,但只要运行一次后不用重复运行。
(4)通过w.wsd函数,提取指数"道琼斯工业"的行情数据:开盘价、收盘价、最高价、最低价,成交量。
数据来源:西瓜财经资讯
第三步:数据准备
(1)由于candlestick_ochl需要('开盘','收盘','最高','最低')顺序的行情数据,因此借用enumerate()。它用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
比如在python中运作以下语句:
names=['Amy', 'Seline', 'Bob', 'Windy']
list(enumerate(names))
最终会输出:
[(0,'Amy'), (1,'Seline'), (2,'Bob'), (3, 'Windy')]
(2)用def format_date(x,pos)设定一个日期转换方法,以避免作图时X轴出现非交易日而造成图形不连贯。
数据来源:西瓜财经资讯
第四步:作图
(1)先设定图形大小plt.figure(figsize=(20,10)),再对子图进行设定和控制。如:gs = GridSpec(3, 1),表示将整体图形分为三行一列,而ax1 = plt.subplot(gs[:2, :])表示将第一个子图设定宽为两行一列。
(2)做出第一个子图ax1,主要是K线图和折线图组合,折线图见往期回顾,而K线图函数及其详解如下:
candlestick_ochl(ax,data_mat,colordown,colorup,width,alpha)
——ax 绘图Axes的实例
——data_mat价格历史数据
——width图像中红绿矩形的宽度,代表天数
——colorup收盘价格大于开盘价格时的颜色
——colordown收盘低于开盘价格时矩形的颜色
——alpha矩形的颜色的透明度
(3)设置子图ax1的图例位置、标题、Y轴名称及字体大小等。
数据来源:西瓜财经资讯
(4)做出第二个子图ax2的成交量柱状图。由于需要对柱体按照当天收盘涨跌情况进行颜色区分,因此借用lambda对dateframe新生成一个判断列。
(5)设置子图ax2的Y轴名称及字体大小。
数据来源:西瓜财经资讯
- 后言 -
◆ ◆ ◆ ◆
想要获取源代码的小伙伴关注公众号,后台回复“Python金融应用之图表制作(七)”即可。注意,源代码可以直接粘贴使用,而且是带文字说明的哦。
end
公众号:西瓜财经资讯
撰稿人:安静的金融美女子
标签: #windpython策略