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需要向官方确认正确数值。

相关推荐
间彧1 小时前
Kubernetes的Pod与Docker Compose中的服务在概念上有何异同?
后端
间彧2 小时前
从开发到生产,如何将Docker Compose项目平滑迁移到Kubernetes?
后端
间彧2 小时前
如何结合CI/CD流水线自动选择正确的Docker Compose配置?
后端
间彧2 小时前
在多环境(开发、测试、生产)下,如何管理不同的Docker Compose配置?
后端
间彧2 小时前
如何为Docker Compose中的服务配置健康检查,确保服务真正可用?
后端
间彧2 小时前
Docker Compose和Kubernetes在编排服务时有哪些核心区别?
后端
间彧2 小时前
如何在实际项目中集成Arthas Tunnel Server实现Kubernetes集群的远程诊断?
后端
brzhang2 小时前
读懂 MiniMax Agent 的设计逻辑,然后我复刻了一个MiniMax Agent
前端·后端·架构
草明3 小时前
Go 的 IO 多路复用
开发语言·后端·golang
蓝-萧3 小时前
Plugin ‘mysql_native_password‘ is not loaded`
java·后端