公西颖初 发表于 前天 20:10

如何快速对接印度股票市场数据API?完整开发指南

以下是一篇关于对接印度股票数据API的博客草稿,涵盖了关键接口和实现指南:
StockTV全球金融数据接口 提供覆盖印度、东南亚、欧美等市场的实时股票行情,本文重点讲解印度股票数据的对接流程。
一、准备工作


[*]获取API Key
联系官方Telegram https://t.me/CryptoRzz 申请Key
# 请求示例(需替换为真实Key)
import requests
key = "YOUR_API_KEY"# 联系官方获取
[*]基础参数说明

[*]countryId=14 代表印度市场
[*]exchangeId=46 印度国家交易所(NSE),74孟买交易所(BSE)

二、核心API接口详解

1. 获取印度股票列表

def get_indian_stocks():
    url = "https://api.stocktv.top/stock/stocks"
    params = {
      "countryId": 14,   # 印度
      "pageSize": 100,    # 每页数量
      "page": 1,          # 页码
      "exchangeId": 46,   # NSE交易所
      "key": key
    }
    return requests.get(url, params=params).json()

# 返回字段示例:
"""
{
"id": 41602,             // 股票唯一ID
"symbol": "MDCH",      // 股票代码
"name": "Media Chinese", // 公司名
"last": 0.12,            // 最新价
"chgPct": 0,             // 涨跌幅(%)
"volume": 1241700      // 成交量
}
"""2. 查询指定股票实时行情

def query_stock(stock_id):
    url = "https://api.stocktv.top/stock/queryStocks"
    params = {"id": stock_id, "key": key}
    return requests.get(url, params=params).json()3. 获取印度指数数据

def get_indices():
    url = "https://api.stocktv.top/stock/indices"
    params = {"countryId": 14, "key": key}
    return requests.get(url, params=params).json()

# 包含Nifty 50、BSE SENSEX等指数
"""
{
"symbol": "NSEI",         // 指数代码
"last": 22967.65,         // 最新点位
"chgPct": 1.64            // 涨跌幅(%)
}
"""4. 获取K线数据

支持多种时间粒度:
def get_kline(pid):
    url = "https://api.stocktv.top/stock/kline"
    params = {
      "pid": pid,      # 股票ID
      "interval": "PT15M",# 时间粒度
      "key": key
    }
    # 可选粒度:PT5M(5分钟)/PT1H(1小时)/P1D(日线)
    return requests.get(url, params=params).json()

# K线返回值:
"""
[
{
    "time": 1719818400000,// 时间戳(ms)
    "open": 239.42,         // 开盘价
    "high": 239.6,          // 最高价
    "low": 239.42,          // 最低价
    "close": 239.6,         // 收盘价
    "volume": 0             // 成交量
}
]
"""三、高级功能接口

1. IPO新股日历

def get_ipo_calendar():
    url = "https://api.stocktv.top/stock/getIpo"
    params = {
      "countryId": 14,   # 印度
      "type": 1,          # 1=即将上市 2=已上市
      "key": key
    }
    return requests.get(url, params=params).json()2. 实时涨跌排行榜

def get_top_gainers():
    url = "https://api.stocktv.top/stock/updownList"
    params = {
      "countryId": 14,
      "type": 1,# 1=涨幅榜 2=跌幅榜 3=涨停 4=跌停
      "key": key
    }
    return requests.get(url, params=params).json()四、WebSocket实时推送

// 前端示例
const ws = new WebSocket("wss://ws-api.stocktv.top/connect?key=YOUR_KEY");

ws.onmessage = (event) => {
const data = JSON.parse(event.data);
/* 返回值结构:
{
    "pid": "992844",      // 股票ID
    "last": 0.68,         // 最新价
    "chgPct": 0.00,         // 涨跌幅
    "volume": 3672800       // 成交量
}
*/
};

// 维持心跳
setInterval(() => ws.send("ping"), 30000);五、注意事项

<ol>数据刷新频率:
<ul>REST API:推荐每分钟≤10次请求
WebSocket:实时推送,延迟
页: [1]
查看完整版本: 如何快速对接印度股票市场数据API?完整开发指南