这篇文章,我们采用numpy + matplotlib 的结合简易的绘制股票的布林带,在此之前,我们先说几个有关函数的应用。
Numpy卷积
在数学中,卷积可以被看做移动平滑的推广。
在numpy 中数组也可以做卷积。
这里我们只涉及一维卷积。
numpy.convolve(a, v, mode=‘full’)
mode可取 ‘full’ (完全卷积), ‘same’ (同维卷积), ‘valid’ (有效卷积)
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
import numpy as np
a = np.array([1, 2, 3, 4, 5])
b = np.array([6, 7, 8])
print(np.convolve(a, b))
print(np.convolve(a, b, 'same'))
print(np.convolve(a, b, 'valid'))
[ 6 19 40 61 82 67 40] #完全卷积
[19 40 61 82 67] #同维卷积
[40 61 82] #有效卷积
其内部运算如下
得 6 19 40 61 82 67 40
0 0 1 2 3 4 5 0 0
8 7 6
8 7 6
8 7 6
8 7 6
8 7 6
8 7 6
8 7