Python绘制股票移动均线的实例


Posted in Python onAugust 24, 2019

1. 前沿

移动均线是股票最进本的指标,本文采用numpy.convolve计算股票的移动均线

2. numpy.convolve

numpy.convolve(a, v, mode='full')

Returns the discrete, linear convolution of two one-dimensional sequences.

The convolution operator is often seen in signal processing, where it models the effect of a linear time-invariant system on a signal [R17]. In probability theory, the sum of two independent random variables is distributed according to the convolution of their individual distributions.

If v is longer than a, the arrays are swapped before computation.

Parameters:

a : (N,) array_like

 First one-dimensional input array.

 v : (M,) array_like

 Second one-dimensional input array.

 mode : {‘full', ‘valid', ‘same'}, optional

 ‘full':

  By default, mode is ‘full'. This returns the convolution at each point of overlap, with an output shape of (N+M-1,). At the end-points of the convolution, the signals do not overlap completely, and boundary effects may be seen.
 ‘same':

  Mode same returns output of length max(M, N). Boundary effects are still visible.
 ‘valid':

  Mode valid returns output of length max(M, N) - min(M, N) + 1. The convolution product is only given for points where the signals overlap completely. Values outside the signal boundary have no effect.

Returns:

out : ndarray

 Discrete, linear convolution of a and v.

计算公式:

Python绘制股票移动均线的实例

eg:

>>> import numpy as np
>>> 
>>> np_list = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> 
>>> np_list
array([1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> x = np.convolve(np_list, 2)
>>> x
array([ 2, 4, 6, 8, 10, 12, 14, 16, 18])
>>> x = np.convolve(np_list, [0.5, 0.5])
>>> x
array([ 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 4.5])

3. 移动均线计算

def moving_average(x, n, type='simple'):
 x = np.asarray(x)
 if type == 'simple':
  weights = np.ones(n)
 else:
  weights = np.exp(np.linspace(-1., 0., n))

 weights /= weights.sum()

 a = np.convolve(x, weights, mode='full')[:len(x)]
 a[:n] = a[n]
 return a
ma10 = moving_average(close_data, 10, 'simple')
 ma20 = moving_average(close_data, 20, 'simple')

 ax1.plot(data['date'], ma10, color='c', lw=2, label='MA (10)')
 ax1.plot(data['date'], ma20, color='red', lw=2, label='MA (20)')

4. 效果图

Python绘制股票移动均线的实例

以上这篇Python绘制股票移动均线的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
详解Python中的array数组模块相关使用
Jul 05 Python
shelve  用来持久化任意的Python对象实例代码
Oct 12 Python
Python爬虫DOTA排行榜爬取实例(分享)
Jun 13 Python
利用Python操作消息队列RabbitMQ的方法教程
Jul 19 Python
Python爬虫框架Scrapy实例代码
Mar 04 Python
python实现聊天小程序
Mar 13 Python
python实现一个简单的并查集的示例代码
Mar 19 Python
Linux下python与C++使用dlib实现人脸检测
Jun 29 Python
Python实现Restful API的例子
Aug 31 Python
python GUI库图形界面开发之PyQt5窗口布局控件QStackedWidget详细使用方法
Feb 27 Python
python_matplotlib改变横坐标和纵坐标上的刻度(ticks)方式
May 16 Python
Python与C/C++的相互调用案例
Mar 04 Python
python+selenium 鼠标事件操作方法
Aug 24 #Python
python+selenium select下拉选择框定位处理方法
Aug 24 #Python
Python封装成可带参数的EXE安装包实例
Aug 24 #Python
python识别文字(基于tesseract)代码实例
Aug 24 #Python
python图片二值化提高识别率代码实例
Aug 24 #Python
关于Python形参打包与解包小技巧分享
Aug 24 #Python
python-序列解包(对可迭代元素的快速取值方法)
Aug 24 #Python
You might like
php生成html文件方法总结
2014/12/01 PHP
php结合md5实现的加密解密方法
2016/01/25 PHP
JavaScript 判断判断某个对象是Object还是一个Array
2010/01/28 Javascript
Ajax同步与异步传输的示例代码
2013/11/21 Javascript
js实现按钮控制图片360度翻转特效的方法
2015/02/17 Javascript
浅谈javascript中onbeforeunload与onunload事件
2015/12/10 Javascript
javascript实现checkbox复选框实例代码
2016/01/10 Javascript
实例剖析AngularJS框架中数据的双向绑定运用
2016/03/04 Javascript
Window.Open打开窗体和if嵌套代码
2016/04/15 Javascript
关于Javascript回调函数的一个妙用
2016/08/29 Javascript
修改Nodejs内置的npm默认配置路径方法
2018/05/13 NodeJs
Webpack的dll功能使用
2018/06/28 Javascript
详解promise.then,process.nextTick, setTimeout 以及 setImmediate的执行顺序
2018/11/21 Javascript
vue模块拖拽实现示例代码
2019/03/09 Javascript
JQuery获取元素尺寸、位置及页面滚动事件应用示例
2019/05/14 jQuery
vue 2.5.1 源码学习 之Vue.extend 和 data的合并策略
2019/06/04 Javascript
vue微信分享插件使用方法详解
2020/02/18 Javascript
vue抽出组件并传值实例
2020/07/31 Javascript
python从入门到精通(DAY 1)
2015/12/20 Python
Python做文本按行去重的实现方法
2016/10/19 Python
Python内建函数之raw_input()与input()代码解析
2017/10/26 Python
python机器学习实战之树回归详解
2017/12/20 Python
python通过elixir包操作mysql数据库实例代码
2018/01/31 Python
用Python将一个列表分割成小列表的实例讲解
2018/07/02 Python
如何基于pythonnet调用halcon脚本
2020/01/20 Python
html5 CSS过度-webkit-transition使用介绍
2013/07/02 HTML / CSS
HTML5的一个显示电池状态的API简介
2015/06/18 HTML / CSS
匡威比利时官网:Converse Belgium
2017/04/13 全球购物
盛大笔试题
2016/11/05 面试题
产品质量承诺书
2014/03/27 职场文书
2015年度员工自我评价范文
2015/03/11 职场文书
2015年药店店长工作总结
2015/04/29 职场文书
2015小学毕业班工作总结
2015/07/21 职场文书
2016年小学教师师德承诺书
2016/03/25 职场文书
Go各时间字符串使用解析
2021/04/02 Golang
JAVA 线程池(池化技术)的实现原理
2022/04/28 Java/Android