1. 接口概述
StockTV提供马来西亚股票市场(Bursa Malaysia)的实时行情数据接口,包括:
- 马来西亚主板和创业板股票实时行情
- 主要指数数据(FBMKLCI等)
- 历史K线数据
- 公司基本信息
- 马棕油期货数据
- 涨跌排行榜
支持HTTP REST API和WebSocket两种接入方式,毫秒级延迟,7×24小时稳定服务。
2. 获取API Key
使用前需联系StockTV获取API Key:
3. 马来西亚市场接口列表
3.1 获取马来西亚股票列表
接口地址 GET /stock/stocks
请求参数
参数名 | 必填 | 类型 | 说明 |
---|---|---|---|
countryId | 是 | int | 马来西亚国家ID为42 |
pageSize | 否 | int | 每页数量,默认10 |
page | 否 | int | 页码,默认1 |
key | 是 | string | API密钥 |
请求示例
GET https://api.stocktv.top/stock/stocks?countryId=42&pageSize=10&page=1&key=您的API_KEY
响应示例
{
"code": 200,
"message": "操作成功",
"data": {
"records": [
{
"id": 50123,
"symbol": "MAYBANK",
"name": "Malayan Banking Berhad",
"last": 8.95,
"chg": 0.05,
"chgPct": 0.56,
"high": 9.02,
"low": 8.90,
"volume": 12548750,
"exchangeId": 62,
"countryId": 42,
"open": true
},
...
],
"total": 980
}
}
3.2 查询特定股票
接口地址 GET /stock/queryStocks
请求参数
参数名 | 必填 | 类型 | 说明 |
---|---|---|---|
id | 否 | int | 股票ID |
symbol | 否 | string | 股票代码如"PBBANK" |
name | 否 | string | 股票名称 |
key | 是 | string | API密钥 |
请求示例
GET https://api.stocktv.top/stock/queryStocks?symbol=PBBANK&key=您的API_KEY
3.3 获取马来西亚指数数据
接口地址 GET /stock/indices
请求参数
参数名 | 必填 | 类型 | 说明 |
---|---|---|---|
countryId | 是 | int | 马来西亚国家ID为42 |
key | 是 | string | API密钥 |
响应示例
{
"code": 200,
"data": [
{
"id": 18452,
"name": "FTSE Bursa Malaysia KLCI",
"symbol": "FBMKLCI",
"last": 1589.45,
"chg": 5.32,
"chgPct": 0.34
},
{
"id": 18453,
"name": "FBM Small Cap",
"symbol": "FBMSMALLCAP",
"last": 12547.23,
"chg": 12.56,
"chgPct": 0.10
}
]
}
3.4 获取马棕油期货数据
接口地址 GET /futures/querySymbol
请求参数
参数名 | 必填 | 类型 | 说明 |
---|---|---|---|
symbol | 是 | string | "FCPO"表示马棕油期货 |
key | 是 | string | API密钥 |
请求示例
GET https://api.stocktv.top/futures/querySymbol?symbol=FCPO&key=您的API_KEY
响应示例
{
"code": 200,
"data": {
"symbol": "FCPO",
"name": "Crude Palm Oil Futures",
"last": 3750.80,
"buy": 3749.00,
"sell": 3750.00,
"high": 3767.00,
"low": 3709.00,
"volume": 80515,
"chg": 46.80,
"chgPct": 1.26
}
}
3.5 WebSocket实时数据
连接地址 wss://ws-api.stocktv.top/connect?key=您的API_KEY
订阅消息格式
{
"action": "subscribe",
"pids": [50123, 18452] // 股票ID和指数ID数组
}
实时推送数据示例
{
"pid": 50123,
"symbol": "MAYBANK",
"last": 8.96,
"chg": 0.01,
"chgPct": 0.11,
"volume": 12548750,
"timestamp": 1725002394
}
4. 示例代码
Python HTTP请求示例
import requests
# 获取马来西亚股票列表
url = "https://api.stocktv.top/stock/stocks"
params = {
"countryId": 42,
"pageSize": 10,
"key": "您的API_KEY"
}
response = requests.get(url, params=params)
print(response.json())
# 获取马棕油期货数据
futures_url = "https://api.stocktv.top/futures/querySymbol"
futures_params = {
"symbol": "FCPO",
"key": "您的API_KEY"
}
futures_data = requests.get(futures_url, params=futures_params).json()
print(futures_data)
JavaScript WebSocket示例
const ws = new WebSocket("wss://ws-api.stocktv.top/connect?key=您的API_KEY");
ws.onopen = () => {
console.log("Connected");
// 订阅MAYBANK股票和KLCI指数
ws.send(JSON.stringify({
action: "subscribe",
pids: [50123, 18452]
}));
};
ws.onmessage = (event) => {
const data = JSON.parse(event.data);
console.log("Received:", data);
};
5. 注意事项
- 所有API请求必须包含有效的key参数
- 马来西亚市场交易时间:MYT 9:00-12:30, 14:30-17:00(周一至周五)
- 马棕油期货交易时间:MYT 9:00-18:00
- 实时数据通过WebSocket推送更高效
- 历史数据可通过K线接口获取
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。