当前位置: 首页 > article >正文

【如何获取股票数据10】Python、Java等多种主流语言实例演示获取股票行情api接口之沪深A股历史分时KDJ数据获取实例演示及接口API说明文档

最近一两年内,股票量化分析逐渐成为热门话题。而从事这一领域工作的第一步,就是获取全面且准确的股票数据。因为无论是实时交易数据、历史交易记录、财务数据还是基本面信息,这些数据都是我们进行量化分析时不可或缺的宝贵资源。我们的主要任务是从这些数据中提炼出有价值的信息,为我们的投资策略提供有力的指导。

在数据探索的旅途中,我尝试了多种方法,包括自编网易股票页面爬虫、申万行业数据爬虫,以及同花顺问财的爬虫,甚至还使用了聚宽的免费数据API。然而,爬虫作为数据源常常显得不够稳定,给我们的量化分析带来不小的困扰。

在量化分析领域,实时且准确的数据接口是成功的基石。经过多次实际测试,我将已确认可用的数据接口分享给正在从事量化分析的朋友们,希望能够对你们的研究和工作有所帮助,接下来我会用Python、JavaScript(Node.js)、Java、C#和Ruby五种主流语言的实例代码给大家逐一演示一下如何获取各类股票数据:

1、python

import requests  
  
url = "http://api.mairui.club/hszb/kdj/000001/60m/b997d4403688d5e66a"  
response = requests.get(url)  
data = response.json()  
print(data)

2、JavaScript (Node.js)

const axios = require('axios');  
  
const url = "http://api.mairui.club/hszb/kdj/000001/60m/b997d4403688d5e66a";  
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/hszb/kdj/000001/60m/b997d4403688d5e66a"))  
            .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.mairui.club/hszb/kdj/000001/60m/b997d4403688d5e66a";  
            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.mairui.club/hszb/kdj/000001/60m/b997d4403688d5e66a")  
  
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":"2024-07-23 10:30","k":"47.8300","d":"47.8300","j":"47.83"},{"t":"2024-07-23 11:30","k":"46.89","d":"47.52","j":"45.63"},{"t":"2024-07-23 14:00","k":"46.26","d":"47.10","j":"44.58"},{"t":"2024-07-23 15:00","k":"33.75","d":"42.65","j":"15.95"},{"t":"2024-07-24 10:30","k":"27.84","d":"37.72","j":"8.08"},{"t":"2024-07-24 11:30","k":"28.56","d":"34.67","j":"16.34"},{"t":"2024-07-24 14:00","k":"25.71","d":"31.69","j":"13.75"},{"t":"2024-07-24 15:00","k":"18.73","d":"27.37","j":"1.45"},{"t":"2024-07-25 10:30","k":"14.71","d":"23.15","j":"-2.17"}]{"t":"2024-08-30 15:00","u":"10.57","d":"10.06","m":"10.32"}

历史分时KDJ(9,3,3)

API接口:http://api.mairui.club/hszbl/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更新。

字段名称数据类型字段说明
tstring交易时间,短分时级别格式为yyyy-MM-dd HH:mm:ss,日线级别为yyyy-MM-dd
knumberK值
dnumberD值
jnumberJ值

【重要提示】

上方所有演示中的API接口Url链接结尾的b997d4403688d5e66a,均为数据请求licence证书,因为这个证书是官方测试证书,仅可用于验证各个接口的有效性,所以这个证书限制了只可请求股票代码为000001的数据,正式环境中是不能使用的,证书可以自己去申请一个替换掉就好了,证书是免费申请的:https://www.mairui.club/getlicence.html,替换成自己申请的证书就可以请求任何股票数据了。


http://www.kler.cn/news/356529.html

相关文章:

  • 「从零开始的 Vue 3 系列」:第十二章——Element Plus 组件的二次封装实践(保姆式)
  • 母婴商城(论文+源码)_kaic
  • 音视频入门基础:H.264专题(18)——AVCDecoderConfigurationRecord简介
  • conda打包
  • Vue 3中集成Element Plus组件库
  • 车载行业前瞻技术---AI应用前景分析
  • 软件产品国际化:前后端及App多语言版本解决方案(超详细实现过程)
  • 3.Java入门笔记--基础语法
  • Git Push 深度解析:命令的区别与实践
  • Linux 手撕线程池
  • vcenter的使用
  • linux查看系统类型
  • Sqli-labs less-27
  • Oracle 19C VIP跑到了PUBLIC IP上?
  • 学SQL第一天
  • 【C++】- STL之vector模拟实现
  • wifi、热点密码破解 - python
  • 8-基于双TMS320C6678 + XC7K420T的6U CPCI Express高速数据处理平台
  • oracle数据库---基本查询(单表查询、多表查询、子查询、分页查询、oracle内置函数、行列转换、集合运算)
  • 通过docker镜像安装elasticsearch和kibana