1.Tushare简介
Tushare是国内免费库中最好的财经数据获取接口。数据包含股票、基金、期货、债券、外汇、行业大数据,同时包括了数字货币行情等区块链数据的全数据品类的金融大数据。
最重要的是,免费!免费!免费!
虽然初始注册账户的积分只有行情日线数据的权限,但是也足以胜任大部分的数据分析工作。
当然,如果你想要从事更加深入的数据分析,可以联系工作人员,高校学生会有1000积分的一季度免费使用权限。这个时候你的权限就可以做很多数据分析的工作了。
官网注册链接:https://tushare.pro/register?reg=456119
2.Tushare注册获取token
进入官网,注册账户,然后进入个人页面,查看自己的token
3.Python中tushare库下载
Tushare提供便捷的数据获取方式,目前已经可以通过http、Python、Matlab、R语言方式来获取数据。
获取token之后,我们选择Python下载tushare库来获取数据。
即可通过在cmd中下载 tushare库进行数据调用
pip install tushare
或者,可以通过在pycharm内自行下载tushare库:步骤如下:
4.正式获取数据
首先导入tushare库,然后将token输入pro_api方法获取数据接口。
import tushare as ts
token = 'your token' # 这里输入tushare官网下用户接口token
pro = ts.pro_api(token)
下面即可通过阅读官方文档——数据接口,了解具体函数使用方法。
下面展示具体案例
例如我们在数据接口的基础数据中看到了股票列表这个数据,可以看到他的接口是stock_basic
即可通过pro实例访问接口。如图:
basic = pro.stock_basic()
接下来分析接口的输入函数:可以看到所有参数都是非必选的即为N。如果想要获取目标数据即可调整输入参数:
例如:获取所有上市公司的数据:(即list_status-‘L’)
basic = pro.stock_basic(list_status='L')
或者获取单一股票的数据:(ts_code=‘TS股票代码’)
maotai = pro.stock_basic(ts_code='600519.SH')
注:TS股票代码为上市公司股票代码加上其所在交易简称
例如,平安银行股票代码为000001,他在深交所上市,所以他的TS股票代码为000001.SZ;
以此类推,茅台股票代码为600519,他在上交所上市,所以他的TS股票代码为600519.SH;
获取数据的保存数据,一般我们选用csv或者数据库的方式保存数据,但是从我个人习惯来讲,我一般采用csv格式存储数据。
在tushare库因为输出数据采用的是pandas的DataFrame格式,可以直接通过’data.to_csv’的方式存储在csv文件中。例:将上面获取到的上市公司信息存储到stock_basic.csv文件中。
basic.to_csv('Company.csv', header=True, index=False)
#后面两个参数是为了保证输出格式,有需要自行查询调整
5.实例代码(获取所有上市公司信息,并存储到表中):
import tushare as ts
import datetime
token = 'your token' # 这里输入tushare官网下用户接口token
pro = ts.pro_api(token)
today=datetime.date.today()
today=today.strftime('20%y%m%d')
print(today)
yesterday=str(int(today)-1)
#获取上市公司信息:股票代码、简称、注册地、行业、上市时间等数据。
basic = pro.stock_basic(list_status='L')
basic.to_csv('Company.csv', header=True, index=False)