为量化从业者提供的稳定股票数据源:免费股票数据API获取实时数据、历史数据与技术指标(含多语言代码指南)实例代码演示与API文档说明

​ 近年来,股票量化分析因其科学、系统的研究方法,日益成为市场热点。而进入这一领域的首要步骤,正是获取全面、准确的股票数据——无论是实时交易行情、历史走势记录,还是企业财务与基本面信息,都是支撑量化策略的核心要素。从海量数据中提取有价值的信息,为投资决策提供坚实依据,正是我们持续努力的方向。

在数据获取的实践中,我曾尝试多种方式:自行编写爬虫采集网易股票页面、申万行业数据以及同花顺问财平台,也使用过聚宽提供的免费数据接口。实际经验表明,依赖爬虫往往面临稳定性问题,网站结构变动、反爬策略升级等都可能导致数据中断,给量化研究带来诸多不便。

在量化分析中,稳定、实时、准确的数据接口是取得成功的关键。经过多次测试与验证,我整理出一批可靠的数据接口,并在此分享给从事量化分析的朋友们,希望能够切实支持大家的研究与开发工作。接下来,我将通过 Python、JavaScript(Node.js)、Java、C# 和 Ruby 五种常用语言的代码示例,逐步展示如何调用这些接口获取股票数据。

【特别提示】:下方验证接口的token证书(ZHITU_TOKEN_LIMIT_TEST)为官方提供的验证证书,该证书只能验证股票代码000001的股票,因此,下方的接口连接中,即使换掉代码实际返回的也是000001的数据,在实际应用中,需要自己去申请一个免费证书更换掉就可以随意请求数据了,证书是免费申请的:智兔API|token证书

本文中所有接口均可直接在浏览器打开获取数据,为了便于大家验证有效性,已经做好了超链接,直接点击即可!

股票列表

API接口链接(可点击验证):https://api.zhituapi.com/hs/list/all?token=ZHITU_TOKEN_LIMIT_TEST

【实时数据接口】

京A股实时数据

API接口链接(可点击验证):http://api.zhituapi.com/bj/stock/real/ssjy/股票代码(如430017)?token=token证书

1、python

import requests  
  
url = "https://api.zhituapi.com/bj/stock/real/ssjy/430017?token=ZHITU_TOKEN_LIMIT_TEST"  
response = requests.get(url)  
data = response.json()  
print(data)

2、JavaScript (Node.js)

const axios = require('axios');  
  
const url = "https://api.zhituapi.com/bj/stock/real/ssjy/430017?token=ZHITU_TOKEN_LIMIT_TEST";  
axios.get(url)  
  .then(response => {  
    console.log(response.data);  
  })  
  .catch(error => {  
    console.log(error);  
  });

3、Java

import java.net.URI;  
import java.net.http.HttpClient;  
import java.net.http.HttpRequest;  
import java.net.http.HttpResponse;  
import java.io.IOException;  
  
public class Main {  
    public static void main(String[] args) {  
        HttpClient client = HttpClient.newHttpClient();  
        HttpRequest request = HttpRequest.newBuilder()  
            .uri(URI.create("https://api.zhituapi.com/bj/stock/real/ssjy/430017?token=ZHITU_TOKEN_LIMIT_TEST"))  
            .build();  
  
        try {  
            HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());  
            System.out.println(response.body());  
        } catch (IOException | InterruptedException e) {  
            e.printStackTrace();  
        }  
    }  
}

返回的数据:

{"pe":0,"ud":-0.26,"pc":-2.0817,"zf":2.6421,"p":12.23,"o":12.51,"h":12.55,"l":12.22,"yc":12.49,"cje":2079630600,"v":1690081,"pv":169008125,"tv":32784,"t":"2025-07-31 15:00:00"}

实时交易(券商数据源)

API接口链接(可点击验证):https://api.zhituapi.com/hs/real/time/股票代码?token=token证书

港股主板实时数据

API接口链接(可点击验证):http://api.zhituapi.com/hk/stock/real/ssjy/股票代码(如00001)?token=token证书

科创行情实时数据

API接口链接(可点击验证):http://api.zhituapi.com/tech/real/ssjy/股票代码(如688001)?token=token证书

基金实时数据

API接口链接(可点击验证):http://api.zhituapi.com/fund/real/ssjy/基金代码(如159001)?token=token证书

买卖五档盘口(新增)

API接口链接(可点击验证):https://api.zhituapi.com/hs/real/five/股票代码?token=token证书

最新分时交易

API接口链接(可点击验证):https://api.zhituapi.com/hs/latest/股票代码.市场(如000001.SZ)/分时级别(如d)/除权方式?token=token证书&limit=最新条数(例如2)

实时交易(全部 | 券商数据)

API接口链接(可点击验证):https://api.zhituapi.com/hs/custom/realall?token=token证书

实时交易(多选 | 券商数据)

API接口链接(可点击验证):http://api.zhituapi.com/hs/custom/ssjymore?token=token证书&tock_codes=股票代码1,股票代码2……股票代码20

实时交易(公开数据源)

API接口链接(可点击验证):https://api.zhituapi.com/hs/real/ssjy/股票代码?token=token证书

实时交易(全部 | 公开数据)

API接口链接(可点击验证):https://api.zhituapi.com/hs/public/realall?token=token证书

【历史数据接口】

历史分时交易

API接口链接(可点击验证):https://api.zhituapi.com/hs/history/股票代码.市场(如000001.SZ)/分时级别(如d)/除权方式?token=token证书&st=开始时间(如20240601)&et=结束时间(如20250430)

历史分时MACD

API接口链接(可点击验证):http://api.zhituapi.com/hs/history/macd/股票代码(如000001.SZ)/分时级别(如d)/除权类型(如n)?token=token证书&st=开始时间&et=结束时间&lt=最新条数

历史分时MA

API接口链接(可点击验证):http://api.zhituapi.com/hs/history/ma/股票代码(如000001.SZ)/分时级别(如d)/除权类型(如n)?token=token证书&st=开始时间&et=结束时间&lt=最新条数

历史分时BOLL

API接口链接(可点击验证):http://api.zhituapi.com/hs/history/boll/股票代码(如000001.SZ)/分时级别(如d)/除权类型(如n)?token=token证书&st=开始时间&et=结束时间&lt=最新条数

历史分时KDJ

API接口链接(可点击验证):http://api.zhituapi.com/hs/history/kdj/股票代码(如000001.SZ)/分时级别(如d)/除权类型(如n)?token=token证书&st=开始时间&et=结束时间&lt=最新条数

API说明文档

股票基础信息

API接口链接(可点击验证):http://api.zhituapi.com/hs/instrument/股票代码(如000001.SZ)?token=token证书

描述:依据《股票列表》中的股票代码获取股票的基础信息

更新频率:每日0点

字段名称 数据类型 字段说明
ei string 市场代码
ii string 股票代码
name string 股票名称
od string 上市日期(股票IPO日期)
pc float 前收盘价格
up float 当日涨停价
dp float 当日跌停价
fv float 流通股本
tv float 总股本
pk float 最小价格变动单位
is int 股票停牌状态(<=0:正常交易(-1:复牌);>=1停牌天数;)

实时交易(券商数据源)

API接口链接(可点击验证):https://api.zhituapi.com/hs/real/time/股票代码?token=token证书

描述:根据《股票列表》得到的股票代码获取实时交易数据(您可以理解为日线的最新数据)。

更新频率:实时

字段名称 数据类型 字段说明
p number 最新价
o number 开盘价
h number 最高价
l number 最低价
yc number 前收盘价
cje number 成交总额
v number 成交总量
pv number 原始成交总量
t string 更新时间
ud float 涨跌额
pc float 涨跌幅
zf float 振幅
t string 更新时间

实时交易(公开数据源)

API接口链接(可点击验证):https://api.zhituapi.com/hs/real/ssjy/股票代码?token=token证书

描述:根据《股票列表》得到的股票代码获取实时交易数据(您可以理解为日线的最新数据)。

更新频率:交易时间段每1分钟

字段名称 数据类型 字段说明
fm number 五分钟涨跌幅(%)
h number 最高价(元)
hs number 换手(%)
lb number 量比(%)
l number 最低价(元)
lt number 流通市值(元)
o number 开盘价(元)
pe number 市盈率(动态,总市值除以预估全年净利润,例如当前公布一季度净利润1000万,则预估全年净利润4000万)
pc number 涨跌幅(%)
p number 当前价格(元)
sz number 总市值(元)
cje number 成交额(元)
ud number 涨跌额(元)
v number 成交量(手)
yc number 昨日收盘价(元)
zf number 振幅(%)
zs number 涨速(%)
sjl number 市净率
zdf60 number 60日涨跌幅(%)
zdfnc number 年初至今涨跌幅(%)
t string 更新时间yyyy-MM-ddHH:mm:ss

实时交易(全部 | 券商数据)

API接口链接(可点击验证):https://api.zhituapi.com/hs/custom/realall?token=token证书

描述:一次性获取《股票列表》中所有股票的实时交易数据(您可以理解为日线的最新数据),该接口仅限至尊版和包年版证书使用且限制每分钟请求1次。

更新频率:实时

字段名称 数据类型 字段说明
dm string 股票代码
p number 最新价
o number 开盘价
h number 最高价
l number 最低价
yc number 前收盘价
cje number 成交总额
v number 成交总量
pv number 原始成交总量
ud float 涨跌额
pc float 涨跌幅
zf float 振幅
t string 更新时间

最新分时交易

API接口链接(可点击验证):https://api.zhituapi.com/hs/latest/股票代码.市场(如000001.SZ)/分时级别(如d)/除权方式?token=token证书&limit=最新条数(例如2)

描述:根据《股票列表》得到的股票代码和分时级别获取最新交易数据,交易时间升序。目前分时级别支持、5分钟、15分钟、30分钟、60分钟、日线、周线、月线、年线,对应的请求参数分别为5、15、30、60、d、w、m、y,除权方式有不复权、前复权、后复权、等比前复权、等比后复权,对应的参数分别为n、f、b、fr、br。

更新频率:实时

字段名称 数据类型 字段说明
t string 交易时间
o float 开盘价
h float 最高价
l float 最低价
c float 收盘价
v float 成交量
a float 成交额
pc float 前收盘价
sf int 停牌 1停牌,0 不停牌

历史分时交易

API接口链接(可点击验证):https://api.zhituapi.com/hs/history/股票代码.市场(如000001.SZ)/分时级别(如d)/除权方式?token=token证书&st=开始时间(如20240601)&et=结束时间(如20250430)

描述:根据《股票列表》得到的股票代码和分时级别获取历史交易数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日线、周线、月线、年线,对应的请求参数分别为5、15、30、60、d、w、m、y,除权方式有不复权、前复权、后复权、等比前复权、等比后复权,对应的参数分别为n、f、b、fr、br。开始时间以及结束时间的格式均为 YYYYMMDD 或 YYYYMMDDhhmmss,例如:'20240101' 或'20241231235959'。不设置开始时间和结束时间则为全部历史数据。

更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:30开始更新,预计17:10完成

字段名称 数据类型 字段说明
t string 交易时间
o float 开盘价
h float 最高价
l float 最低价
c float 收盘价
v float 成交量
a float 成交额
pc float 前收盘价
sf int 停牌 1停牌,0 不停牌

历史分时MACD

API接口链接(可点击验证):http://api.zhituapi.com/hs/history/macd/股票代码(如000001.SZ)/分时级别(如d)/除权类型(如n)?token=token证书&st=开始时间&et=结束时间&lt=最新条数

描述:根据《股票列表》得到的股票代码和分时级别获取历史MACD数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日线、周线、月线、年线,对应的请求参数分别为5、15、30、60、d、w、m、y,日线以上除权方式有不复权、前复权、后复权、等比前复权、等比后复权,对应的参数分别为n、f、b、fr、br,分钟级仅限请求不复权数据,对应的参数为n。开始时间以及结束时间的格式均为 YYYYMMDD 或 YYYYMMDDhhmmss,例如:'20240101' 或'20241231235959'。不设置开始时间和结束时间则为全部历史数据。同时可以指定获取数据条数,例如指定lt=10,则获取最新的10条数据。

更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:35更新

字段名称 数据类型 字段说明
t string 交易时间,短分时级别格式为yyyy-MM-ddHH:mm:ss,日线级别为yyyy-MM-dd
diff number DIFF值
dea number DEA值
macd number MACD值
ema12 number EMA(12)值
ema26 number EMA(26)值

历史分时MA

API接口链接(可点击验证):http://api.zhituapi.com/hs/history/ma/股票代码(如000001.SZ)/分时级别(如d)/除权类型(如n)?token=token证书&st=开始时间&et=结束时间&lt=最新条数

描述:根据《股票列表》得到的股票代码和分时级别获取历史MA数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日线、周线、月线、年线,对应的请求参数分别为5、15、30、60、d、w、m、y,日线以上除权方式有不复权、前复权、后复权、等比前复权、等比后复权,对应的参数分别为n、f、b、fr、br,分钟级仅限请求不复权数据,对应的参数为n。开始时间以及结束时间的格式均为 YYYYMMDD 或 YYYYMMDDhhmmss,例如:'20240101' 或'20241231235959'。不设置开始时间和结束时间则为全部历史数据。同时可以指定获取数据条数,例如指定lt=10,则获取最新的10条数据。

更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:35更新

字段名称 数据类型 字段说明
t string 交易时间,短分时级别格式为yyyy-MM-ddHH:mm:ss,日线级别为yyyy-MM-dd
ma3 number MA3,没有则为null
ma5 number MA5,没有则为null
ma10 number MA10,没有则为null
ma15 number MA15,没有则为null
ma20 number MA20,没有则为null
ma30 number MA30,没有则为null
ma60 number MA60,没有则为null
ma120 number MA120,没有则为null
ma200 number MA200,没有则为null
ma250 number MA250,没有则为null

历史分时BOLL

API接口链接(可点击验证):http://api.zhituapi.com/hs/history/boll/股票代码(如000001.SZ)/分时级别(如d)/除权类型(如n)?token=token证书&st=开始时间&et=结束时间&lt=最新条数

描述:根据《股票列表》得到的股票代码和分时级别获取历史BOLL数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日线、周线、月线、年线,对应的请求参数分别为5、15、30、60、d、w、m、y,日线以上除权方式有不复权、前复权、后复权、等比前复权、等比后复权,对应的参数分别为n、f、b、fr、br,分钟级仅限请求不复权数据,对应的参数为n。开始时间以及结束时间的格式均为 YYYYMMDD 或 YYYYMMDDhhmmss,例如:'20240101' 或'20241231235959'。不设置开始时间和结束时间则为全部历史数据。同时可以指定获取数据条数,例如指定lt=10,则获取最新的10条数据。

更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:35更新

字段名称 数据类型 字段说明
t string 交易时间,短分时级别格式为yyyy-MM-ddHH:mm:ss,日线级别为yyyy-MM-dd
u number 上轨
d number 下轨
m number 中轨

更多说明文档:沪深数据API文档 | 金融股票数据API接口 | 智兔数服

posted @ 2025-09-26 10:47  不会写代码的码农农  阅读(245)  评论(0)    收藏  举报