获取日本股票数据API:JPY、PSB市场对接完全指南

163 阅读6分钟

获取日本股票数据API:JPY、PSB市场对接完全指南

本文提供日本股票市场(东京证券交易所等)的完整API对接方案,包含实时行情、历史数据、公司信息等接口

概述

本文介绍了如何通过API接口获取日本证券交易所(包括东京证券交易所、大阪交易所等)的股票数据。该API支持获取实时行情、历史K线、公司基本信息、市场新闻等多种数据,覆盖日本股市的主要上市股票。

核心功能特性

  • ✅ ​​实时行情数据​​ - 获取最新股价、涨跌幅、成交量等信息
  • ✅ ​​历史K线数据​​ - 支持多时间粒度(5分钟、15分钟、1小时、日线等)
  • ✅ ​​市场指数数据​​ - 获取日经225指数等重要指数行情
  • ✅ ​​公司基本信息​​ - 查询日本上市公司详细信息和财务数据
  • ✅ ​​实时新闻资讯​​ - 获取与日本市场相关的财经新闻
  • ✅ ​​WebSocket实时推送​​ - 支持实时行情推送

API接口详情

1. 获取日本市场股票列表

​接口地址​​: GET /stock/stocks​请求参数​​:

GET https://api.stocktv.top/stock/stocks?countryId=14&pageSize=10&page=1&key=您的API密钥

​参数说明​​:

  • countryId: 国家ID,日本为14
  • pageSize: 每页显示数量,默认10
  • page: 页码,默认1
  • key: API访问密钥

​响应示例​​:

{
  "code": 200,
  "message": "操作成功",
  "data": {
    "records": [
      {
        "id": 7310,
        "name": "Toyota Motor Corp",
        "symbol": "7203",
        "last": 8350,
        "chg": 120,
        "chgPct": 1.46,
        "high": 8400,
        "low": 8250,
        "volume": 1241700,
        "avgVolume": 441318,
        "countryNameTranslated": "Japan",
        "flag": "JP",
        "open": true,
        "time": 1716448222
      }
    ],
    "total": 3800,
    "size": 10,
    "current": 1,
    "pages": 380
  }
}

2. 查询特定股票信息

​接口地址​​: GET /stock/queryStocks​请求参数​​:

GET https://api.stocktv.top/stock/queryStocks?id=7310&key=您的API密钥

​参数说明​​:

  • id: 股票PID(可通过市场列表接口获取)
  • name: 股票名称(可选)
  • symbol: 股票代码(可选)
  • key: API访问密钥

3. 获取日本市场指数

​接口地址​​: GET /stock/indices​请求参数​​:

GET https://api.stocktv.top/stock/indices?countryId=14&key=您的API密钥

​响应示例​​:

{
  "code": 200,
  "message": "操作成功",
  "data": [
    {
      "id": 17940,
      "name": "Nikkei 225",
      "symbol": "N225",
      "last": 38787.65,
      "chg": 369.85,
      "chgPct": 1.64,
      "high": 38993.6,
      "low": 38577.45,
      "isOpen": true,
      "flag": "JP",
      "time": 1716458537
    }
  ]
}

4. 获取K线数据

​接口地址​​: GET /stock/kline​请求参数​​:

GET https://api.stocktv.top/stock/kline?pid=7310&interval=PT15M&key=您的API密钥

​时间间隔参数​​:

  • PT5M: 5分钟
  • PT15M: 15分钟
  • PT1H: 1小时
  • P1D: 1天
  • P1W: 1周
  • P1M: 1月

5. 获取日本市场新闻

​接口地址​​: GET /stock/news​请求参数​​:

GET https://api.stocktv.top/stock/news?pageSize=5&page=1&key=您的API密钥

6. WebSocket实时行情推送

​连接地址​​:

wss://ws-api.stocktv.top/connect?key=您的API密钥

​数据格式​​:

{
  "pid": "7310",
  "last_numeric": "8350",
  "last_dir": "greenBg",
  "bid": "8345",
  "ask": "8355",
  "high": "8400",
  "low": "8250",
  "last_close": "8230",
  "pc": "120",
  "pcp": "1.46",
  "time": "14:30:25",
  "timestamp": "1717728251",
  "turnover_numeric": "1241700",
  "type": 1
}

使用示例

Python请求示例

import requests
import json

# 配置API密钥
API_KEY = "您的API密钥"
BASE_URL = "https://api.stocktv.top"

# 获取日本股票列表
def get_japan_stocks(page=1, page_size=10):
    url = f"{BASE_URL}/stock/stocks"
    params = {
        "countryId": 14,  # 日本国家ID
        "page": page,
        "pageSize": page_size,
        "key": API_KEY
    }
    
    response = requests.get(url, params=params)
    if response.status_code == 200:
        return response.json()
    else:
        return None

# 获取日经225指数
def get_nikkei_index():
    url = f"{BASE_URL}/stock/indices"
    params = {
        "countryId": 14,
        "key": API_KEY
    }
    
    response = requests.get(url, params=params)
    if response.status_code == 200:
        data = response.json()
        # 查找日经225指数
        for index in data["data"]:
            if index["symbol"] == "N225":
                return index
    return None

# 示例使用
if __name__ == "__main__":
    # 获取第一页的日本股票
    stocks = get_japan_stocks(1, 10)
    if stocks and stocks["code"] == 200:
        print("获取到日本股票数据:")
        for stock in stocks["data"]["records"]:
            print(f"{stock['symbol']} - {stock['name']}: {stock['last']} JPY")
    
    # 获取日经225指数
    nikkei = get_nikkei_index()
    if nikkei:
        print(f"\n日经225指数: {nikkei['last']} ({nikkei['chgPct']}%)")

JavaScript使用示例

// 使用Fetch API获取数据
const API_KEY = '您的API密钥';
const BASE_URL = 'https://api.stocktv.top';

// 获取日本股票列表
async function getJapanStocks(page = 1, pageSize = 10) {
  const url = `${BASE_URL}/stock/stocks?countryId=14&page=${page}&pageSize=${pageSize}&key=${API_KEY}`;
  
  try {
    const response = await fetch(url);
    const data = await response.json();
    return data;
  } catch (error) {
    console.error('获取数据失败:', error);
    return null;
  }
}

// 获取特定股票信息
async function getStockInfo(pid) {
  const url = `${BASE_URL}/stock/queryStocks?id=${pid}&key=${API_KEY}`;
  
  try {
    const response = await fetch(url);
    const data = await response.json();
    return data;
  } catch (error) {
    console.error('获取股票信息失败:', error);
    return null;
  }
}

// 使用示例
getJapanStocks(1, 10)
  .then(data => {
    if (data && data.code === 200) {
      console.log('日本股票数据:', data.data.records);
    }
  });

日本市场特色数据

主要指数

  • ​日经225指数 (N225)​​ - 日本最具代表性的股票指数
  • ​TOPIX指数​​ - 东京股价指数,覆盖所有东证一部上市公司
  • ​JPX日经400指数​​ - 注重投资回报的股价指数

交易时间

日本股市交易时间(日本标准时间):

  • ​早盘​​: 9:00 - 11:30
  • ​午盘​​: 12:30 - 15:00
  • ​盘后交易​​: 15:00 - 15:30

主要行业板块

  • 汽车制造业(丰田、本田、日产等)
  • 电子产品(索尼、松下、任天堂等)
  • 金融业(三菱UFJ、瑞穗金融等)
  • 制造业和工业

注意事项

  1. ​API密钥申请​​:需要联系API提供商获取有效的API密钥
  2. ​日本市场特性​​:注意日本股市的交易时间和假期安排
  3. ​货币单位​​:日本股票价格以日元(JPY)为单位
  4. ​请求频率限制​​:请注意API的请求频率限制
  5. ​数据延迟​​:实时数据可能有微小延迟
  6. ​错误处理​​:添加适当的错误处理机制

常见问题

​Q: 如何区分东京交易所和大阪交易所的股票?​​ A: 可以通过股票代码或交易所ID进行区分,具体需要查看API返回的详细字段。 ​​Q: 是否支持日本REITs数据?​​ A: 是的,API包含日本房地产投资信托(REITs)的数据。 ​​Q: 数据更新频率是多少?​​ A: 实时数据通常每1-5秒更新一次,具体取决于API供应商的设置。 ​​Q: 是否提供历史财务数据?​​ A: 是的,可以通过公司信息接口获取财务数据。

总结

通过本文介绍的API接口,开发者可以轻松获取日本股票市场的实时行情、历史数据和其他相关信息。这些接口设计简单易懂,支持多种编程语言调用,适合用于开发股票分析应用、投资决策工具或金融数据平台。 日本作为全球重要金融市场之一,其股票数据对于全球投资者具有重要参考价值。无论是个人投资者还是金融机构,都可以利用这些API构建专业的日本股市分析系统。


​版权声明​​:本文涉及API接口由相应服务商提供,使用前请确保已获得合法授权。本文仅做技术交流用途,不构成任何投资建议。