文章目录
tushare_1">tushare库简介
tushare
库是一个用于抓取中国股票的历史和实时报价数据的工具。特点如下:
- 易于使用,因为返回的大部分数据都是
pandas
的DataFrame
对象 - 可以轻松保存为
csv, excel
或json
文件 - 可以插入到
MySQL
或Mongodb
使用对象包括金融市场分析师、使用pandas/NumPy
学习金融数据分析、对金融数据感兴趣的人。
tushare_10">tushare使用方法
- 查看
tushare
版本
python">import tushare as ts
print(ts.__version__)
1.4.13
- 设定
tushare
的token
(通过官网注册获取)
python"># 从官网获取token
mytoken = 'xxx'
# 保存token到本地
ts.set_token(mytoken)
- 获取
tushare
数据
提供ts_code
,以及开始时间start_date
和结束时间end_date
,日期频率freq=’D'
。
python">pro = ts.pro_api() # 替换tushare高级接口
time_temp = datetime.datetime.now() - datetime.timedelta(days=1)
end_dt = time_temp.strftime('%Y%m%d')
#准备训练集数据
df = ts.pro_bar(ts_code='603912.SH', start_date='202140101', end_date='20241001', freq='D')
df.head() #用 df.head() 可以查看一下下载下来的股票价格数据,显示数据如下:
python">ts_code trade_date open high low close pre_close change pct_chg vol amount
0 603912.SH 20240930 6.61 7.00 6.47 6.95 6.38 0.57 8.93 295090.14 200012.717
1 603912.SH 20240927 6.16 6.38 6.14 6.38 6.10 0.28 4.59 114886.97 71905.945
2 603912.SH 20240926 5.99 6.10 5.97 6.10 6.00 0.10 1.67 82304.84 49880.060
3 603912.SH 20240925 5.97 6.12 5.95 6.00 5.97 0.03 0.50 111386.66 67295.681
4 603912.SH 20240924 5.86 5.97 5.76 5.97 5.81 0.16 2.75 82446.40 48568.404
接口数据获取实例
获取交易日历
交易日历(trade_cal
接口):获取交易所交易日历数据
- 第一种调用接口的方式:
api.query('trade_cal', 参数1,参数2, ...)
- 第二种调用接口的方式:
api.trade_cal(参数1,参数2, ...)
python">import tushare as ts
ts.set_token('your token here')
api = ts.pro_api()
data = api.trade_cal(exchange='SZSE', # SSE上交所,SZSE深交所
start_data='20180101',
end_date='20181231')
股票基础信息
股票列表(stock_basic
接口):获取基础信息数据,包括股票代码、名称、上市日期、退市日期等。
python">import tushare as ts
ts.set_token('your token here') # 设置token(tushare个人主页获取)
api = ts.pro_api()
column_name = 'ts_code,symbol,name,area,industry,list_date'
data = api.stock_basic(exchange='',
list_status='L',
fields=column_name)
沪股通和深股通成份股
沪深股通成份股(hs_const
接口):获取沪股通、深股通成分数据
python">import tushare as ts
ts.set_token('your token here')
api = ts.pro_api()
data = api.hs_const(hs_type='SH') # SH沪股通,SZ深股通
python">ts_code hs_type in_date out_date is_new
0 601628.SH SH 20141117 None 1
1 601099.SH SH 20141117 None 1
2 601808.SH SH 20141117 None 1
3 601107.SH SH 20141117 None 1
4 601880.SH SH 20141117 None 1
... ... ... ... ... ...
576 603638.SH SH 20190617 None 1
577 603708.SH SH 20190617 None 1
578 603712.SH SH 20190617 None 1
579 603808.SH SH 20190617 None 1
580 603876.SH SH 20190617 None 1
python">import tushare as ts
# ts.set_token('your token here')
api = ts.pro_api()
data = api.hs_const(hs_type='SZ') # SH沪股通,SZ深股通
data
python">ts_code hs_type in_date out_date is_new
0 002910.SZ SZ 20171114 None 1
1 000016.SZ SZ 20180102 None 1
2 001872.SZ SZ 20180102 None 1
3 000040.SZ SZ 20180102 None 1
4 000401.SZ SZ 20180102 None 1
... ... ... ... ... ...
237 300723.SZ SZ 20191216 None 1
238 300751.SZ SZ 20191216 None 1
239 300755.SZ SZ 20191216 None 1
240 300759.SZ SZ 20191223 None 1
241 300761.SZ SZ 20191216 None 1
上市公司基础信息
公司基本信息(stock_company
接口):获取上市公司基础信息
python">import tushare as ts
# ts.set_token('your token here')
api=ts.pro_api()
column_name='ts_code,chairman,manager,secretary,reg_capital,province'
data=api.stock_company(exchange='SZSE',
fields=column_name)
data
python"> ts_code chairman manager secretary reg_capital province
0 301052.SZ 路金波 瞿洪斌 蔡钰如 9895.9339 浙江
1 301259.SZ 钟儒波 游建军 殷明坤 15600.0000 湖南
2 301283.SZ 陈曙光 陈曙光 廖燕桃 8000.0000 广东
3 301117.SZ 王进 王进 张顺 9226.3300 四川
4 003012.SZ 何新明 何颖 黄征 117300.0000 广东
... ... ... ... ... ... ...
3006 002026.SZ 杨明燕 刘友财 张红江 44555.0168 山东
3007 002429.SZ 顾伟 欧军 单华锦 452694.0607 广东
3008 000530.SZ 纪志坚 蔡力勇 宋文宝 84321.2507 辽宁
3009 000546.SZ 赵辉 连长云 方光泉 77878.1962 吉林
3010 000550.SZ 邱天高 熊春英 许兰锋 86321.4000 江西
如果查看全部列,结果如下所示
python"> ts_code com_name com_id chairman manager secretary reg_capital setup_date province city introduction website email office business_scope employees main_business exchange
0 301052.SZ None None 路金波 瞿洪斌 蔡钰如 9895.9339 20120606 浙江 杭州市 本公司致力于为当代读者提供“价值和美”的文化产品,主营业务包括图书策划与发行、数字内容业务、... www.guomai.cc guomai@guomai.cc 上海市徐汇区古宜路181号B座5层 许可项目:出版物批发;出版物零售;音像制品复制;互联网信息服务;餐饮服务;演出经纪;出版物互... 284.0 公司致力于为当代读者提供“价值和美”的文化产品,主营业务包括图书策划与发行,数字内容业务,I... SZSE
1 301259.SZ None None 钟儒波 游建军 殷明坤 15600.0000 20130204 湖南 长沙市 公司致力于解决农业农村中的污水、固废、土壤污染及生态问题,开展农村生活污水处理、生活垃圾处理... www.airbluer.cn airbluer@vip.163.com 湖南省长沙市天心区芙蓉南路一段979号天城商业广场8栋16-19层 一般项目:技术服务、技术开发、技术咨询、技术交流、技术转让、技术推广;环保咨询服务;水利相关... 261.0 公司主要服务领域可分为农村环境治理工程服务,运营服务与咨询服务. SZSE
2 301283.SZ None None 陈曙光 陈曙光 廖燕桃 8000.0000 20121019 广东 广州市 公司是一家以研发生产吸收性卫生用品专用热熔胶(简称“卫材热熔胶”)为业务核心的专业供应商,专... None secretaryoftheboard@focushotmelt.com 广东省广州市增城区宁西街创强路97号 广州市增城新塘镇仙村东区工业园沙滘村岗谷山(厂房A1)首层8、经营范围:化学原料与化学制品制... 386.0 专注于卫材热熔胶的研发,生产和销售,产品主要用于卫生巾,纸尿裤等吸收性卫生用品面层,吸收层,... SZSE
3 301117.SZ None None 王进 王进 张顺 9226.3300 19940830 四川 成都市 佳缘科技股份有限公司成立于1994年,是一家专业提供网络信息安全产品和信息化综合解决方案的国... www.scjydz.com dongban@jykjzb.com 四川省成都市高新区(西区)天辰路333号 许可项目:建筑智能化系统设计;检验检测服务;建设工程施工;计算机信息系统安全专用产品销售。(... 364.0 公司是一家信息化服务及网络信息安全综合解决方案的提供商,业务专注于国防军工,医疗健康和政务服... SZSE
4 003012.SZ None None 何新明 何颖 黄征 117300.0000 20111104 广东 清远市 公司前身始创于1972年,中国A股上市企业。是国内领先的整体家居解决方案提供商,拥有瓷砖、整... www.dongpeng.net dongpeng@dongpeng.net 广东省佛山市禅城区季华西路127号东鹏总部大厦 生产(由下属公司生产)、销售:涂料、防水涂料、建筑材料、日用品;生产(由下属公司生产)、销售... 8212.0 东鹏控股致力于成为国内领先的整体家居解决方案提供商.报告期内,公司主要产品包括瓷砖和洁具,此... SZSE
python">data.columns
Index(['ts_code', 'com_name', 'com_id', 'chairman', 'manager', 'secretary',
'reg_capital', 'setup_date', 'province', 'city', 'introduction',
'website', 'email', 'office', 'business_scope', 'employees',
'main_business', 'exchange'],
dtype='object')
获取新股上市列表数据
IPO
新股列表(new_share
接口): 获取新股上市列表数据
python">import tushare as ts
# ts.set_token('your token here')
api = ts.pro_api()
data = api.new_share(start_date='20240101',end_data='20241001')
data
python">ts_code sub_code name ipo_date issue_date amount market_amount price pe limit_amount funds ballot
0 301613.SZ 301613 新铝时代 20241016 2397.0 0.0 0.00 0.00 0.65 0.000 0.00
1 301626.SZ 301626 苏州天脉 20241015 2892.0 0.0 0.00 0.00 0.70 0.000 0.00
2 301556.SZ 301556 托普云农 20241008 2132.0 544.0 14.50 11.73 0.50 3.091 0.00
3 301522.SZ 301522 上大股份 20240930 9297.0 2231.0 6.88 20.02 2.20 6.396 0.00
4 001279.SZ 001279 强邦新材 20240925 4000.0 2945.0 9.68 17.54 1.40 3.872 0.04
... ... ... ... ... ... ... ... ... ... ... ... ...
67 837403.BJ 889868 康农种业 20240108 20240118 1513.0 1053.0 11.20 16.95 62.51 1.695 0.08
68 301567.SZ 301567 贝隆精密 20240105 20240116 1800.0 1800.0 21.46 30.35 1.80 3.863 0.02
69 873806.BJ 889111 云星宇 20240103 20240111 8334.0 5073.0 4.63 22.11 307.98 3.858 0.14
70 001387.SZ 001387 雪祺电气 20240102 20240111 3419.0 2735.0 15.38 22.53 1.35 5.258 0.03
71 603312.SH 732312 西典新能 20240102 20240111 4040.0 2688.0 29.02 30.55 1.25 11.724 0.04
A股日线行情
日线行情(daily
接口):获取A
股日线行情
python">import tushare as ts
# ts.set_token('your token here')
api = ts.pro_api()
data = api.daily(ts_code='000001.SZ,600000.SH',
start_date='20240701',
end_date='20241003')
print(data)
python"> ts_code trade_date open high low close pre_close change \
0 000001.SZ 20240930 11.62 12.30 11.56 12.21 11.42 0.79
1 600000.SH 20240930 10.06 10.29 9.82 10.13 9.87 0.26
2 000001.SZ 20240927 11.35 11.56 11.03 11.42 11.15 0.27
3 600000.SH 20240927 9.99 10.08 9.60 9.87 9.84 0.03
4 000001.SZ 20240926 10.50 11.15 10.50 11.15 10.50 0.65
.. ... ... ... ... ... ... ... ...
123 600000.SH 20240703 8.53 8.60 8.48 8.53 8.53 0.00
124 000001.SZ 20240702 10.30 10.48 10.28 10.40 10.35 0.05
125 600000.SH 20240702 8.27 8.54 8.27 8.53 8.28 0.25
126 000001.SZ 20240701 10.09 10.35 10.04 10.35 10.15 0.20
127 600000.SH 20240701 8.22 8.30 8.20 8.28 8.23 0.05
pct_chg vol amount
0 6.9177 5430283.64 6467438.838
1 2.6342 1883756.05 1892937.392
2 2.4215 3840016.37 4337985.143
3 0.3049 570394.67 560481.161
4 6.1905 3086457.20 3341759.456
.. ... ... ...
123 0.0000 464096.68 396512.668
124 0.4831 1384385.70 1440864.391
125 3.0193 573458.10 485897.424
126 1.9704 1343051.49 1372549.620
127 0.6075 287329.62 237294.502
A股周线行情
周线行情(weekly
接口):获取A
股周线行情
python">import tushare as ts
# ts.set_token('your token here')
api = ts.pro_api()
column_names = 'ts_code,trade_date,open,high,low,close,vol,amount'
data = api.weekly(ts_code='000001.SZ',
start_date='20180101',
end_date='20181101',
fields=column_names)
data
python">ts_code trade_date close open high low vol amount
0 000001.SZ 20181026 11.18 10.81 11.46 10.71 9.062500e+08 1.002282e+10
1 000001.SZ 20181019 10.76 10.39 10.78 9.92 7.235320e+08 7.482596e+09
2 000001.SZ 20181012 10.30 10.70 10.79 9.70 7.257597e+08 7.483906e+09
3 000001.SZ 20180928 11.05 10.52 11.27 10.48 5.458134e+08 5.904901e+09
4 000001.SZ 20180921 10.67 9.80 10.70 9.68 5.120305e+08 5.225262e+09
5 000001.SZ 20180914 9.84 10.01 10.10 9.81 3.534262e+08 3.501724e+09
6 000001.SZ 20180907 10.01 10.09 10.55 9.93 4.708304e+08 4.796533e+09
7 000001.SZ 20180831 10.13 10.02 10.43 9.97 6.715868e+08 6.858804e+09
8 000001.SZ 20180824 10.03 8.90 10.28 8.87 6.697714e+08 6.358840e+09
9 000001.SZ 20180817 8.81 9.12 9.16 8.64 3.206923e+08 2.854248e+09
10 000001.SZ 20180810 9.23 8.94 9.35 8.88 3.054339e+08 2.787629e+09
11 000001.SZ 20180803 8.91 9.32 9.50 8.88 3.648566e+08 3.363448e+09
12 000001.SZ 20180727 9.25 9.04 9.59 9.00 5.170189e+08 4.826484e+09
13 000001.SZ 20180720 9.11 8.85 9.20 8.61 3.806004e+08 3.371040e+09
14 000001.SZ 20180713 8.88 8.69 9.03 8.58 4.901984e+08 4.346872e+09
15 000001.SZ 20180706 8.66 9.05 9.05 8.45 5.125564e+08 4.446723e+09
16 000001.SZ 20180629 9.09 9.91 9.92 8.87 5.150576e+08 4.764107e+09
17 000001.SZ 20180622 9.85 10.05 10.15 9.76 3.827401e+08 3.800475e+09
18 000001.SZ 20180615 10.17 10.06 10.29 9.92 4.280360e+08 4.315074e+09
19 000001.SZ 20180608 10.12 10.23 10.46 10.06 4.324341e+08 4.424459e+09
20 000001.SZ 20180601 10.19 10.58 10.66 10.02 4.167914e+08 4.280512e+09
21 000001.SZ 20180525 10.59 11.07 11.11 10.55 3.625909e+08 3.897568e+09
22 000001.SZ 20180518 10.96 11.09 11.23 10.76 3.587800e+08 3.947275e+09
23 000001.SZ 20180511 11.01 10.70 11.15 10.64 4.300377e+08 4.705948e+09
24 000001.SZ 20180504 10.68 10.97 11.03 10.57 3.182388e+08 3.429873e+09
25 000001.SZ 20180427 10.85 11.30 11.94 10.63 6.845706e+08 7.769357e+09
26 000001.SZ 20180420 11.35 11.47 11.69 11.03 6.012632e+08 6.824983e+09
27 000001.SZ 20180413 11.57 10.80 11.92 10.73 7.035101e+08 8.082163e+09
28 000001.SZ 20180404 10.87 10.87 11.01 10.51 3.602551e+08 3.880409e+09
29 000001.SZ 20180330 10.90 11.15 11.20 10.55 5.669332e+08 6.203168e+09
30 000001.SZ 20180323 11.34 11.66 12.12 10.92 5.839767e+08 6.794436e+09
31 000001.SZ 20180316 11.64 12.15 12.22 11.64 5.105241e+08 6.080941e+09
32 000001.SZ 20180309 12.09 11.93 12.34 11.77 4.965548e+08 5.985965e+09
33 000001.SZ 20180302 11.95 12.77 12.85 11.85 5.095855e+08 6.233384e+09
34 000001.SZ 20180223 12.61 12.25 12.79 12.25 2.282069e+08 2.851748e+09
35 000001.SZ 20180214 12.00 11.78 12.21 11.56 3.391151e+08 4.032539e+09
36 000001.SZ 20180209 11.69 13.80 14.57 11.38 1.322335e+09 1.750926e+10
37 000001.SZ 20180202 14.05 14.05 14.30 13.53 8.115143e+08 1.129147e+10
38 000001.SZ 20180126 14.05 14.60 15.08 14.00 1.145692e+09 1.660992e+10
39 000001.SZ 20180119 14.80 13.51 15.13 13.50 1.294241e+09 1.865851e+10
40 000001.SZ 20180112 13.55 13.25 13.68 12.86 8.704112e+08 1.152740e+10
41 000001.SZ 20180105 13.30 13.35 13.93 13.13 8.108913e+08 1.092060e+10
A股月线行情
月线行情(monthly
接口):获取A
股月线行情
python">import tushare as ts
# ts.set_token('your token here')
api = ts.pro_api()
column_names = 'ts_code,trade_date,open,high,low,close,vol,amount'
data = api.monthly(ts_code='000001.SZ',
start_date='20180101',
end_date='20181101',
fields=column_names)
'''
data = api.query('monthly',
ts_code='000001.SZ',
start_date='20180101',
end_date='20181101',
fields=column_names)
'''
data
python">ts_code trade_date close open high low vol amount
0 000001.SZ 20181031 10.91 10.70 11.46 9.70 2.780156e+09 2.960878e+10
1 000001.SZ 20180928 11.05 10.09 11.27 9.68 1.882100e+09 1.942842e+10
2 000001.SZ 20180831 10.13 9.42 10.43 8.64 2.189687e+09 2.088672e+10
3 000001.SZ 20180731 9.42 9.05 9.59 8.45 2.043028e+09 1.832737e+10
4 000001.SZ 20180629 9.09 10.15 10.46 8.87 1.817989e+09 1.791251e+10
5 000001.SZ 20180531 10.18 10.97 11.23 10.02 1.826718e+09 1.965278e+10
6 000001.SZ 20180427 10.85 10.87 11.94 10.51 2.349599e+09 2.655691e+10
7 000001.SZ 20180330 10.90 11.92 12.34 10.55 2.312997e+09 2.692560e+10
8 000001.SZ 20180228 12.05 13.95 14.57 11.38 2.562447e+09 3.322504e+10
9 000001.SZ 20180131 14.05 13.35 15.13 12.86 4.614538e+09 6.454870e+10
股票每日指标,选股分析
每日指标(daily_basic
接口):获取股票每日指标,选股分析