文章目录

  • 前言
  • 一、准备
  • 二、使用步骤
    • 1.引入库
    • 2,使用这个API查询历史分时数据:
    • 3.查询完整历史分时数据
    • 4.其他查询方法
  • 参数格式:[(市场代码, 股票代码), ...]
  • 参数:市场代码, 股票代码, 文件名, 起始位置, 数量
  • 参数:市场代码, 股票代码
  • 总结

前言

Pytdx是一个基于C++接口开发的Python第三方模块。

使用它我们能够很方便地获取通达信上的标准行情数据、历史行情数据、专业的财务数据,并且支持macOS系统,非常方便。

一、准备

开始之前,你要确保Python和pip已经成功安装在电脑上,如果没有,可以访问这篇文章:超详细Python安装指南 进行安装。

(可选1) 如果你用Python的目的是数据分析,可以直接安装Anaconda:Python数据分析与挖掘好帮手—Anaconda,它内置了Python和pip.

(可选2) 此外,推荐大家用VSCode编辑器,它有许多的优点:Python 编程的最好搭档—VSCode 详细指南。

请选择以下任一种方式输入命令安装依赖:

  1. Windows 环境 打开 Cmd (开始-运行-CMD)。
  2. MacOS 环境 打开 Terminal (command+空格输入Terminal)。
  3. 如果你用的是 VSCode编辑器 或 Pycharm,可以直接使用界面下方的Terminal.

pip install pytdx

二、使用步骤

1.引入库

查询分时成交

from pytdx.exhq import *
from pytdx.hq import *
api_hq = TdxHq_API()
api_hq = api_hq.connect('119.147.212.81', 7709)

2,使用这个API查询历史分时数据:

from pytdx.exhq import *
from pytdx.hq import *
api_hq = TdxHq_API()
api_hq = api_hq.connect('119.147.212.81', 7709)
print(api_hq.get_history_transaction_data(TDXParams.MARKET_SZ, "002560", 0, 500, 20220916))
效果如下:[OrderedDict([('time', '14:29'),('price', 7.91),('vol', 582),('buyorsell', 1)]),... ...
]

请注意,查询的日期必须填写整数,不然会查询不到数据。

3.查询完整历史分时数据

在前面的示例中,我们查询了 002560 这个股票在 2022-09-16 的最后500条数据。

如果我们想要查询当天的全部数据,需要不断改变start和limit,即api_hq.get_history_transaction_data的第三个参数和第四个参数。

代码如下:

from pytdx.exhq import *
from pytdx.hq import *
api_hq = TdxHq_API()
api_hq = api_hq.connect('119.147.212.81', 7709)def get_all_trans_data(api, code, date):start = 0data = []while True:part = api.get_history_transaction_data(TDXParams.MARKET_SZ, code, start, 888, int(date))data.extend(part)if len(part) < 888:breakstart += 888return data
print(len(get_all_trans_data(api_hq, "002560", 20220916)))
# 3776

data 的格式如下:


数组里的顺序是乱的,因为我们请求数据的时候并不是按时间序列去请求的,因此还可以做数据规整化处理:

from pytdx.exhq import *
from pytdx.hq import *
from collections import defaultdict
api_hq = TdxHq_API()
api_hq = api_hq.connect('119.147.212.81', 7709)def get_all_trans_data(api, code, date):start = 0data = []while True:part = api.get_history_transaction_data(TDXParams.MARKET_SZ, code, start, 888, int(date))data.extend(part)if len(part) < 888:breakstart += 888return data
date = 20220916
data = get_all_trans_data(api_hq, "002560", date)
print(len(data))
# 3776
trans = defaultdict(list)
for tran in data:# "%Y%m%d %H:%M"trans[datetime.datetime.strptime(str(date) + " " + tran["time"], "%Y%m%d %H:%M")].append({"price": tran["price"],"volume": tran["vol"],"turnover": float(tran["price"]) * float(tran["vol"]) * 100,})
trans = dict(sorted(trans.items(), key=lambda x: x[0]))

这样,trans的数据就是格式化好的:

4.其他查询方法

除了历史分时数据,pytdx还可以查询:

股票行情数据:

api.get_security_quotes([(0, ‘000001’), (1, ‘600300’)])

参数格式:[(市场代码, 股票代码), …]

K线数据:

api.get_security_bars(9,0, ‘000001’, 4, 3)
参数如下:


读取公司信息详情:

api.get_company_info_content(0, ‘000001’, ‘000001.txt’, 0, 100)

参数:市场代码, 股票代码, 文件名, 起始位置, 数量

读取财务信息:

api.get_finance_info(0, ‘000001’)

参数:市场代码, 股票代码

还有其他更多的功能,大家可以阅读Pytdx的说明文档:

https://rainx.gitbooks.io/pytdx

总结

我们的文章到此就结束啦,如果你喜欢今天的量化投资内容,持续关注徐浪老师

这篇文章价值很大:股票历史分时成交数据怎么简单获取?【干货】相关推荐

  1. 沪深A股指数历史分时交易数据API接口(JSON标准格式,Get请求方式)

    沪深A股指数历史分时交易数据API接口(JSON标准格式,Get请求方式) 数据来源:沪深A股股票数据API接口 麦蕊智数(www.mairui.club) 历史分时交易 ·  API接口:http: ...

  2. 华为boss力荐公司高层看的一篇文章,很长很经典 很值得一看

    今天是 22 岁的最后一天.几个月前,我从沃顿商学院毕业,用文凭上"最高荣誉毕业"的标签安抚了已经年过半百的老妈,然后转头辞去了毕业后的第一份工作,跟一家很受尊敬的公司.还有 15 ...

  3. 读懂这篇文章就懂大数据,3000字概括《大数据时代》

    有言在先 近期有些起伏,这种情况最适合回归书本,寻找一些你内心认同的东西.这几天花了点时间重温<大数据时代>,整理.总结出了精华的东西,分享给大家. 大数据引起了变革 当今社会所独有的一种 ...

  4. 很受打动的一篇文章,很幽默让人想看完。

    转自:http://www.cnblogs.com/bccn/p/4887273.html 原文题目: [写给新人]做开发几年的个人经历 楼主2007年从一家天津的三流大学毕业.毕业前报了一个职位培训 ...

  5. 软件开发的那些坑,你跳了没?这篇文章价值千万(一)

    接触过上万名创业者,开发上线过超过70款App,没有比我更适合回答这个问题的了.. 本文对想做好一款App项目的人来说这是一篇价值百万的回答!因为这是我们花了几百万试错成本试出来的经验! 在我们从事a ...

  6. 我的助理辞职了!——看完后大家对这篇文章应该很有感触

    当时公司招了大批应届本科和研究生毕业的新新人类.平均年龄25岁.那个新的助理,是经过多次面试后,我亲自招回来的一个女孩.名牌大学本科毕业,聪明,性格活泼.私下里我得承认,我招她的一个很重要的原因,除了 ...

  7. 不想当穷人就好好读读这篇文章 都是大实话啊

    一双鞋,耐克的6百多:李宁的4百多:特步的3百多:361的2百多:所以,你毕业于一个什么样的大学很重要. 房产论坛,装修论坛,业主论坛, v7 t1 ]) A, g" E 买房,购房,装修论 ...

  8. 淘宝章文嵩:开源价值很大,但我也算不出来有多大

    在今年12月4日的Velocity China Web性能与运维大会上,阿里集团的章文嵩博士(淘宝正明)再次以大会主席的身份在台上进行了分享,今年分享的主题是阿里集团的开源成果以及开源流程的介绍.借着 ...

  9. python实时股票数据折线图_股票分笔成交数据导出,python实时股票数据

    内容导航: Q1:如何导出股票分时笔数 在分时图窗口下操作 1.Ctrl+W,或者右键选择分时区间统计 2.修改你的大单限制如500,选择大单成交 3.就可以看出今天的大单分时笔数了. 按照你的补充, ...

最新文章

  1. 根据文件属性或权限进行find查找
  2. python关闭读写的所有的文件-Python文件操作:文件的打开关闭读取写入
  3. 【Python-ML】聚类的性能评价指标
  4. sklearn自学指南(part9)--岭回归与分类
  5. vs2013和vs2010的配置
  6. GridView批量删除页面最后N条数据时自动翻到上一页问题
  7. 黑马程序员-JAVA基础-IO流之字符流和字符流缓冲区
  8. linux怎么添加ubuntu源,细说 Ubuntu Linux 软件源
  9. Eclipse的Spring库导入
  10. 利用Python下载网页视频
  11. 使用Python获取100以内的质数
  12. DataSet-如何优雅使用DataSet,看完此篇文章完全理解C7N/choerodon/猪齿鱼 UI中的DataSet
  13. 那些创造外汇神话的交易员们
  14. 周测作业五(apache的安装与配置)
  15. 开源录屏软件Captura安装和使用
  16. 数据库 vs 数据仓库
  17. STM32F103C8T6引脚图及引脚功能说明
  18. 什么是物联卡,物联卡注意事项
  19. Unity 之 ShaderGraph Utility节点解析汇总
  20. java考了80多分,八省联考成绩出炉,学生们表示“有些崩溃”,你考了多少分

热门文章

  1. 我的世界服务器开启显示坐标的指令,我的世界坐标怎么看 坐标指令
  2. 微信公众号注销【已解决】
  3. 五一假期怒肝一天大厂Redis面试高频问点,这解析不全你找我!
  4. 腾讯云短信发送失败提示1038错误
  5. html5数据超出显示省略号,h5文字超出,两行显示,超出显示省略号
  6. 电脑桌面图标位置改变
  7. java过山车手游,过山车工艺手游(Roller Coaster Craft)
  8. Python操作Excel的一些基本程序代码
  9. Levenshtein简介
  10. 奇葩之反人类职场面试题,兄dei~ 你造吗?