python对接印度尼西亚股票数据接口文档

概述

StockTV 提供全面的印度尼西亚股票市场数据接口,覆盖印尼证券交易所(IDX)所有上市公司。支持实时行情、技术分析、公司信息等多种功能。

交易所信息

  • 交易所: 印尼证券交易所 (Indonesia Stock Exchange, IDX)
  • 国家ID : 42 (从文档中马来西亚示例推断,具体需确认)
  • 交易时间: 雅加达时间 09:00-12:00, 13:30-16:00
  • 货币: 印尼盾 (IDR)

核心功能接口

1. 实时行情数据

获取印尼股票列表

http 复制代码
GET /stock/stocks?countryId=42&pageSize=50&page=1&key=您的API_KEY

参数说明:

  • countryId: 印尼国家ID
  • pageSize: 每页数量 (默认10,最大100)
  • page: 页码
  • exchangeId: 交易所ID (可选)

响应示例:

json 复制代码
{
  "code": 200,
  "message": "操作成功",
  "data": {
    "records": [
      {
        "id": 41602,
        "symbol": "BBCA",
        "name": "Bank Central Asia Tbk",
        "last": 9850,
        "chg": 50,
        "chgPct": 0.51,
        "high": 9900,
        "low": 9800,
        "volume": 1241700,
        "open": true,
        "lastPairDecimal": 0,
        "countryNameTranslated": "Indonesia",
        "flag": "ID",
        "exchangeId": 62,
        "time": 1716448222,
        "url": "/equities/bank-central-asia",
        "fundamentalMarketCap": 202470000000000,
        "fundamentalRevenue": "145.22T",
        "performanceDay": 0.51,
        "performanceWeek": 2.34,
        "performanceMonth": 5.67
      }
    ],
    "total": 800,
    "current": 1,
    "pages": 16
  }
}

2. 主要指数数据

获取印尼主要指数

http 复制代码
GET /stock/indices?countryId=42&key=您的API_KEY

包含的主要指数:

  • IDX Composite (IHSG)
  • LQ45 Index
  • Jakarta Islamic Index
  • Kompas100 Index

指数数据示例:

json 复制代码
{
  "code": 200,
  "message": "操作成功",
  "data": [
    {
      "id": 17950,
      "name": "IDX Composite",
      "symbol": "JCI",
      "last": 7298.45,
      "chg": 45.32,
      "chgPct": 0.62,
      "high": 7312.65,
      "low": 7253.43,
      "isOpen": true,
      "flag": "ID",
      "time": 1716458537
    }
  ]
}

3. 个股查询功能

查询特定股票

http 复制代码
GET /stock/queryStocks?symbol=BBCA&key=您的API_KEY

通过PID查询股票

http 复制代码
GET /stock/queryStocks?id=41602&key=您的API_KEY

批量查询多个股票

http 复制代码
GET /stock/stocksByPids?key=您的API_KEY&pids=41602,41603,41604

热门印尼股票代码:

  • BBCA: Bank Central Asia
  • BBRI: Bank Rakyat Indonesia
  • BMRI: Bank Mandiri
  • TLKM: Telkom Indonesia
  • ASII: Astra International

4. K线数据(技术分析)

获取股票K线数据

http 复制代码
GET /stock/kline?pid=41602&interval=PT1H&key=您的API_KEY

时间间隔参数:

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

K线数据格式:

json 复制代码
{
  "time": 1719818400000,
  "open": 9800,
  "high": 9850,
  "low": 9780,
  "close": 9850,
  "volume": 1250000,
  "vo": 12250000000
}

5. 涨跌排行榜

获取印尼市场排行榜

http 复制代码
GET /stock/updownList?countryId=42&type=1&key=您的API_KEY

排行榜类型:

  • type=1: 涨幅榜
  • type=2: 跌幅榜
  • type=3: 成交额榜
  • type=4: 成交量榜

6. 公司基本信息

获取印尼上市公司信息

http 复制代码
GET /stock/companies?countryId=42&pageSize=20&page=1&key=您的API_KEY

公司信息示例:

json 复制代码
{
  "code": 200,
  "message": "操作成功",
  "data": {
    "records": [
      {
        "companyName": "Bank Central Asia Tbk Company Profile",
        "description": "Bank Central Asia Tbk provides banking products and services in Indonesia and internationally. The company operates through Network and Transaction Banking segments...",
        "industry": "Banking",
        "sector": "Financials",
        "employeeCount": 25643,
        "market": "Indonesia",
        "countryId": 42,
        "url": "/equities/bank-central-asia",
        "id": 101
      }
    ],
    "total": 800,
    "current": 1,
    "pages": 40
  }
}

7. 技术指标数据

包含的技术指标:

  • technicalDay: 日线技术指标
  • technicalHour: 小时线技术指标
  • technicalWeek: 周线技术指标
  • technicalMonth: 月线技术指标

技术指标值:

  • strong_buy: 强烈买入
  • buy: 买入
  • neutral: 中性
  • sell: 卖出
  • strong_sell: 强烈卖出

8. 基本面数据

包含的基本面指标:

  • fundamentalBeta: Beta值
  • fundamentalMarketCap: 市值 (印尼盾)
  • fundamentalRevenue: 收入
  • fundamentalRatio: 基本面比率
  • performanceDay: 当日表现
  • performanceWeek: 周表现
  • performanceMonth: 月表现
  • performanceYtd: 年初至今表现

9. WebSocket 实时数据

连接WebSocket

javascript 复制代码
const wsUri = "wss://ws-api.stocktv.top/connect?key=您的API_KEY";
const websocket = new WebSocket(wsUri);

实时数据格式

json 复制代码
{
  "pid": "41602",
  "last_numeric": "9850",
  "bid": "9845",
  "ask": "9855",
  "high": "9900",
  "low": "9800",
  "last_close": "9800",
  "pc": "50",
  "pcp": "0.51",
  "turnover_numeric": "1241700",
  "time": "15:30:25",
  "timestamp": "1717728251",
  "type": 1
}

印尼市场特色

1. 行业分类

  • 金融业: 银行、保险、金融服务
  • 基础材料: 矿业、种植业
  • 消费品: 食品饮料、烟草
  • 基础设施: 电信、运输、公用事业
  • 房地产: 房地产投资信托

2. 主要板块

  • LQ45: 流动性最强的45只股票
  • KOMPAS100: 市值最大的100家公司
  • BISNIS-27: 商业27指数
  • PEFINDO25: 债券相关股票指数

3. 交易特点

  • 以手为单位交易,1手通常为100股
  • 价格变动最小单位为1印尼盾
  • 有涨跌幅限制机制
  • 支持盘后交易

使用示例

获取LQ45成分股

http 复制代码
GET /stock/stocks?countryId=42&pageSize=45&key=您的API_KEY

监控银行板块

http 复制代码
GET /stock/queryStocks?symbol=BBCA,BBRI,BMRI,BNGA&key=您的API_KEY

获取实时指数数据

http 复制代码
GET /stock/indicesById?id=17950&key=您的API_KEY

数据更新频率

  • 实时行情: 秒级更新
  • K线数据: 按选择间隔实时更新
  • 指数数据: 实时更新
  • 公司信息: 每日更新
  • 基本面数据: 实时更新

错误处理

json 复制代码
{
  "code": 400,
  "message": "参数错误",
  "data": null
}

常见错误代码:

  • 200: 操作成功
  • 400: 参数错误
  • 401: API Key无效
  • 404: 数据不存在
  • 500: 服务器内部错误

最佳实践

  1. 批量查询 : 使用stocksByPids接口批量获取LQ45成分股数据
  2. WebSocket连接: 对于实时监控使用WebSocket连接
  3. 本地缓存: 对公司信息等静态数据实施缓存
  4. 错误重试: 实现适当的错误重试机制
  5. 数据格式化: 注意印尼盾金额的格式化显示

注意事项

  1. 货币单位: 所有价格均为印尼盾,注意数值较大时的显示处理
  2. 交易时间: 注意雅加达时区与本地时区的转换
  3. 数据精度: 价格精确到印尼盾,成交量精确到股
  4. 行业分类: 印尼有独特的行业分类标准,需注意映射

本文档基于 StockTV API 生成,具体接口参数以最新官方文档为准。印尼国家ID需要向官方确认正确数值。

相关推荐
SimonKing3 小时前
「String到Date转换失败」:深挖@RequestBody的日期坑
java·后端·程序员
渣哥4 小时前
Lazy能否有效解决循环依赖?答案比你想的复杂
javascript·后端·面试
qq_12498707534 小时前
基于Spring Boot的网上招聘服务系统(源码+论文+部署+安装)
java·spring boot·后端·spring·计算机外设
IT_陈寒5 小时前
Java性能调优实战:7个让GC效率提升50%的关键参数设置
前端·人工智能·后端
Apifox5 小时前
如何在 Apifox 中通过 AI 一键生成几十个测试用例?
前端·后端·ai编程
用户298698530145 小时前
Java高效读取CSV文件的方法与分步实例
java·后端
一根甜苦瓜5 小时前
Go语言Slice的一道骚题
开发语言·后端·golang
uhakadotcom5 小时前
coze的AsyncTokenAuth和coze的TokenAuth有哪些使用的差异?
后端·面试·github
NPE~5 小时前
[手写系列]Go手写db — — 第五版(实现数据库操作模块)
开发语言·数据库·后端·golang·教程·手写系列·手写数据库