前言
上一篇文章我们介绍了如何在阿里云ECS服务器中搭建Python3的量化交易开发环境,同时介绍了量化交易所需的一些包和组件,其中有比较有名的Tushare,这篇文章我们将继续介绍如何通过Tushare组件,把量化交易所需要的一些股票信息获取到,然后将这些数据保存到阿里云的PolarDB MySQL中。
正文
(一)Tushare
Tushare是一个金融大数据开放社区,免费提供各类金融数据和区块链数据 , 助力智能投资与创新型投资。其实除了股票数据,还有期货、基金、债券、区块链等数据都可以从上面免费获取,而且可以存入到不同的数据介质中,如:Oracle、MySQL,MongoDB、HDF5、CSV等,为数据获取提供了性能保证。
现在Tushare也升级到pro的版本,也是免费的,获取Tushare Pro 的数据API,首先需要注册一个pro账号,点击 Tushare pro 注册账号,然后登录,这样可以获取100分,然后到个人中心完善具体信息又能获取20分,这样一共120分。对于股票行情数据,只要有120积分就可以相对高频的撸数据了,这120积分随手可得(注册成功有100积分、然后修改个人信息有20积分)。



(二)阿里云PolarDB
我们已经为获取数据做好了准备,接下来要把数据保存到数据库中,首先要购买PolarDB,然后通过阿里云的DMS来管理数据库,设计相关的表格,最后通过程序获取数据并保存到PolarDB中。
我记得是在MVP钉钉群里发的直播链接,视频中阿里云工程师介绍了很多阿里云的新产品,如polardb、quickbi、dataworks等,而且当时也是针对疫情给出了非常优惠的试用和体验的价格,目前polardb一直也是有一个月的免费试用时间,这里先介绍一下这款产品。
以下引用阿里云官网的原话:“PolarDB是阿里云自研的下一代关系型云数据库,有三个独立的引擎,分别可以100%兼容MySQL、100%兼容PostgreSQL、高度兼容Oracle语法,存储容量最高可达100TB,单库最多可扩展到16个节点,适用于企业多样化的数据库应用场景。PolarDB采用存储和计算分离的架构,所有计算节点共享一份数据,提供分钟级的配置升降级、秒级的故障恢复、全局数据一致性和免费的数据备份容灾服务。PolarDB既融合了商业数据库稳定可靠、高性能、可扩展的特征,又具有开源云数据库简单开放、自我迭代的优势,例如PolarDB MySQL性能最高可以提升至MySQL的6倍,而成本只有商用数据库的1/10。”
我们在这里要使用的是PolarDB MySQL版本,有人可能会问了:我购买的ECS上面也能安装MySQL,当然也可以购买RDS MySQL版本,为什么要单独选择PolarDB?
我觉得原因很简单,你可能需要花费很长的时间和精力去做以下事情:自己安装的MySQL是不是要进行数据库网络和节点管理,还要进行主从配置读写分离等,都需要花时间,另外购买RDS MySQL版本标准是2T容量,如果哪天数据库容量不够用就要进行数据库扩容,是不是又要花时间和精力?另外性能方面,数据容灾等问题的考虑和解决,还有你之前是自己机房架设服务器,数据库要迁移到阿里云上怎么办?数据库有10T数据要迁移怎么办?......这些问题的解决,以及你解决这些问题所花费的时间和精力,PolarDB都可以帮你轻松节省掉,你只需要将大部分精力专注在业务开发上。
怎么样,心动不如行动,让我们开始PolarDB之旅吧。
1)购买PolarDB,目前有一个月免费试用,2核8G免费、4核16G 30元,存储按照流量收费,很实惠。





上面购买要注意的是:确保PolarDB与需要连接的ECS创建于同一个VPC,否则它们无法通过内网互通,无法发挥最佳性能。
2)设置PolarDB
稍等片刻后,登录管理控制台,显示polardb mysql实例已经创建成功。

a.设置外网可以访问的IP白名单

b.创建一个数据库登录账户

c.集群地址设置一个公网地址,方便通过navicat等第三方软件连接,同时要满足a,外网要加入IP白名单

3)登录PolarDB并使用
支持两种方式,一种就是阿里云自带的DMS数据管理平台,另一种就是通过第三方软件,如Navicat客户端连接。


登录上以后,就可以创建量化炒股的数据库和表结构了。
(三)创建数据库和表结构
数据库名称:myquant
表:
stock_info 股票基本信息表

stock_daily 股票日线数据表

总结
这篇文章,我们介绍了量化交易获取基础数据的Tushare,及阿里云新产品PolarDB的购买、配置和基本使用等,由于篇幅关系,如何用Python编写代码获取股票信息数据并保存到PolarDB MySQL中,然后再做一些简单的量化分析,选出优质的股票,将在下一篇文章中做介绍。
网友评论