通过API查询股票基本面+K线
在股票投资和分析中,获取实时的股票基础信息是非常重要的。Infoway 提供了一个 API 接口,允许用户快速获取股票的基本信息,比如公司名称、每股收益(EPS)、每股账面价值(BPS)、股息收益率等。本文将通过具体的代码示例,教你如何使用该接口。
1. 查个股基础资料
该接口可查A股、港股、美股,代码示例:
import requests
# API 请求的 URL,查询两个股票(平安银行和万科A)的信息
url = "https://data.infoway.io/common/basic/symbols/info?symbols=000001.SZ%2C000002.SZ&type=STOCK_CN"
# 请求头部
# 需要先在官网www.infoway.io申请API Key
headers = {
'User-Agent': 'Mozilla/5.0',
'Accept': 'application/json',
'apiKey': 'yourApikey' # 请替换为你自己的API密钥
}
# 发送 GET 请求,获取数据
response = requests.get(url, headers=headers)
# 打印返回的响应内容
print(response.text)
###1.1 返回示例
{
"ret": 200,
"msg": "success",
"traceId": "52327ed3-e96a-4e9a-a591-e910a0fcc563",
"data": [
{
"symbol": "000001.SZ", #股票代码
"market": "CN", #所属国家
"name_cn": "平安银行", #中文名称
"name_en": "PAB", #英文名
"name_hk": "平安銀行", #繁体名
"exchange": "SZSE", #所属交易所
"currency": "CNY", #货币单位
"lot_size": 100, #每手股数
"total_shares": 19405918198, #总股本
"circulating_shares": 19405762053, #流通股本
"hk_shares": 0, 港股股本(仅港股才有)
"eps": "2.2935271367158012", #每股盈利
"eps_ttm": "2.2504474951615995", #每股盈利TTM
"bps": "22.4755662447835698", #每股净资产
"dividend_yield": "0.9649999999963929", #股息
"stock_derivatives": "", #可提供的衍生品行情类型
"board": "SZMainConnect" #所属板块
},
{
"symbol": "000002.SZ",
"market": "CN",
"name_cn": "万科A",
"name_en": "Vanke",
"name_hk": "萬科A",
"exchange": "SZSE",
"currency": "CNY",
"lot_size": 100,
"total_shares": 11930709471,
"circulating_shares": 9724196533,
"hk_shares": 0,
"eps": "-4.147148946357911",
"eps_ttm": "-4.6403502137102706",
"bps": "16.4892858366243256",
"dividend_yield": "0",
"stock_derivatives": "",
"board": "SZMainConnect"
}
]
}
2. 查最新成交明细
这个接口支持批量查询,除了股票还能查其他品种,如外汇、Crypto、期货贵金属等。只需要更换请求URL即可,详情可以看官方文档。
import requests
url = "https://data.infoway.io/crypto/batch_trade/BTCUSDT%2CBNBUSDT"
# 请求头部
# 需要先在官网www.infoway.io申请API Key
headers = {
'User-Agent': 'Mozilla/5.0',
'Accept': 'application/json',
'apiKey': 'yourApikey' # 请替换为你自己的API密钥
}
response = requests.get(url, headers=headers)
print(response.text)
###2.1 返回示例
{
"ret": 200,
"msg": "success",
"traceId": "854341a1-4779-4825-b713-74ac71ba75c9",
"data": [
{
"s": "BTCUSDT",
"t": 1750177310314,
"p": "104312.5",
"v": "0.01",
"vw": "1043.125",
"td": 1
},
{
"s": "BNBUSDT",
"t": 1750177309795,
"p": "645.35",
"v": "0.272",
"vw": "175.5352",
"td": 1
}
]
}
##3. 查K线
import requests
url = "https://data.infoway.io/crypto/batch_kline/1/10/BTCUSDT%2CBNBUSDT"
# 请求头部
# 需要先在官网www.infoway.io申请API Key
headers = {
'User-Agent': 'Mozilla/5.0',
'Accept': 'application/json',
'apiKey': 'yourApikey' # 请替换为你自己的API密钥
}
response = requests.get(url)
print(response.text)
以上展示的是HTTP查询,如果对延迟有要求,建议使用WebSocket走长连接订阅的方式,数据实时推送过来,延迟更低,具体可以看对接文档。
本作品采用《CC 协议》,转载必须注明作者和本文链接