【量化分析--获取股票数据实例代码教程18】Python、JavaScript(Node.js)、Java、C#和Ruby五种主流语言的实例代码给大家演示一下如何获取股票解禁限售数据

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

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

在量化分析的世界里,实时且精确的数据接口是成功的关键。经过多次实战检验,我已确认一些数据接口均稳定可靠。现在,我非常愿意将这些珍贵资源分享给量化分析的同仁们,希望能够对你们的研究和工作有所助益。​现在我用Python、JavaScript(Node.js)、Java、C#和Ruby五种主流语言的实例代码给大家演示一下如何获取股票解禁限售数据:

1、python

import requests  
  
url = "http://api.mairui.club/hscp/jjxs/000001/b997d4403688d5e66a"  
response = requests.get(url)  
data = response.json()  
print(data)

2、JavaScript (Node.js)

const axios = require('axios');  
  
const url = "http://api.mairui.club/hscp/jjxs/000001/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/hscp/jjxs/000001/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/hscp/jjxs/000001/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/hscp/jjxs/000001/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

返回的数据:

[{"rdate":"2018-05-21","ramount":25224.8,"rprice":27.2932,"batch":15,"pdate":"2015-05-20"},{"rdate":"2017-01-09","ramount":228680.93,"rprice":209.7004,"batch":14,"pdate":"2014-01-08"},{"rdate":"2014-09-01","ramount":314560.64,"rprice":319.279,"batch":12,"pdate":"2011-07-29"},{"rdate":"2013-11-12","ramount":60732.8,"rprice":80.9568,"batch":11,"pdate":"2010-09-16"},{"rdate":"2010-06-28","ramount":18125.57,"rprice":33.5867,"batch":10,"pdate":"2008-03-20"},{"rdate":"2009-10-15","ramount":35.74,"rprice":0.0808,"batch":8,"pdate":"2009-10-14"},{"rdate":"2009-06-22","ramount":13908.07,"rprice":31.4322,"batch":7,"pdate":"2008-03-20"},{"rdate":"2008-06-26","ramount":28972.91,"rprice":65.4788,"batch":4,"pdate":"2008-06-25"}]

解禁限售

API接口:http://api.mairui.club/hscp/jjxs/股票代码(如000001)/b997d4403688d5e66a

备用接口:http://api1.mairui.club/hscp/jjxs/股票代码(如000001)/b997d4403688d5e66a

接口说明:根据《股票列表》得到的股票代码获取上市公司的解禁限售情况。按解禁日期倒序。

数据更新:每天15:30开始更新,次日凌晨3点前完成

字段名称数据类型字段说明
rdatestring解禁日期yyyy-MM-dd
ramountnumber解禁数量(万股)
rpricenumber解禁股流通市值(亿元)
batchnumber上市批次
pdatestring公告日期yyyy-MM-dd

【重要提示】

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值