【Python量化分析100例】Day1-使用Tushare获取数据

2023-05-16

1 背景

Tushare平台是目前使用python学习量化投资比较好用的而且是免费的一个数据获取平台。主要实现对金融数据从数据采集清洗加工 到 数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据获取方面极大地减轻工作量,使他们更加专注于策略和模型的研究与实现上。

2 获取未复权数据

2.1 登陆Tushare

通过以下url,用户可以注册到自己的tushare账号,登陆账号之后,在账号的个人首页->接口Token中获取对应的Token进行数据获取的钥匙。

url = "https://tushare.pro/register?reg=399376"

2.2 用pyhton连接tushare

首先,需要安装tushare模块

pip install tushare

连接tushare

import tushare as ts
ts.set_token('your token here')#这里填入自己获取的token
pro = ts.pro_api()

2.3 用pyhton获取数据

以平安银行为例,获取2018年-2021年平安银行的日线数据:

df = pro.daily(ts_code='000001.SZ', start_date='20180701', end_date='20211022')

数据说明:

交易日每天15点~16点之间。本接口是未复权行情,停牌期间不提供数据。

输入参数:

名称类型必选描述
ts_codestrN股票代码(支持多个股票同时提取,逗号分隔)
trade_datestrN交易日期(YYYYMMDD)
start_datestrN开始日期(YYYYMMDD)
end_datestrN结束日期(YYYYMMDD)

注:日期都填YYYYMMDD格式,比如20181010

输出参数:

名称类型描述
ts_codestr股票代码
trade_datestr交易日期
openfloat开盘价
highfloat最高价
lowfloat最低价
closefloat收盘价
pre_closefloat昨收价
changefloat涨跌额
pct_chgfloat涨跌幅 (未复权,如果是复权请用 通用行情接口 )
volfloat成交量 (手)
amountfloat成交额 (千元)

也可以通过这种方式进行数据获取:

df = pro.query('daily', ts_code='000001.SZ', start_date='20180701', end_date='20211022')

也可以按照日期获取某一天的全部数据:

df = pro.daily(trade_date='20211022')

多个数据一起获取:

df = pro.daily(ts_code='000001.SZ,600000.SH', start_date='20180701', end_date='20180718')

2.4 查看数据数据

查看拿到的数据类型,发现数据为DataFrame格式,因此数据的操作与pandas一致

>>>type(df)
pandas.core.frame.DataFrame

查看前5条数据t

df.head()

同理,查看后5条数据

df.tail()
ts_codetrade_dateopenhighlowclosepre_closechangepct_chg
799000001.SZ201807068.618.788.458.668.600.060.70
800000001.SZ201807058.628.738.558.608.61-0.01-0.12
801000001.SZ201807048.638.758.618.618.67-0.06-0.69
802000001.SZ201807038.698.708.458.678.610.060.70
803000001.SZ201807029.059.058.558.619.09-0.48-5.28

3 获取复权数据

接口名称:pro_bar
更新时间:股票和指数通常在15点~17点之间,数字货币实时更新,具体请参考各接口文档明细。
描述:目前整合了股票(未复权、前复权、后复权)、指数、数字货币、ETF基金、期货、期权的行情数据,未来还将整合包括外汇在内的所有交易行情数据,同时提供分钟数据。不同数据对应不同的积分要求,具体请参阅每类数据的文档说明。
其它:由于本接口是集成接口,在SDK层做了一些逻辑处理,目前暂时没法用http的方式调取通用行情接口。用户可以访问Tushare的Github,查看源代码完成类似功能。

输入参数

名称类型必选描述
ts_codestrY证券代码,不支持多值输入,多值输入获取结果会有重复记录
apistrNpro版api对象,如果初始化了set_token,此参数可以不需要
start_datestrN开始日期 (格式:YYYYMMDD,提取分钟数据请用2019-09-01 09:00:00这种格式)
end_datestrN结束日期 (格式:YYYYMMDD)
assetstrY资产类别:E股票 I沪深指数 C数字货币 FT期货 FD基金 O期权 CB可转债(v1.2.39),默认E
adjstrN复权类型(只针对股票):None未复权 qfq前复权 hfq后复权 , 默认None,目前只支持日线复权。
freqstrY数据频度 :支持分钟(min)/日(D)/周(W)/月(M)K线,其中1min表示1分钟(类推1/5/15/30/60分钟) ,默认D。对于分钟数据有600积分用户可以试用(请求2次),正式权限请在QQ群私信群主或积分管理员。
malistN均线,支持任意合理int数值。注:均线是动态计算,要设置一定时间范围才能获得相应的均线,比如5日均线,开始和结束日期参数跨度必须要超过5日。目前只支持单一个股票提取均线,即需要输入ts_code参数。
factorslistN股票因子(asset='E'有效)支持 tor换手率 vr量比
adjfactorstrN复权因子,在复权数据时,如果此参数为True,返回的数据中则带复权因子,默认为False。 该功能从1.2.33版本开始生效

获取平安银行前复权数据

df = pro.query('daily', adj = 'qfq', ts_code='000001.SZ', start_date='20210701', end_date='20211022')

4 总结

这是最基础的数据获取教程,代码已同步到github,会慢慢更新~

5 Reference

https://github.com/RxxxxR/quantitative_analysis

Tushare大数据社区

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Python量化分析100例】Day1-使用Tushare获取数据 的相关文章

随机推荐

  • Opencv+YOLO3目标检测/C++

    1 引言 YOLO3能够快速识别图片和视频中的80种物体 xff0c 而且实时性强 xff0c 准确度接近SSD Opencv是目前最流行的开源图像处理库 xff0c 使用Opencv能够非常方便的对图像进行处理 Opencv4 0已经包含
  • Linux安装Docker

    安装前菜 如何卸载Docker 1 查询docker安装包 yum list installed grep docker 2 删除安装包 yum remove docker 3 删除镜像 容器等 rm rf var lib docker 下
  • 北邮初试+复试经验分享

    初试情况 xff1a 政治 53 英语 70 数学 122 计算机综合 xff08 803 xff09 110 一些相关的基本情况 xff1a 本科专业数学 本科期间学过数据结构 通过了英语四六级 本科成绩还算可以 初试材料选择 xff08
  • apt命令概述

    目录 Linux软件仓库 软件源配置 apt命令 常见的命令如下 xff1a 常见的用法 示例 xff1a 使用apt安装redis软件 Linux软件仓库 Ubuntu采用集中式的软件仓库机制 xff0c 将各式各样 的软件包分门别类地存
  • 索引覆盖与回表

    懂的越多 xff0c 不懂的越多 上回书说到 xff1a 什么情况下 xff0c 索引下推没办法提高sql查询效率 xff1f 表info主键id名称name值value别名realname 对于info表 xff0c 我们现在有 xff0
  • Ubuntu18.04安装实时内核Preempt-RT

    文章目录 1 安装环境2 安装依赖包3 查看内核版本4 下载新的内核和对应的Preempt RT补丁5 解压缩6 打补丁7 配置内核8 编译内核9 校验结果10 重启11 测试12 调整分辨率 1 安装环境 Ubuntu18 04内核版本
  • CAS 5.2.X 使用cas-overlay-template 搭建cas-server

    1 下载 cas overlay template 地址 xff1a https github com apereo cas overlay template 选择需要的版本 xff1a cas 6 x开始使用gradle构建 xff0c
  • Jupyter 更改主题解决 jt 不存在问题

    pip安装之后 xff0c 并不是像传统的那样安装到了envs中的script文件中 而是在C盘的appdata C Users Administrator AppData Roaming Python Python36 Scripts 中
  • 树莓派4 桌面图标显示 No wireless interface found

    树莓派4 桌面图标显示 No wireless interface found 解决方式 先使用有线链接网络 安装wpasupplicant wpagui libengine pkcs11 openssl sudo apt install
  • mysql _外键、实体关系与ER图

    外键约束 概念 A实体的某个字段指向 B实体的主键 则称A实体的那个字段为该实体的外键 一个表里可以有多个外键 span class hljs operator span class hljs keyword drop span span
  • hadoop系列之Configuration类解析

    前言 Configuration是hadoop中五大组件的公用类 xff0c 所以放在了core下 xff0c org apache hadoop conf Configruration 这个类是作业的配置信息类 xff0c 任何作用的配置
  • tty_read和tty_write

    一 tty read 对于tty read这个函数 xff0c 很多标志我也没有弄得太清楚 xff0c 但是问题不大 xff0c 以后有机会在看 我觉得重点是看数据怎么从cdc驱动到通过线路规划到tty xff0c 再从tty到用户空间 标
  • 深度学习 - 模型调优经历(1)

    模型调优经历 xff08 1 xff09 背景遇到问题思路解决办法 背景 样本规模及划分 bullet 二分类问题 xff0c 正负样本 1 1 xff0c 特征数 xff1a 20
  • Android SDK下载安装及配置教程

    让大家很方便的不用翻墙不用代理地就完成Android开发环境的搭建 总结起来 xff0c Android开发环境搭建可以分为以下四步 xff1a 第一步 安装JDK xff1b 略 第二步 安装Eclipse xff1b 略 第三步 下载并
  • (DFS)深度优先搜索算法详解

    背景 DFS 英文全称为 xff08 Depth First Search xff09 xff0c 中文简称深度优先搜索算法 xff0c 其过程为沿着每一个可能的路径向下进行搜索 xff0c 直到不能再深入为止 xff0c 并且每一个节点只
  • ovs-ofctl

    文章目录 64 toc ovs ofctl语法COMMANDSOpenFlow Switch Management Commands OpenFlow Switch Flow Table CommandsGroup Table Comman
  • 【牛客网华为机试】HJ46 截取字符串

    题目 描述 输入一个字符串和一个整数k xff0c 截取字符串的前k个字符并输出 本题输入含有多组数据 输入描述 xff1a 1 输入待截取的字符串 2 输入一个正整数k xff0c 代表截取的长度 输出描述 xff1a 截取后的字符串 示
  • 【牛客网华为机试】HJ50 四则运算

    题目 描述 输入一个表达式 xff08 用字符串表示 xff09 xff0c 求这个表达式的值 保证字符串中的有效字符包括 0 9 43 xff0c 且表达式一定合法 输入描述 xff1a 输入一个算术表达式 输出描述 xff1a 得到计算
  • 【机器学习实战 Task1】 (KNN)k近邻算法的应用

    1 背景 1 1 k近邻算法的概述 xff08 1 xff09 k近邻算法的简介 k 近邻算法是属于一个非常有效且易于掌握的机器学习算法 xff0c 简单的说就是采用测量不同特征值之间距离的方法对数据进行分类的一个算法 xff08 2 xf
  • 【Python量化分析100例】Day1-使用Tushare获取数据

    1 背景 Tushare平台是目前使用python学习量化投资比较好用的而且是免费的一个数据获取平台 主要实现对金融数据从数据采集 清洗加工 到 数据存储的过程 xff0c 能够为金融分析人员提供快速 整洁 和多样的便于分析的数据 xff0