一、Tushare介绍
Tushare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工到数据存储的过程,能够为金融分析人员提供快速、整洁、多样的便于分析的数据,使得数据获取方面极大地减轻工作量,更加专注于策略和模型的研究和实现。
Tushare从新浪财经、腾讯财经、上交所、深交所获取数据。
1、Tushare使用和安装
(1)使用前提
安装python、安装pandas包、安装lxml包、bs4包、requests包。环境如下所示:
(2)下载安装
# 方法一: pip install tushare # 方法二: 访问https://pypi.python.org/pypi/Tushare
(3)版本升级
# 版本更新 pip install tushare --update # 检查版本信息 print(tushare.__version__)
二、历史行情(get_hist_data/get_h_data)接口
get_hist_data接口:获取个股历史交易数据(包含均线数据),可以通过参数设置获取日k线、周k线、月k线,以及5分钟、15分钟、30分钟和60分钟k线数据。本接口只能获取近3年的日线数据,适合搭配均线数据进行选股和分析。
start为空取API所提供最早日期数据,end为空取最近一个交易日数据。
import tushare as ts print(ts.get_hist_data("601318")) """ open high close low ... ma20 v_ma5 v_ma10 v_ma20 date ... 2020-01-23 84.01 84.56 83.49 82.48 ... 85.610 807119.55 711352.85 634487.17 2020-01-22 85.00 85.48 85.22 83.83 ... 85.632 690831.24 663221.99 596297.65 2020-01-21 87.00 87.29 85.60 85.60 ... 85.594 648759.18 652369.61 574079.03 2020-01-20 88.30 88.70 87.60 87.35 ... 85.528 646579.65 624830.50 560559.15 2020-01-17 86.15 86.90 86.25 85.85 ... 85.425 621487.27 594870.25 531672.07 ... ... ... ... ... ... ... ... ... ... 2017-07-31 51.88 52.64 52.02 51.41 ... 52.094 587775.69 587775.69 587775.69 2017-07-28 52.20 52.46 51.89 51.80 ... 52.113 580718.35 580718.35 580718.35 2017-07-27 51.85 52.74 52.36 51.09 ... 52.187 610526.22 610526.22 610526.22 2017-07-26 52.10 52.50 51.89 51.28 ... 52.100 582222.86 582222.86 582222.86 2017-07-25 52.62 53.05 52.31 52.18 ... 52.310 506834.84 506834.84 506834.84 """
get_h_date接口:获取个股全部历史数据,其他同上。(已失效)
start为空取当前日期,end为空取去年今日。
get_k_data接口:获取k线数据,融合了get_hist_data和get_h_data两个接口的功能,即能方便获取日周月的低频数据,也可以获取5、15、30和60分组相对高频的数据。同时,上市以来的前后复权数据也能在一行代码中轻松获得。
start为空取上市首日,end为空取最近一个交易日
import tushare as ts # print(ts.get_hist_data("601318")) print(ts.get_k_data("601318")) """ date open close high low volume code 0 2017-06-15 44.946 43.984 45.212 43.727 1041983.0 601318 1 2017-06-16 43.908 44.479 44.936 43.908 807231.0 601318 2 2017-06-19 44.727 46.251 46.317 44.470 808481.0 601318 3 2017-06-20 46.451 45.812 46.603 45.403