文章目录

  • 前言
  • 一、准备
  • 二、使用步骤
    • 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. DNS RR字段含义
  2. 基于深度学习的场景分割算法研究综述
  3. 项目遇到技术难题,领导让我假招聘套取解决方案,我没有照做,结果15天后蒙了
  4. 四边形内接于圆定理_2020中考几何秘籍:初中最全几何定理和解题思路
  5. scada系统集成_专家 | 浅析地铁综合监控系统集成门禁系统
  6. shellcode xor编码/解码[1]
  7. Codeforces Gym101205D:Fibonacci Words(KMP+递推)
  8. 毕设题目:Matlab优化求解
  9. 华南农业大学计算机科学与技术专业,华南农业大学住宿
  10. C汇编语言是符号化的机器语言,汇编语言
  11. AndroidStudio选中代码后,光标自动变粗,自动变成ins模式的解决方法
  12. 【分享】李涛ps入门教程视频全集及精心整理包含素材
  13. Nginx配置ssl自签名证书
  14. Windows7 换XP 字体 (QQ字体,桌面字体) 为宋体
  15. 开源网络情报系统释放数据黄金价值
  16. 提示计算机未安装flash,win10系统提示未安装Flash的解决方法
  17. Windows10 安装spyder
  18. arduino学习笔记二十二--模拟交通信号灯
  19. 互联网大厂技术岗实习/求职经验分享(实习内推+简历+面试+offer)
  20. 《流浪地球》后续,深度对话刘慈欣:地球只是太空中的一粒尘埃

热门文章

  1. Dell戴尔外星人笔记本电脑Alienware m15 R3原装出厂Windows10系统恢复原厂OEM系统
  2. opencv-鼠标作为油漆刷
  3. 为什么计算机桌面的图标动不了,为什么win7桌面图标不能移动了?win7桌面图标不能自由移动的解决方法...
  4. java中自动刷新的语句_页面自动刷新代码大全
  5. 数字化相关的九个概念
  6. 常见的视频营销种类有哪些呢?
  7. 【集合类】hashmap扩容
  8. 文章:为什么软件开发方法论让你觉得糟糕
  9. MySQL锁机制:高并发场景下该如何保证数据读写的安全性?
  10. android 特殊屏幕适配,Android屏幕适配(2)常见:第一种