前言
上一篇文章中,我们讲到了使用Python来进行量化交易的开发,关于Python的语法这里就不做详细讲述了,这篇文章要告诉大家,如何在阿里云上搭建Python量化交易环境。心动不如行动,和我一起开始吧!
正文
(一)购买阿里云ECS服务器,并通过SSH工具进行连接
进入aliyun.com,找到ECS服务器,点击立即购买按钮。不要羡慕我,我们公司是阿里云的合作伙伴,都是75-85折优惠,需要这个优惠的可以联系我^_^,这个ECS服务器就选择2 vCPU+8 GiB内存,操作系统: CentOS 7.4 64位。
购买完成后,直接用SSH工具进行连接,当然你也可以用阿里云提供的ecs-workbench工具进行远程连接。
我用的是Mac,所以用Mac的 SSH工具进行连接。
(二)安装Python开发环境
因为Centos7系统上默认是Python2,简单的方法就是通过yum命令来安装Python3,但这个不是最新版本,是3.6.8,Python官网最新版本是3.8.5,所以我们还是通过源码方式下载,编译并安装,然后把默认Python2替换成3,下面我们就开始吧。
1、下载python3.8.5安装包并解压
到Python官网复制下载源码地址
wget https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz
解压文件 tar zxvf Python-3.8.5.tgz
2、编辑并安装
切换到目录下 cd Python-3.8.5,编译 ./configure --prefix=/usr/local/bin/python3 (可能提示error: no acceptable C compiler found in $PATH,此时需安装gcc yum -y install gcc,然后再执行)
make && make install (可能提示zipimport.ZipImportError: can’t decompress data; zlib not available ,此时需安装yum -y install zlib*,再执行)(可能提示ModuleNotFoundError: No module named ‘_ctypes’ make: *** [install] Error 1,此时需安装yum install libffi-devel -y,再执行)
不管出现什么错误,根据错误提示安装对应的组件即可
3、修改默认版本
查看python版本 python --version 仍显示python 2.7.5
查看python3.7的版本 /usr/local/bin/python3/bin/python3 --version 显示python 3.8.5
查看python命令的绝对路径 which python 显示/usr/bin/python
删除当前软连接 rm -rf /usr/bin/python
新建python3软连接 ln -s /usr/local/bin/python3/bin/python3 /usr/bin/python
配置pip3软连接 ln -s /usr/local/bin/python3/bin/pip3 /usr/bin/pip3
升级pip3 pip3 install --upgrade pip
查看效果 python --version 显示python 3.8.5
4、恢复yum
修改完python的默认版本后,yum命令无法再执行。
vim /usr/bin/yum将文件第一行改为/usr/bin/python2.7。(2.7.x也改为2.7)
vim /usr/libexec/urlgrabber-ext-down 将文件第一行改为/usr/bin/python2.7。
这样python3.7就安装在CentOS上,同时又能够使用yum来安装软件了。
(三)安装Python量化交易相关的组件
要做量化投资,数据是基础。要获取到股票相关信息,有很多种方法,比如最古老的抓爬网页数据的方法,其他在免费数据方面,各大网站的财经板块其实已提供相应的api,如东方财富、新浪、搜狐等可以通过urlopen相应格式的网址获取数据。
我个人比较喜欢Tushare,Tushare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工 到 数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据获取方面极大地减轻工作量,使他们更加专注于策略和模型的研究与实现上。而且这个也是中国人自己开发的,碰到问题也可以在QQ群里沟通非常方便。
Tushare返回的绝大部分的数据格式都是pandas DataFrame类型,非常便于用pandas/NumPy/Matplotlib进行数据分析和可视化,所以这三个包我们也要先安装好。
安装numpy包:pip3 install numpy
安装pandas包:pip3 install pandas
安装matplotlib包:pip3 install matplotlib
检查安装是否成功,只要进入python,输入import numpy 如果不报错就是成功,否则会提示组件没有找到
关于Tushare的详细使用,将在后面的文章中做介绍,这里我们先把相关的需要用的环境准备好,那接下来我们就来下载并安装Tushare。
下载安装
方式1:pip3 install tushare (我们选择这个方式安装)
方式2:访问https://pypi.python.org/pypi/Tushare/
总结
到此为止阿里云上的Python3量化交易环境算是搭建好了,这些都不难,只要仔细一点都能搞定,接下来要编写代码获取股票等相关信息,并存入到数据库或者ES中,下一篇文章我们将介绍Python通过Tushare组件获取股票信息并存入到阿里云最新产品PolarDB MySQL中。