如果你用Python的目的是数据分析,可以直接安装Anaconda:Python数据分析与挖掘好帮手—Anaconda,它内置了Python和pip.
其他查询方法
data的格式如下:
查询分时成交
from pytdx.exhq import *
from pytdx.hq import *
api_hq = TdxHq_API()
api_hq = api_hq.connect("119.147.212.81", 7709)
请注意,查询的日期必须填写整数,不然会查询不到数据。
准备
api.get_security_bars参数如下:
代码如下:
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 = 0
data = []
while True:
part = api.get_history_transaction_data(TDXParams.MARKET_SZ, code, start, 888, int(date))
data.extend(part)
if len(part) < 888:
break
start += 888
return data
print(len(get_all_trans_data(api_hq, "002560", 20220916)))
# 3776
读取财务信息:
使用步骤
此外,推荐大家用VSCode编辑器,它有许多的优点:Python编程的最好搭档—VSCode详细指南。
K线数据:
参数格式:[,…]
还有其他更多的功能,大家可以阅读Pytdx的说明文档:
读取公司信息详情:
这样,trans的数据就是格式化好的:
如果我们想要查询当天的全部数据,需要不断改变start和limit,即api_hq.get_history_transaction_data的第三个参数和第四个参数。
除了历史分时数据,pytdx还可以查询:
请选择以下任一种方式输入命令安装依赖:
引入库
查询完整历史分时数据
数组里的顺序是乱的,因为我们请求数据的时候并不是按时间序列去请求的,因此还可以做数据规整化处理:
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 = 0
data = []
while True:
part = api.get_history_transaction_data(TDXParams.MARKET_SZ, code, start, 888, int(date))
data.extend(part)
if len(part) < 888:
break
start += 888
return 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]))
参数:市场代码,股票代码,文件名,起始位置,数量
Windows环境打开Cmd。MacOS环境打开Terminal。如果你用的是VSCode编辑器或Pycharm,可以直接使用界面下方的Terminal.
api.get_security_quotes,])
开始之前,你要确保Python和pip已经成功安装在电脑上,如果没有,可以访问这篇文章:超详细Python安装指南进行安装。
使用这个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)]),
... ...
]
股票行情数据:
使用它我们能够很方便地获取通达信上的标准行情数据、历史行情数据、专业的财务数据,并且支持macOS系统,非常方便。
在前面的示例中,我们查询了002560这个股票在2022-09-16的最后500条数据。
文章为作者独立观点,不代表股票交易接口观点