印度、马来股票K线接口与实时数据对接文档

概述

本文档旨在为开发者提供关于如何使用StockTV API获取特定股票或指数的K线数据(即OHLCV数据,包括开盘价、最高价、最低价、收盘价以及成交量),以及如何通过WebSocket (WS) 获取实时市场数据的详细指南。通过本文档,您将了解到如何构造请求URL,解析返回的数据,以及一些实用的应用场景示例。

K线接口说明

请求方法

  • GET

请求URL

https://api.stocktv.top/stock/kline?pid=股票id&interval=TIME_INTERVAL&key=YOUR_API_KEY
参数说明
  • symbol: 股票代码或指数符号。
  • interval: 时间间隔,如1min, 5min, 30min, 1day等。
  • key: 您的API Key。

返回数据格式

所有响应数据均为JSON格式,包含以下字段:

  • code: 状态码,200表示成功。
  • message: 状态信息。
  • data: 数据数组,每个元素代表一个时间点的K线数据。
{
    "code": 200,
    "message": "操作成功",
    "data": [
        {
            "time": 1719818400000, // 时间戳
            "open": 239.42, // 开盘价格
            "high": 239.6, // 最高价
            "low": 239.42, // 最低价
            "close": 239.6, // 收盘价
            "volume": 0, // 成交量
            "vo": 0 // 成交额
        },
        ...
    ]
}

WebSocket 实时数据

特性概述

除了传统的REST API外,StockTV还支持通过WebSocket进行实时数据推送。这种方式特别适合需要即时响应市场变化的应用场景。WebSocket连接提供的数据是实时的,并且没有访问次数限制,非常适合需要持续监控市场价格动态的用户。

WebSocket返回数据格式

WebSocket返回的数据格式如下所示:

{
    "ask": "0.680", // 卖单价
    "bid": "0.675", // 买单价
    "high": "0.680", // 最高价
    "last_close": "0.680", // 前收盘价
    "last_dir": "greenBg", // 最后交易方向
    "last_numeric": "0.68", // 最终成交价(当前最新价)
    "low": "0.650", // 最低价
    "message": "pid-992844", // 产品
    "pc": "0.000", // 涨跌额
    "pc_col": "blackFont", // 价格变化颜色
    "pcp": "0.00", // 涨跌幅 暂时需要拼接%
    "pid": "992844", // 产品pid
    "time": "02:44:11", // 交易时间
    "timestamp": "1717728251", // 时间戳
    "turnover_numeric": "3672800", // 成交额数值
    "type": 1 // 类型 1股票 2指数
}

使用步骤

  1. 获取API Key: 首先,请联系StockTV团队以获取您的专属API Key。

  2. 建立WebSocket连接: 使用您的API Key建立到StockTV WebSocket服务器的连接。具体URL和参数请参考官方文档或直接咨询StockTV团队。

  3. 接收并处理实时数据: 连接成功后,您将开始接收实时市场数据。根据您的应用需求解析这些数据,并据此作出相应的业务逻辑处理。

示例代码

以下是Python中使用websockets库接收WebSocket实时数据的一个简单示例:

import asyncio
import websockets

async def listen():
    uri = "wss://ws-api.stocktv.top/connect?key=YOUR_API_KEY"  # 请替换为实际的WebSocket URL和Key
    async with websockets.connect(uri) as websocket:
        while True:
            response = await websocket.recv()
            data = json.loads(response)
            print(f"卖单价: {data['ask']}, 买单价: {data['bid']}, 最新价: {data['last_numeric']}")

asyncio.get_event_loop().run_until_complete(listen())

应用场景

无论是进行技术分析、数据可视化还是构建实时报价系统,StockTV提供的K线接口和WebSocket实时数据都能为您提供强有力的支持。希望本文档能帮助您更好地理解和利用StockTV的服务,为您的金融分析或应用开发带来便利。

你可能感兴趣的:(数据分析,金融,python3.11,数据库)