【驱动量化交易27】教你如何通过股票数据api接口获取股票指数历史分时BOLL数据之Python、Java等多种主流语言实例代码演示通过股票数据接口获取数据
如今,量化分析在股市领域风靡一时,其核心要素在于数据,获取股票数据,是踏上量化分析之路的第一步。你可以选择亲手编写爬虫来抓取,但更便捷的方式,莫过于利用专业的股票数据API接口。自编爬虫虽零成本,却伴随着时间与精力的巨大消耗,且常因目标页面变动而失效。大家可以依据自己的实际情况来决定数据获取方式。
接下来,我将分享200多个实测可用且免费的专业股票数据接口,并通过Python、JavaScript(Node.js)、Java、C#、Ruby等五种主流语言,逐一演示如何高效获取各类股票数据,希望能够对大家有所帮助。
先把数据接口的地址给大家,大家可以直接点击地址或复制到地址栏打开,马上就可以验证接口的有效性
沪深指数历史分时BOLL数据API接口:http://api.mairuiapi.com/hsindex/history/boll/000001.SH/d/LICENCE-66D8-9F96-0C7F0FBCD073
【特别提示】:下方验证接口的licence证书(LICENCE-66D8-9F96-0C7F0FBCD073)为官方提供的验证证书,该证书只能验证股票代码000001的股票,因此,下方的接口连接中,即使换掉代码实际返回的也是000001的数据,在实际应用中,需要自己去申请一个免费证书更换掉就可以随意请求数据了,免费证书的申请连接(点击即可马上得到证书):https://www.mairuiapi.com/getlicence
1、python
import requests
url = "http://api.mairuiapi.com/hsindex/history/boll/000001.SH/d/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.mairuiapi.com/hsindex/history/boll/000001.SH/d/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.mairuiapi.com/hsindex/history/boll/000001.SH/d/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();
}
}
}
4、C#
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
using (HttpClient client = new HttpClient())
{
string url = "http://api.mairuiapi.com/hsindex/history/boll/000001.SH/d/LICENCE-66D8-9F96-0C7F0FBCD073";
HttpResponseMessage response = await client.GetAsync(url);
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseBody);
}
}
}
5、Ruby
require 'net/http'
require 'json'
url = URI("http://api.mairuiapi.com/hsindex/history/boll/000001.SH/d/LICENCE-66D8-9F96-0C7F0FBCD073")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
response = http.request(request)
data = JSON.parse(response.read_body)
puts data
返回数据示例:
{"t":"2025-02-07 00:00","u":3291.37,"d":3168.89,"m":3230.13},{"t":"2025-02-10 00:00","u":3308.14,"d":3163.19,"m":3235.67},{"t":"2025-02-11 00:00","u":3320.73,"d":3161.72,"m":3241.22},{"t":"2025-02-12 00:00","u":3338.55,"d":3155.57,"m":3247.06},{"t":"2025-02-13 00:00","u":3350.5,"d":3153.85,"m":3252.18},{"t":"2025-02-14 00:00","u":3363.54,"d":3154.35,"m":3258.94},{"t":"2025-02-17 00:00","u":3372.38,"d":3164.23,"m":3268.31},{"t":"2025-02-18 00:00","u":3370.73,"d":3182.25,"m":3276.49},{"t":"2025-02-19 00:00","u":3380.17,"d":3183.88,"m":3282.02},{"t":"2025-02-20 00:00","u":3387.31,"d":3189.1,"m":3288.21},{"t":"2025-02-21 00:00","u":3398.92,"d":3191.8,"m":3295.36},{"t":"2025-02-24 00:00","u":3407.69,"d":3196.16,"m":3301.92},{"t":"2025-02-25 00:00","u":3410.98,"d":3203.03,"m":3307.0},{"t":"2025-02-26 00:00","u":3418.11,"d":3209.66,"m":3313.88},{"t":"2025-02-27 00:00","u":3420.84,"d":3224.38,"m":3322.61},{"t":"2025-02-28 00:00","u":3415.79,"d":3238.5,"m":3327.14},{"t":"2025-03-03 00:00","u":3412.38,"d":3248.34,"m":3330.36},{"t":"2025-03-04 00:00","u":3407.58,"d":3260.5,"m":3334.04},{"t":"2025-03-05 00:00","u":3395.42,"d":3283.91,"m":3339.66},{"t":"2025-03-06 00:00","u":3393.94,"d":3296.42,"m":3345.18},{"t":"2025-03-07 00:00","u":3394.84,"d":3302.42,"m":3348.63},{"t":"2025-03-10 00:00","u":3395.96,"d":3305.69,"m":3350.83},{"t":"2025-03-11 00:00","u":3398.1,"d":3309.73,"m":3353.92},{"t":"2025-03-12 00:00","u":3399.91,"d":3310.48,"m":3355.19},
返回的数据字段说明:
字段名称 数据类型 字段说明
t string 交易时间,短分时级别格式为yyyy-MM-ddHH:mm:ss,日线级别为yyyy-MM-dd
u number 上轨
d number 下轨
m number 中轨

浙公网安备 33010602011771号