股票数据免费获取指南:Python、JavaScript、JAVA实例代码与API接口详解(实时数据、历史数据、CDMA、KDJ指标)

​ 近一两年来,股票量化分析逐渐受到广泛关注。而作为这一领域的初学者,首先需要面对的挑战就是如何获取全面且准确的股票数据。因为无论是实时交易数据、历史交易记录、财务数据还是基本面信息,这些数据都是我们进行量化分析时不可或缺的宝贵资源。我们的核心任务是从这些数据中挖掘出有价值的信息,为我们的投资策略提供有力的支持。

​ 在寻找数据的过程中,我尝试了多种途径,包括自编网易股票页面爬虫、申万行业数据爬虫,以及同花顺问财的爬虫,甚至还尝试了聚宽的免费数据API。然而,爬虫作为数据源常常显得不够稳定,给我们的量化分析带来不小的挑战。

​ 我最近的两年量化分析研究中,已实测确认以下数据接口均可用、稳定、数据更新及时。为了便于大家验证,下方的所有接口连接我已加入了超链接,均可直接点击即立即获取到数据,以此验证我提供的接口可用性。同时,在底部我提供了这些数据接口的API文档,详细说明这些接口返回的字段说明以及接口连接的使用方法。

【特别提示】:下方验证接口的licence证书(LICENCE-66D8-9F96-0C7F0FBCD073)为官方提供的验证证书,该证书只能验证股票代码000001的股票,因此,下方的接口连接中,即使换掉代码实际返回的也是000001的数据,在实际应用中,需要自己去申请一个免费证书更换掉就可以随意请求数据了,免费证书的申请连接(点击即可马上得到证书):https://www.mairui.club/gratis.html

沪深两市股票列表

API接口链接(可点击验证):https://api.mairui.club/hslt/list/LICENCE-66D8-9F96-0C7F0FBCD073

【实时数据接口】

沪深两市买卖五档盘口

API接口链接(可点击验证):https://api.mairui.club/hsrl/mmwp/000001/LICENCE-66D8-9F96-0C7F0FBCD073

沪深两市最新分时交易

API接口链接(可点击验证):https://api.mairui.club/hszb/fsjy/000001/60m/LICENCE-66D8-9F96-0C7F0FBCD073

沪深两市最新分时KDJ(9,3,3)

API接口链接(可点击验证):https://api.mairui.club/hszb/kdj/000001/60m/LICENCE-66D8-9F96-0C7F0FBCD073

沪深两市最新分时MACD

API接口链接(可点击验证):https://api.mairui.club/hszb/macd/000001/60m/LICENCE-66D8-9F96-0C7F0FBCD073

沪深两市最新分时MA

API接口链接(可点击验证):https://api.mairui.club/hszb/ma/000001/60m/LICENCE-66D8-9F96-0C7F0FBCD073

沪深两市最新分时BOLL(20,2)

API接口链接(可点击验证):https://api.mairui.club/hszb/boll/000001/60m/LICENCE-66D8-9F96-0C7F0FBCD073

沪深两市实时交易数据接口

API接口链接(可点击验证):https://api.mairui.club/hsrl/ssjy/000001/LICENCE-66D8-9F96-0C7F0FBCD073

1、python

import requests  
  
url = "http://api.mairui.club/hsrl/ssjy/000001/LICENCE-66D8-9F96-0C7F0FBCD073"  
response = requests.get(url)  
data = response.json()  
print(data)

2、JavaScript (Node.js)

const axios = require('axios');  
  
const url = "http://api.mairui.club/hsrl/ssjy/000001/LICENCE-66D8-9F96-0C7F0FBCD073";  
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("http://api.mairui.club/hsrl/ssjy/000001/LICENCE-66D8-9F96-0C7F0FBCD073"))  
            .build();  
  
        try {  
            HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());  
            System.out.println(response.body());  
        } catch (IOException | InterruptedException e) {  
            e.printStackTrace();  
        }  
    }  
}

返回的数据:

{"fm":"-0.20","h":"10.26","hs":"0.67","lb":"1.38","l":"10.11","lt":"197161074084.00","o":"10.11","pe":"3.81","pc":"0.30","p":"10.16","sz":"197164128892.00","cje":"1318858687.52","ud":"0.03","v":"1294059","yc":"10.13","zf":"1.48","zs":"-0.20","sjl":"0.48","zdf60":"-0.20","zdfnc":"17.19","t":"2024-08-30 15:29:03"}

【历史数据接口】

沪深两市历史分时交易

API接口链接(可点击验证):https://api.mairui.club/hszbl/fsjy/000001/60m/LICENCE-66D8-9F96-0C7F0FBCD073

沪深两市历史分时KDJ(9,3,3)

API接口链接(可点击验证):https://api.mairui.club/hszbl/kdj/000001/60m/LICENCE-66D8-9F96-0C7F0FBCD073

沪深两市历史分时MACD

API接口链接(可点击验证):https://api.mairui.club/hszbl/macd/000001/60m/LICENCE-66D8-9F96-0C7F0FBCD073

沪深两市历史分时MA

API接口链接(可点击验证):https://api.mairui.club/hszbl/ma/000001/60m/LICENCE-66D8-9F96-0C7F0FBCD073

沪深两市历史分时BOLL(20,2)

API接口链接(可点击验证):https://api.mairui.club/hszbl/boll/000001/60m/LICENCE-66D8-9F96-0C7F0FBCD073

API说明文档

沪深两市股票

API接口:https://api.mairui.club/hslt/list/licence证书

接口说明:获取沪深两市所有股票的代码、名称、所属交易所信息,用于后续接口的传递参数。

数据更新:每日16:00更新

字段名称 数据类型 字段说明
dm string 股票的六位交易代码,例如:601398
mc string 股票名称,例如:工商银行
jys string 交易所,"sh"表示上证,"sz"表示深证

实时交易数据接口

API接口:https://api.mairui.club/hsrl/ssjy/股票代码(如000001)/licence证书

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

数据更新:交易时间段每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.mairui.club/hsrl/mmwp/股票代码(如000001)/licence证书

接口说明:根据《股票列表》得到的股票代码获取实时买卖五档盘口数据。

数据更新:交易时间段每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.mairui.club/hszb/fsjy/股票代码(如000001)/分时级别/licence证书

接口说明:根据《股票列表》得到的股票代码以及分时级别获取分时交易数据,交易时间从远到近排序。目前 分时级别 支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是 5m(5分钟)、15m(15分钟)、30m(30分钟)、60m(60分钟)、dn(日线未复权)、dq(日线前复权)、dh(日线后复权)、wn(周线未复权)、wq(周线前复权)、wh(周线后复权)、mn(月线未复权)、mq(月线前复权)、mh(月线后复权)、yn(年线未复权)、yq(年线前复权)、yh(年线后复权) 。

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

字段名称 数据类型 字段说明
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.mairui.club/hszb/kdj/股票代码(如000001)/分时级别/licence证书

接口说明:根据《股票列表》得到的股票代码以及分时级别获取分时KDJ数据,交易时间从远到近排序。目前 分时级别 支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是 5m(5分钟)、15m(15分钟)、30m(30分钟)、60m(60分钟)、dn(日线未复权)、dq(日线前复权)、dh(日线后复权)、wn(周线未复权)、wq(周线前复权)、wh(周线后复权)、mn(月线未复权)、mq(月线前复权)、mh(月线后复权)、yn(年线未复权)、yq(年线前复权)、yh(年线后复权) 。

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

字段名称 数据类型 字段说明
t string 交易时间,短分时级别格式为yyyy-MM-dd HH:mm:ss,日线级别为yyyy-MM-dd
k number K值
d number D值
j number J值

最新分时MACD

API接口:https://api.mairui.club/hszb/macd/股票代码(如000001)/分时级别/licence证书

接口说明:根据《股票列表》得到的股票代码以及分时级别获取分时MACD数据,交易时间从远到近排序。目前 分时级别 支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是 5m(5分钟)、15m(15分钟)、30m(30分钟)、60m(60分钟)、dn(日线未复权)、dq(日线前复权)、dh(日线后复权)、wn(周线未复权)、wq(周线前复权)、wh(周线后复权)、mn(月线未复权)、mq(月线前复权)、mh(月线后复权)、yn(年线未复权)、yq(年线前复权)、yh(年线后复权) 。

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

字段名称 数据类型 字段说明
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.mairui.club/hszb/ma/股票代码(如000001)/分时级别/licence证书

接口说明:根据《股票列表》得到的股票代码以及分时级别获取分时MA数据,交易时间从远到近排序。目前 分时级别 支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是 5m(5分钟)、15m(15分钟)、30m(30分钟)、60m(60分钟)、dn(日线未复权)、dq(日线前复权)、dh(日线后复权)、wn(周线未复权)、wq(周线前复权)、wh(周线后复权)、mn(月线未复权)、mq(月线前复权)、mh(月线后复权)、yn(年线未复权)、yq(年线前复权)、yh(年线后复权) 。目前提供了ma3,ma5,ma10,ma15,ma20,ma30,ma60,ma120,ma200,ma250这些常用的移动平均线。

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

字段名称 数据类型 字段说明
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.mairui.club/hszb/boll/股票代码(如000001)/分时级别/licence证书

接口说明:根据《股票列表》得到的股票代码以及分时级别获取分时BOLL数据,交易时间从远到近排序。目前 分时级别 支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是 5m(5分钟)、15m(15分钟)、30m(30分钟)、60m(60分钟)、dn(日线未复权)、dq(日线前复权)、dh(日线后复权)、wn(周线未复权)、wq(周线前复权)、wh(周线后复权)、mn(月线未复权)、mq(月线前复权)、mh(月线后复权)、yn(年线未复权)、yq(年线前复权)、yh(年线后复权) 。

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

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

历史分时交易

API接口:https://api.mairui.club/hszbl/fsjy/股票代码(如000001)/分时级别/licence证书

接口说明:根据《股票列表》得到的股票代码和分时级别获取历史交易数据,交易时间从远到近排序。目前 分时级别 支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是 5m(5分钟)、15m(15分钟)、30m(30分钟)、60m(60分钟)、dn(日线未复权)、dq(日线前复权)、dh(日线后复权)、wn(周线未复权)、wq(周线前复权)、wh(周线后复权)、mn(月线未复权)、mq(月线前复权)、mh(月线后复权)、yn(年线未复权)、yq(年线前复权)、yh(年线后复权) 。

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

字段名称 数据类型 字段说明
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.mairui.club/hszbl/macd/股票代码(如000001)/分时级别/licence证书

接口说明:根据《股票列表》得到的股票代码和分时级别获取历史macd数据,交易时间从远到近排序。目前 分时级别 支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是 5m(5分钟)、15m(15分钟)、30m(30分钟)、60m(60分钟)、dn(日线未复权)、dq(日线前复权)、dh(日线后复权)、wn(周线未复权)、wq(周线前复权)、wh(周线后复权)、mn(月线未复权)、mq(月线前复权)、mh(月线后复权)、yn(年线未复权)、yq(年线前复权)、yh(年线后复权) 。

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

字段名称 数据类型 字段说明
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.mairui.club/hszbl/ma/股票代码(如000001)/分时级别/licence证书

接口说明:根据《股票列表》得到的股票代码和分时级别获取历史ma数据,交易时间从远到近排序。目前 分时级别 支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是 5m(5分钟)、15m(15分钟)、30m(30分钟)、60m(60分钟)、dn(日线未复权)、dq(日线前复权)、dh(日线后复权)、wn(周线未复权)、wq(周线前复权)、wh(周线后复权)、mn(月线未复权)、mq(月线前复权)、mh(月线后复权)、yn(年线未复权)、yq(年线前复权)、yh(年线后复权) 。目前提供了ma3,ma5,ma10,ma15,ma20,ma30,ma60,ma120,ma200,ma250这些常用的移动平均线。

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

字段名称 数据类型 字段说明
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.mairui.club/hszbl/boll/股票代码(如000001)/分时级别/licence证书

接口说明:根据《股票列表》得到的股票代码和分时级别获取历史boll数据,交易时间从远到近排序。目前 分时级别 支持5分钟、15分钟、30分钟、60分钟、日周月年级别(包括前后复权),对应的值分别是 5m(5分钟)、15m(15分钟)、30m(30分钟)、60m(60分钟)、dn(日线未复权)、dq(日线前复权)、dh(日线后复权)、wn(周线未复权)、wq(周线前复权)、wh(周线后复权)、mn(月线未复权)、mq(月线前复权)、mh(月线后复权)、yn(年线未复权)、yq(年线前复权)、yh(年线后复权) 。

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

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

作者:蝶澈乐乐

物联沃分享整理
物联沃-IOTWORD物联网 » 股票数据免费获取指南:Python、JavaScript、JAVA实例代码与API接口详解(实时数据、历史数据、CDMA、KDJ指标)

发表回复