ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

Python实现A股实时行情批量查询(支持500只股票+60+自定义字段)

Python实现A股实时行情批量查询(支持500只股票+60+自定义字段) ## 背景介绍在量化交易和数据分析场景中我们经常需要批量获取股票的实时行情数据。本文分享一个简单实用的 Python 脚本通过对接第三方 API 接口支持一次性查询最多 **500 只股票**的实时行情。## ✨ 功能特性- 批量查询多只股票实时行情- 支持 80 个字段基础行情、资金流向、技术指标等- 使用 Brotli 压缩加速响应- Pandas 格式化输出结果清晰易读## ️ 环境准备pip install brotli pandas requests## 完整代码import brotli # pip install brotli 安装此压缩库可加速请求响应速度 import pandas as pd import requests # 请求头配置带上token支持批量查询500只股票数据 headers { #token: xxx, } # API接口地址 URL_API http://ddnsapi.top:1808/api/v1/request def ddnsapi_post(data): 发送POST请求到DDNS API接口。 Args: data: 请求数据字典 Returns: dict or None: 成功返回JSON解析后的字典失败返回None try: req requests.post(URL_API, jsondata, timeout5, headersheaders) return req.json() except Exception as e: print(请求异常:, e) return None # 可附加字段说明 # [基础行情] # Name 名称 | CLOSE 昨收 | OPEN 今开 | NOW 现价 | EXT_ZF 涨幅 # MAX 最高 | MIN 最低 | VOL 总量 | LB 量比 | AMOUNT 总金额 # NOWVOL 现量 | HSL 换手率 | ZANGSU 涨速 | AVERAGE 均价 # OPENAMO 开盘金额 | HYD 活跃度 # # [股本财务] # ACTIVECAPITAL 流通股 | ZSZ 总市值 | ZGB 总股本 # MGSY 收益 | MGJZC 净资产 | SYL 市盈[动] # PESTATIC 市盈[静] | PETTM 市盈[TTM] | DYRATIO 股息率 # # [买卖盘口] # BUYP1~BUYP2 买价1~2 | SELLP1~SELLP2 卖价1~2 # BUYV1~BUYV2 买量1~2 | SELLV1~SELLV2 卖量1~2 # # [涨跌幅统计] # 20ZAF 20日涨幅 | THISYEAR 年初至今 | HSBF 月初至今 | SYBF 近一年 # DELTA 昨涨幅 | GAMMA 3日涨幅 | VEGA 60日涨幅 | RHO 5日涨幅 # THETA 10日涨幅 | YEARZTDAY 年涨停天 | CONZAFDATENUM 连涨天 # VAR0427 竞价昨比 | VAR0428 昨日成交额 # # [资金流向] # INOUTHB 主力净额 | INOUT 主买净额 | VAR0409 量涨速 # VAR0410 短换手 | VAR0411 2分钟金额 | VAR0413 主力净比 # VAR0415~VAR0418 5分钟/3日/5日/10日主力净额 # VAR0414 散户单增比 # # [技术指标] # VAR0420 当日DDX | VAR0421 当日DDY # VAR0422 当日DDZ | VAR0423 当日DDF if __name__ __main__: # 股票代码列表带上token支持批量查询500只股票数据 [000001,600519,...] codelist [000001] # 附加查询字段 add_fields [INOUTHB, INOUT] # 构造请求数据 data { req_type: comb_hq, codelist: codelist, add_fields: add_fields } # 发送API请求 data_json ddnsapi_post(data) # 解析并打印结果 if data_json and data_json.get(status): df pd.DataFrame(data_json[items], columnsdata_json[fields]) print(df.to_markdown(indexFalse, tablefmtplain)) else: print(测试失败, data_json) # 输出示例 # Code Name CLOSE OPEN NOW INOUT INOUTHB EXT_ZF # 000001 平安银行 11.08 11.09 11.1 -2.12897e08 -5.92538e07 0.18## 输出示例Code Name CLOSE OPEN NOW INOUTHB INOUT EXT_ZF 000001 平安银行 11.08 11.09 11.1 -59253800 -212897000 0.18 600519 贵州茅台 1680.00 1685.00 1690.50 125000000 380000000 0.62 000858 五粮液 155.20 155.50 156.80 -32000000 -85000000 1.03
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进