如今,量化分析在股市领域风靡一时,股票数据用对比"突出"差异化。针对用户最关心的维度,用具体数据或场景对比,数据质量覆盖,易用性与支持。能帮读者快速锁定适配自身需求的接口。
我们聚焦最实用的场景,并通过Python、JavaScript(Node.js)、Java、C#、Ruby等五种主流语言,逐一演示如何高效获取各类股票数据,为大家投资决策提供更全面的参考。
先把数据接口的地址给大家,大家可以直接点击地址或复制到地址栏打开,马上就可以验证接口的有效性
沪深A股实时交易数据API接口:http://api.momaapi.com/hsstock/real/time/股票代码/证书您的Token
接口URL中,000001是股票代码,是请求证书,TEST-API-TOKEN-MOMA-836089C22111这个是官方提供的测试证书只能测试000001的数据
1、python
python
import requests
url = "http://api.momaapi.com/hsstock/real/time/000001/TEST-API-TOKEN-MOMA-836089C22111"
response = requests.get(url)
data = response.json()
print(data)
2、JavaScript (Node.js)
javascript
const axios = require('axios');
const url = "http://api.momaapi.com/hsstock/real/time/000001/TEST-API-TOKEN-MOMA-836089C22111";
axios.get(url)
.then(response => {
console.log(response.data);
})
.catch(error => {
console.log(error);
});
3、Java
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.momaapi.com/hsstock/real/time/000001/TEST-API-TOKEN-MOMA-836089C22111"))
.build();
try {
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
4、C#
csharp
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.momaapi.com/hsstock/real/time/000001/TEST-API-TOKEN-MOMA-836089C22111";
HttpResponseMessage response = await client.GetAsync(url);
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseBody);
}
}
}
5、Ruby
ruby
require 'net/http'
require 'json'
url = URI("http://api.momaapi.com/hsstock/real/time/000001/TEST-API-TOKEN-MOMA-836089C22111")
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
返回数据示例:
json
"pe": 4.61,
"ud": -0.19,
"pc": -1.586,
"zf": 2.0033,
"tr": 0.41,
"pb_ratio": 0.52,
"p": 11.79,
"o": 11.98,
"h": 12.01,
"l": 11.77,
"yc": 11.98,
"cje": 1309217800,
"v": 1103627,
"pv": 110362708,
"tv": 88,
"t": "2025-09-03 14:12:51"
}
返回的数据字段说明:
| 字段名称 | 数据类型 | 字段说明 |
|---|---|---|
| p | number | 最新价 |
| o | number | 开盘价 |
| h | number | 最高价 |
| l | number | 最低价 |
| yc | number | 前收盘价 |
| cje | number | 成交总额 |
| v | number | 成交总量 |
| pv | number | 原始成交总量 |
| ud | float | 涨跌额 |
| pc | float | 涨跌幅 |
| zf | float | 振幅 |
| t | string | 更新时间 |
| pe | number | 市盈率 |
| tr | number | 换手率 |
| pb_ratio | number | 市净率 |
| tv | number | 成交量 |