在近一至两年期间,股票量化分析逐步成为备受关注的热门议题。对于投身于该领域工作而言,首要步骤便是获取全面且精准的股票数据。无论是实时交易数据、历史交易记录、财务数据,亦或是基本面信息,这些数据均是开展量化分析过程中不可或缺的宝贵资源。我们的核心任务在于从这些数据中提炼出具有价值的信息,从而为投资策略提供坚实有力的指导。
在数据探索进程中,我尝试运用了多种方法,涵盖自编网易股票页面爬虫程序、申万行业数据爬虫程序,以及同花顺问财的爬虫程序,甚至还采用了聚宽的免费数据 API。然而,爬虫作为数据来源,时常呈现出稳定性不足的状况,给我们的量化分析工作带来了一定程度的困扰 。
在量化分析领域,实时且准确的数据接口是成功的基石。经过多次实际测试,我将已确认可用的数据接口分享给正在从事量化分析的朋友们,希望能够对你们的研究和工作有所帮助,接下来我会用Python、JavaScript(Node.js)、Java、C#和Ruby五种主流语言的实例代码给大家逐一演示一下如何获取各类股票数据:
【特别提示】:下方验证接口的token证书(ZHITU_TOKEN_LIMIT_TEST)为官方提供的验证证书,该证书只能验证股票代码000001的股票,因此,下方的接口连接中,即使换掉代码实际返回的也是000001的数据,在实际应用中,需要自己去申请一个免费证书更换掉就可以随意请求数据了,免费证书的申请连接(点击即可马上得到证书):https://www.zhituapi.com/gettoken.html
股票列表
API接口链接(点击打开验证):https://api.zhituapi.com/hs/list/all?token=ZHITU_TOKEN_LIMIT_TEST
【实时数据接口】
买卖五档盘口
API接口链接(点击打开验证):https://api.zhituapi.com/hs/real/mmwp/000001?token=ZHITU_TOKEN_LIMIT_TEST
最新分时交易
API接口链接(点击打开验证):https://api.zhituapi.com/hs/latest/fsjy/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
最新分时KDJ(9,3,3)
API接口链接(点击打开验证):https://api.zhituapi.com/hs/latest/kdj/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
最新分时MACD
API接口链接(点击打开验证):https://api.zhituapi.com/hs/latest/macd/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
最新分时MA
API接口链接(点击打开验证):https://api.zhituapi.com/hs/latest/ma/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
最新分时BOLL(20,2)
API接口链接(点击打开验证):https://api.zhituapi.com/hs/latest/boll/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
实时交易数据接口
API接口链接(点击打开验证):https://api.zhituapi.com/hs/real/ssjy/000001?token=ZHITU_TOKEN_LIMIT_TEST
1、python
import requests
url = "https://api.zhituapi.com/hs/real/ssjy/000001?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/hs/real/ssjy/000001?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/hs/real/ssjy/000001?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();
}
}
}
返回的数据:
{"o":11.31,"fm":0.18,"h":11.34,"hs":0.03,"lb":6.29,"l":11.3,"lt":219865129061.0,"pe":4.94,"pc":-0.35,"p":11.33,"sz":219869053183.0,"cje":69878055.0,"ud":-0.04,"v":61749,"yc":11.37,"zf":0.35,"zs":0.18,"sjl":0.52,"zdf60":-3.16,"zdfnc":-3.16,"t":"2025-04-03 09:32:10"}
【历史数据接口】
历史分时交易
API接口链接(点击打开验证):https://api.zhituapi.com/hs/history/fsjy/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
历史分时KDJ(9,3,3)
API接口链接(点击打开验证):https://api.zhituapi.com/hs/history/kdj/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
历史分时MACD
API接口链接(点击打开验证):https://api.zhituapi.com/hs/history/macd/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
历史分时MA
API接口链接(点击打开验证):https://api.zhituapi.com/hs/history/ma/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
历史分时BOLL(20,2)
API接口链接(点击打开验证):https://api.zhituapi.com/hs/history/boll/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
API说明文档
沪深两市股票
API接口链接(点击打开验证):https://api.zhituapi.com/hs/list/all?token=ZHITU_TOKEN_LIMIT_TEST
接口说明:获取沪深两市所有股票的代码、名称、所属交易所信息,用于后续接口的传递参数。
数据更新:每日16:00更新
字段名称 | 数据类型 | 字段说明 |
---|---|---|
dm | string | 股票的六位交易代码,例如:601398 |
mc | string | 股票名称,例如:工商银行 |
jys | string | 交易所,"sh"表示上证,"sz"表示深证 |
实时交易数据接口
API接口链接(点击打开验证):https://api.zhituapi.com/hs/real/ssjy/000001?token=ZHITU_TOKEN_LIMIT_TEST
接口说明:根据《股票列表》得到的股票代码获取实时交易数据(您可以理解为日线的最新数据)。
数据更新:交易时间段每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-dd HH:mm:ss |
买卖五档盘口
API接口链接(点击打开验证):https://api.zhituapi.com/hs/real/mmwp/000001?token=ZHITU_TOKEN_LIMIT_TEST
描述:根据《股票列表》得到的股票代码获取实时买卖五档盘口数据。
更新频率:交易时间段每2分钟
字段名称 | 数据类型 | 字段说明 |
---|---|---|
t | string | 更新时间yyyy-MM-dd HH:mm:ss |
vc | number | 委差(股) |
vb | number | 委比(%) |
pb1 | number | 买1价(元) |
vb1 | number | 买1量(股) |
pb2 | number | 买2价(元) |
vb2 | number | 买2量(股) |
pb3 | number | 买3价(元) |
vb3 | number | 买3量(股) |
pb4 | number | 买4价(元) |
vb4 | number | 买4量(股) |
pb5 | number | 买5价(元) |
vb5 | number | 买5量(股) |
ps1 | number | 卖1价(元) |
vs1 | number | 卖1量(股) |
ps2 | number | 卖2价(元) |
vs2 | number | 卖2量(股) |
ps3 | number | 卖3价(元) |
vs3 | number | 卖3量(股) |
ps4 | number | 卖4价(元) |
vs4 | number | 卖4量(股) |
ps5 | number | 卖5价(元) |
vs5 | number | 卖5量(股) |
最新分时交易
API接口链接(点击打开验证):https://api.zhituapi.com/hs/latest/fsjy/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
描述:根据《股票列表》得到的股票代码以及分时级别获取分时交易数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是5、15、30、60、d(日线)、dq(日线前复权)、dh(日线后复权)、w(周线)、wq(周线前复权)、wh(周线后复权)、m(月线)、mq(月线前复权)、mh(月线后复权)、y(年线)、yq(年线前复权)、yh(年线后复权)。
更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:35更新
字段名称 | 数据类型 | 字段说明 |
---|---|---|
d | string | 交易时间,短分时级别格式为yyyy-MM-dd HH:mm:ss,日线级别为yyyy-MM-dd |
o | number | 开盘价(元) |
h | number | 最高价(元) |
l | number | 最低价(元) |
c | number | 收盘价(元) |
v | number | 成交量(手) |
e | number | 成交额(元) |
zf | number | 振幅(%) |
hs | number | 换手率(%) |
zd | number | 涨跌幅(%) |
zde | number | 涨跌额(元) |
最新分时KDJ(9,3,3)
API接口链接(点击打开验证):https://api.zhituapi.com/hs/latest/kdj/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
描述:根据《股票列表》得到的股票代码以及分时级别获取分时KDJ数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是5、15、30、60、d(日线)、dq(日线前复权)、dh(日线后复权)、w(周线)、wq(周线前复权)、wh(周线后复权)、m(月线)、mq(月线前复权)、mh(月线后复权)、y(年线)、yq(年线前复权)、yh(年线后复权)。
更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:35更新
字段名称 | 数据类型 | 字段说明 |
---|---|---|
t | string | 交易时间,短分时级别格式为yyyy-MM-dd HH:mm:ss,日线级别为yyyy-MM-dd |
k | number | K值 |
d | number | D值 |
j | number | J值 |
最新分时MACD
API接口链接(点击打开验证):https://api.zhituapi.com/hs/latest/macd/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
描述:根据《股票列表》得到的股票代码以及分时级别获取分时MACD数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是5、15、30、60、d(日线)、dq(日线前复权)、dh(日线后复权)、w(周线)、wq(周线前复权)、wh(周线后复权)、m(月线)、mq(月线前复权)、mh(月线后复权)、y(年线)、yq(年线前复权)、yh(年线后复权)。
更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:35更新
字段名称 | 数据类型 | 字段说明 |
---|---|---|
t | string | 交易时间,短分时级别格式为yyyy-MM-dd HH:mm:ss,日线级别为yyyy-MM-dd |
diff | number | DIFF值 |
dea | number | DEA值 |
macd | number | MACD值 |
ema12 | number | EMA(12)值 |
ema26 | number | EMA(26)值 |
最新分时MA
API接口链接(点击打开验证):https://api.zhituapi.com/hs/latest/ma/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
描述:根据《股票列表》得到的股票代码以及分时级别获取分时MA数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是5、15、30、60、d(日线)、dq(日线前复权)、dh(日线后复权)、w(周线)、wq(周线前复权)、wh(周线后复权)、m(月线)、mq(月线前复权)、mh(月线后复权)、y(年线)、yq(年线前复权)、yh(年线后复权)。目前提供了ma3,ma5,ma10,ma15,ma20,ma30,ma60,ma120,ma200,ma250这些常用的移动平均线。
更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:35更新
字段名称 | 数据类型 | 字段说明 |
---|---|---|
t | string | 交易时间,短分时级别格式为yyyy-MM-dd HH:mm:ss,日线级别为yyyy-MM-dd |
ma3 | number | MA3,没有则为null |
ma5 | number | MA5,没有则为null |
ma10 | number | MA10,没有则为null |
ma15 | number | MA20,没有则为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(20,2)
API接口链接(点击打开验证):https://api.zhituapi.com/hs/latest/boll/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
描述:根据《股票列表》得到的股票代码以及分时级别获取分时BOLL数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是5、15、30、60、d(日线)、dq(日线前复权)、dh(日线后复权)、w(周线)、wq(周线前复权)、wh(周线后复权)、m(月线)、mq(月线前复权)、mh(月线后复权)、y(年线)、yq(年线前复权)、yh(年线后复权)。
更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:35更新
字段名称 | 数据类型 | 字段说明 |
---|---|---|
t | string | 交易时间,短分时级别格式为yyyy-MM-dd HH:mm:ss,日线级别为yyyy-MM-dd |
u | number | 上轨 |
d | number | 下轨 |
m | number | 中轨 |
历史分时交易
API接口链接(点击打开验证):https://api.zhituapi.com/hs/history/fsjy/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
描述:根据《股票列表》得到的股票代码和分时级别获取历史交易数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是5、15、30、60、d(日线)、dq(日线前复权)、dh(日线后复权)、w(周线)、wq(周线前复权)、wh(周线后复权)、m(月线)、mq(月线前复权)、mh(月线后复权)、y(年线)、yq(年线前复权)、yh(年线后复权)。
更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:35更新
字段名称 | 数据类型 | 字段说明 |
---|---|---|
d | string | 交易时间,短分时级别格式为yyyy-MM-dd HH:mm:ss,日线级别为yyyy-MM-dd |
o | number | 开盘价(元) |
h | number | 最高价(元) |
l | number | 最低价(元) |
c | number | 收盘价(元) |
v | number | 成交量(手) |
e | number | 成交额(元) |
zf | number | 振幅(%) |
hs | number | 换手率(%) |
zd | number | 涨跌幅(%) |
zde | number | 涨跌额(元) |
历史分时MACD
API接口链接(点击打开验证):https://api.zhituapi.com/hs/history/macd/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
描述:根据《股票列表》得到的股票代码和分时级别获取历史macd数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是5、15、30、60、d(日线)、dq(日线前复权)、dh(日线后复权)、w(周线)、wq(周线前复权)、wh(周线后复权)、m(月线)、mq(月线前复权)、mh(月线后复权)、y(年线)、yq(年线前复权)、yh(年线后复权)。
更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:35更新
字段名称 | 数据类型 | 字段说明 |
---|---|---|
t | string | 交易时间,短分时级别格式为yyyy-MM-dd HH:mm:ss,日线级别为yyyy-MM-dd |
diff | number | DIFF值 |
dea | number | DEA值 |
macd | number | MACD值 |
ema12 | number | EMA(12)值 |
ema26 | number | EMA(26)值 |
历史分时MA
API接口链接(点击打开验证):https://api.zhituapi.com/hs/history/ma/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
描述:根据《股票列表》得到的股票代码和分时级别获取历史ma数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是5、15、30、60、d(日线)、dq(日线前复权)、dh(日线后复权)、w(周线)、wq(周线前复权)、wh(周线后复权)、m(月线)、mq(月线前复权)、mh(月线后复权)、y(年线)、yq(年线前复权)、yh(年线后复权)。目前提供了ma3,ma5,ma10,ma15,ma20,ma30,ma60,ma120,ma200,ma250这些常用的移动平均线。
更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:35更新
字段名称 | 数据类型 | 字段说明 |
---|---|---|
t | string | 交易时间,短分时级别格式为yyyy-MM-dd HH:mm:ss,日线级别为yyyy-MM-dd |
ma3 | number | MA3,没有则为null |
ma5 | number | MA5,没有则为null |
ma10 | number | MA10,没有则为null |
ma15 | number | MA20,没有则为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(20,2)
API接口链接(点击打开验证):https://api.zhituapi.com/hs/history/boll/000001/d?token=ZHITU_TOKEN_LIMIT_TEST
描述:根据《股票列表》得到的股票代码和分时级别获取历史boll数据,交易时间升序。目前分时级别支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是5、15、30、60、d(日线)、dq(日线前复权)、dh(日线后复权)、w(周线)、wq(周线前复权)、wh(周线后复权)、m(月线)、mq(月线前复权)、mh(月线后复权)、y(年线)、yq(年线前复权)、yh(年线后复权)。
更新频率:分钟级别数据盘中更新,分时越小越优先更新,如5分钟级别会每5分钟更新,15分钟级别会每15分钟更新,以此类推,日线及以上级别每日15:35更新
字段名称 | 数据类型 | 字段说明 |
---|---|---|
t | string | 交易时间,短分时级别格式为yyyy-MM-dd HH:mm:ss,日线级别为yyyy-MM-dd |
u | number | 上轨 |
d | number | 下轨 |
m | number | 中轨 |