最近在做一个项目,需要用到股票的数据,我在网上查了很久,最终发现在股票数据上面还是tushare比较专业,而且对于将来做金融行业的大数据这一块的,tushare绝对是你的一个好帮手,所以下面我就简单介绍一下。
一、Tushare Pro简介
Tushare旧的版本运行了三年,在旧的版本运行了三年之后,Tushare Pro被发布,相对于之前的版本,它更加稳定质量更好,而且有了前三年的运行经验,Pro用起来更加流畅,而且将数据扩大到了股票、基金、期货、债券、外汇、行业大数据等区块链的数据,数据量更大,减少我们一一获取的麻烦,而且Tushare是一个免费的,开源的,所以我们有什么理由不支持。
二、Tushare的安装Python简介
1.安装前的准备
由于新版本的Tushare功能更加全面,所以推荐大家使用最新的版本
不过由于最新版本需要token来进行验证,而这个只要注册一个账户即可,下面就是注册链接
https://tushare.pro/register?reg=243276
根据提示,根据我们日常的经验,轻松就可以注册完成。
(上面的链接注册后我会获得相应的积分,如果大家喜欢我的博客可以支持一下我,当然如果介意把问号以及后面的删除即可)
2.下载模块
这个模块的下载和我们平时下载Python模块是一样的,使用pip即可,后两个是使用时需要的模块
pip install tushare
pip install pandas
pip install lxml
如果是使用以前版本的,可以通过以下命令来进行升级
pip install tushare --upgrade
如果需要查看自己的版本可以使用如下命令
import tushare print(tushare.__version__)
这里附上版本对照表(每个版本数据)
1 版本信息 2 1.2.15 2018/10/15 3 4 增加通用行情pro_bar接口 5 优化set_token功能 6 1.2.5 2018/07/30 7 8 Tushare Pro网站第一版 9 Tushare Pro Data API 第一版 10 1.0.5 2017/11/12 11 12 新增可转债数据 13 增加长连接关闭函数 14 修复部分bug 15 1.0.2 2017/10/29 16 17 新增bar接口,支持更稳定的股票、ETF、期货期权、港股、中概股等品种 18 新增tick接口,支持以上品种的成交数据 19 新增沪深港通每日资金流向数据 20 修复了部分bug 21 0.9.2 2017/09/13 22 23 新增数据货币行情数据接口,同时支持火币、okcoin、中国比特币 24 部分bug修复 25 0.8.8 2017/08/29 26 27 新增分红送股数据(包含历史) 28 新增get_day_all接口 29 新增BDI接口 30 0.8.0 2017/06/05 31 32 新增期货行情数据6个接口,感谢debugo贡献代码 33 修复部分bug 34 0.7.6 2017/05/16 35 36 get_today_all接口数据补齐 37 forecast_data mac下编码问题修复 38 0.7.0 2017/03/12 39 40 get_today_all接口提速 41 版本累积更新 42 0.6.2 2016/12/03 43 44 新增十大股东和十大流通股接口 top10_holders 45 新增全球实时指数列表接口 global_realtime 46 修复部分bug 47 0.6.1 2016/11/22 48 49 修正get_k_databug 50 修正实盘交易登录问题 51 0.5.6 2016/11/06 52 53 新增全新行情数据接口get_k_data(请关注tushare公众号“挖地兔”后查看历史文章《全新的免费行情数据接口》) 54 修复程序和文档bug 55 0.5.1 2016/10/16 56 57 新增实盘交易接口 58 修复bug 59 0.4.9 2016/03/26 60 61 新增申万行业分类get_industry_classified(standard='sw') 62 新增交易日历trade_cal() 63 修复bug 64 0.4.3 2015/12/24 65 66 新增电影票房数据 67 修复部分bug 68 0.4.1 2015/11/27 69 70 新增sina大单数据 71 修改当日分笔bug 72 深市融资融券数据修复 73 0.3.9 2015/10/13 74 75 新增期权隐含波动率数据 76 修复指数成份及权重接口问题 77 0.3.8 2015/09/19 78 79 沪深300成份股和权重接口问题修复 80 其它bug的修复 81 0.3.5 2015/07/27 82 83 部分代码修正 84 0.3.4 2015/06/15 85 86 新增‘龙虎榜’模块 87 88 每日龙虎榜列表 89 个股上榜统计 90 营业部上榜统计 91 龙虎榜机构席位追踪 92 龙虎榜机构席位成交明细 93 修改get_h_data数据类型为float 94 95 修改get_index接口遗漏的open列 96 97 合并GitHub上提交的bug修复 98 99 0.2.8 2015/04/28 100 101 新增大盘指数实时行情列表 102 新增大盘指数历史行情数据(全部) 103 新增终止上市公司列表(退市) 104 新增暂停上市公司列表 105 修正融资融券明细无日期的缺陷 106 修正get_h_data部分bug 107 0.2.6 2015/04/20 108 109 新增沪市融资融券列表 110 新增沪市融资融券明细列表 111 新增深市融资融券列表 112 新增深市融资融券明细列表 113 修正复权数据数据源出现null造成异常问题(对大约300个股票有影响) 114 0.2.5 2015/04/16 115 116 完成python2.x和python3.x兼容性支持 117 部分算法优化和代码重构 118 新增中证500成份股 119 新增当日分笔交易明细 120 修正分配预案(高送转)bug 121 0.2.3 2015/04/11 122 123 新增“新浪股吧”消息和热度 124 新增新股上市数据 125 修正“基本面”模块中数据重复的问题 126 修正历史数据缺少一列column(数据来源问题)的bug 127 0.2.0 2015/03/17 128 129 新增历史复权数据接口 130 新增即时滚动新闻、信息地雷数据 131 新增沪深300指数成股份及动态权重、 132 新增上证50指数成份股 133 修改历史行情数据类型为float 134 0.1.9 2015/02/06 135 136 增加分类数据 137 增加数据存储示例 138 0.1.6 2015/01/27 139 140 增加了重点指数的历史和实时行情 141 更新docs 142 0.1.5 2015/01/26 143 144 增加基本面数据接口 145 发布一版使用手册,开通TuShare docs网站 146 0.1.3 2015/01/13 147 148 增加实时交易数据的获取 149 Done for crawling Realtime Quotes data 150 0.1.1 2015/01/11 151 152 增加tick数据的获取 153 0.1.0 2014/12/01 154 155 创建第一个版本 156 实现个股历史数据的获取
三、Token的获取以及调取数据
我们可以在我们刚才注册过网站的右上角点击个人主页。
在接口TOKEN中我们就可以复制到token
获取到token之后,就是设置token了,直接上代码
import tushare as ts#方式一 ts.set_token('你刚才复制的token填在这里') #这种方式设置token我们会吧token保存到本地,所以我们在使用的时候只需设置一次,失效之后,我们可以替换为新的token#方式二 pro = ts.pro_api() pro = ts.pro_api('你刚才复制的token填在这里') 这种在初始化接口的时候设置token
设置过token之后,就是使用tushare获取数据了,我们就做一个简单的例子
pro = ts.pro_api('我们复制的token')df = pro.daily(ts_code='000001.SZ', start_date='20180201', end_date='20180210')print(df)输出结果:ts_code trade_date open high ... change pct_chg vol amount 0 000001.SZ 20180209 12.08 12.08 ... -0.85 -6.78 2824949.75 3308553.501 1 000001.SZ 20180208 12.83 12.92 ... -0.38 -2.94 2137815.06 2711464.886 2 000001.SZ 20180207 14.22 14.30 ... -1.08 -7.71 3345716.97 4521586.590 3 000001.SZ 20180206 14.23 14.33 ... -0.55 -3.78 2582872.04 3641294.710 4 000001.SZ 20180205 13.80 14.57 ... 0.50 3.56 2331997.90 3326355.314 5 000001.SZ 20180202 13.91 14.10 ... 0.02 0.14 1176512.71 1637619.618 6 000001.SZ 20180201 13.95 14.30 ... -0.02 -0.14 2005614.75 2821583.609
到这里tushare的基本介绍就结束了,当然你们能把这模块玩转到什么程度都看你们接下来的学习了,加油了。