如何获取马来西亚股票数据API完整版:从注册到Python实战
如何获取马来西亚股票数据API完整版:从注册到Python实战
前言
随着全球化投资需求的增长,获取多国股票数据成为开发者与投资者的刚需。StockTV提供了覆盖马来西亚、印度、美国、新加坡等全球多国的股票、外汇、期货及加密货币数据接口。本文将手把手教你如何通过StockTV API获取马来西亚股票数据,并以Python代码实战获取K线数据。
一、准备工作:获取API Key
1. 注册并申请API Key
- 访问官网:打开 StockTV API控制台,注册账号并登录。
- 获取Key:在控制台中创建新项目,系统会自动生成唯一的
API Key,保存好此密钥(如key=IN8888Admin)。
2. 接口权限说明
- 免费版支持实时行情、历史K线、市场列表等基础功能。
- 企业版可定制高频数据、WebSocket实时推送等高级功能。
二、接口核心功能解析
根据Postman集合文件,马来西亚股票数据主要通过以下接口获取:
| 接口名称 | 功能描述 | 示例URL |
|---|---|---|
| 市场列表 | 筛选马来西亚股票 | /stock/stocks?countryId=42&key=<YOUR_KEY> |
| 查询K线数据 | 按时间粒度获取历史数据 | /stock/kline?pid=7310&interval=PT15M&key=<YOUR_KEY> |
| 实时行情(WebSocket) | 推送最新价格 | wss://ws-api.stocktv.top/connect?key=<YOUR_KEY> |
三、Python实战:获取马来西亚股票K线数据
1. 安装依赖库
pip install requests pandas matplotlib
2. 获取马来西亚股票列表
import requests
# 配置API参数
API_KEY = "IN8888Admin" # 替换为你的Key
url = "https://api.stocktv.top/stock/stocks"
params = {
"countryId": 42, # 马来西亚国家ID
"pageSize": 10,
"page": 1,
"key": API_KEY
}
# 发送请求
response = requests.get(url, params=params)
data = response.json()
# 提取股票PID(示例取第一条)
stock_pid = data["data"]["records"][0]["id"]
print("获取股票PID:", stock_pid)
3. 获取K线数据并可视化
import pandas as pd
import matplotlib.pyplot as plt
def fetch_kline(pid, interval="PT15M"):
url = "https://api.stocktv.top/stock/kline"
params = {
"pid": pid,
"interval": interval, # 支持PT5M, PT15M, PT1H等
"key": API_KEY
}
response = requests.get(url, params=params)
kline_data = response.json()["data"]
# 转换为DataFrame
df = pd.DataFrame(kline_data)
df["time"] = pd.to_datetime(df["time"], unit="ms") # 转换时间戳
df.set_index("time", inplace=True)
return df
# 获取15分钟级K线
df = fetch_kline(stock_pid, "PT15M")
# 绘制K线图
plt.figure(figsize=(12,6))
plt.plot(df["close"], label="Close Price")
plt.title("Malaysia Stock K-line (15min)")
plt.xlabel("Time")
plt.ylabel("Price")
plt.legend()
plt.show()
输出结果示例:
open high low close volume vo
time
2024-08-20 239.42 239.60 239.42 239.60 0 0
2024-08-20 239.60 239.60 239.55 239.55 0 0
...
四、进阶功能:WebSocket实时行情
import websocket
import json
def on_message(ws, message):
data = json.loads(message)
print(f"实时行情: {data['last_numeric']} (更新时间: {data['time']})")
ws_url = f"wss://ws-api.stocktv.top/connect?key={API_KEY}"
ws = websocket.WebSocketApp(ws_url, on_message=on_message)
ws.run_forever()
结语
通过StockTV API,开发者可快速接入马来西亚等全球市场的股票数据。本文提供的Python代码可直接集成到量化交易系统或数据仪表盘中。如需获取完整代码或企业级支持,可联系StockTV官方。
立即行动:点击注册,开启你的全球数据之旅!

浙公网安备 33010602011771号