支持多国股票数据源API对接实战:印度、泰国、韩国等市场实时获取指南


支持多国股票数据源API对接实战:印度、泰国、韩国等市场实时获取指南


一、API服务商选择与核心优势

1. StockTV多国数据支持

  • 覆盖国家:支持印度(NSE/BSE)、韩国(KRX)、马来西亚(MYX)、日本(JPX)、印尼(IDX)等10+国家交易所数据。
  • 核心功能
    • 实时数据推送:通过WebSocket实现毫秒级延迟的行情更新,支持股票、指数、期货等数据。
    • 无调用限制:针对高频交易场景设计,支持7×24小时持续订阅。
    • 免费测试Key:开发者可通过官网申请,无企业认证门槛。

2. 其他API补充方案

  • Alpha Vantage:覆盖全球股市(如泰国SET指数需验证),提供免费基础接口。
  • Yahoo Finance:通过yfinance库获取多国历史数据(适合非实时场景)。

二、StockTV多国数据对接实战(以印度、韩国为例)

1. 获取API密钥

  1. 访问 StockTV官网 注册账号。
  2. 联系客服获取免费API Key(格式如MY4b781f618e3f43c4b055f25fa61941ad)。

2. WebSocket实时数据订阅

import websocket
import json

API_KEY = "YOUR_API_KEY"
WS_URL = f"wss://ws-api.stocktv.top/connect?key={API_KEY}"

def on_message(ws, message):
    data = json.loads(message)
    if data.get('type') == 'stock':
        print(f"[{data['symbol']}] 价格: {data['last']} 涨跌幅: {data['pcp']}%")

def on_open(ws):
    # 订阅多国标的:印度RELIANCE、韩国三星电子(005930.KS)
    subscribe_msg = json.dumps({
        "action": "subscribe",
        "symbols": ["RELIANCE", "005930.KS"]
    })
    ws.send(subscribe_msg)

# 启动WebSocket连接
ws = websocket.WebSocketApp(WS_URL, on_message=on_message, on_open=on_open)
ws.run_forever()

3. RESTful API获取市场列表

import requests

def get_stock_list(country_id):
    url = "https://api.stocktv.top/stock/stocks"
    params = {
        "key": API_KEY,
        "countryId": country_id,  # 14=印度, 7=韩国
        "pageSize": 10
    }
    response = requests.get(url, params=params)
    return response.json()['data']['records']

# 获取印度股票列表
indian_stocks = get_stock_list(14)
print("印度市场热门股票:", [stock['symbol'] for stock in indian_stocks])

三、多国数据适配与参数说明

1. 国家代码映射表

国家参数countryId交易所代码示例
印度14RELIANCE(NSE)
韩国7005930.KS(KRX)
马来西亚42PETRONAS(MYX)
印尼9BBCA.JK(IDX)

2. 核心数据字段

  • 实时行情last(最新价)、pcp(涨跌幅)、volume(成交量)。
  • K线数据:通过/stock/kline接口获取OHLCV数据,支持分钟级至月线周期。

四、扩展:泰国股票数据获取方案

1. Alpha Vantage对接示例

import requests

API_KEY = "YOUR_ALPHA_VANTAGE_KEY"
symbol = "SET.BK"  # 泰国SET指数

url = "https://www.alphavantage.co/query"
params = {
    "function": "GLOBAL_QUOTE",
    "symbol": symbol,
    "apikey": API_KEY
}
response = requests.get(url, params=params)
data = response.json()
print(f"泰国SET指数实时价格: {data['Global Quote']['05. price']}")

2. 注意事项

  • 数据覆盖验证:需确认API是否支持特定国家(如泰国SET交易所)。
  • 合规性:商业用途需遵守当地金融数据使用规定。

五、生产环境优化建议

  1. 连接稳定性
    • 实现WebSocket自动重连机制(断线后5秒重试)。
  2. 异步处理
    • 使用asyncio库管理高频数据流,避免阻塞主线程。
  3. 数据存储
    • 结合MongoDB或InfluxDB持久化实时数据,便于后续分析。

注意事项

  • 免费Key适用于测试环境,企业级需求需购买商业授权。
  • 实时数据仅在交易时段更新(如印度NSE交易时间为IST 9:15-15:30)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值