印尼股票 API 入門指南:IDX 即時行情與歷史數據

印尼作為東南亞最大經濟體,其證券交易所(IDX)匯聚了中亞銀行(BBCA)、印尼電信(TLKM)、人民銀行(BBRI)等優質藍籌股,已成為全球量化交易者與金融開發者關注的焦點。然而,如何快速、穩定地獲取印尼股票數據一直是開發難點——免費介面延遲高、歷史數據不完整、文件品質參差不齊。
本文將帶您使用 iTick API 在 30 分鐘內快速接入印尼股票市場,獲取即時行情、歷史 K 線及 WebSocket 即時推送,全程僅需幾行 Python 程式碼,免費方案即可開始。
為什麼 iTick 是印尼股票 API 的最佳選擇?
- 全面覆蓋:支援印尼證券交易所(IDX)全部股票,透過
region=ID一鍵切換 - 多協議支援:REST 適合單次查詢,WebSocket 滿足即時推送,延遲 <50ms
- 歷史數據深度:超過 30 年 K 線資料,支援分鐘線到月線,滿足完整回測需求
- 免費方案友好:基礎行情無限次呼叫,非常適合個人開發者
一、5 分鐘极速接入:獲取即時行情
1. 註冊並取得 API Token
前往 iTick 官網 註冊,約 30 秒取得您的專屬 Token。
2. 安裝依賴套件
pip install requests
3. 第一行程式碼:取得中亞銀行(BBCA)即時報價
import requests
API_KEY = "your_token_here"
url = "https://api.itick.org/stock/quote"
params = {"region": "ID", "code": "BBCA"}
headers = {"token": API_KEY}
resp = requests.get(url, params=params, headers=headers).json()
if resp["code"] == 0:
data = resp["data"]
print(f"{data['n']} 最新價: {data['ld']} IDR, 漲跌幅: {data['chp']}%")
else:
print("錯誤:", resp["msg"])
輸出範例:
PT Bank Central Asia Tbk 最新價: 10250 IDR, 漲跌幅: 0.49%
就這麼簡單!您現在已經成功取得印尼股票即時數據。
二、核心功能速覽
2.1 獲取歷史 K 線(用於回測)
def get_kline(symbol, interval="8", limit=100):
params = {"region": "ID", "code": symbol, "interval": interval, "limit": limit}
resp = requests.get("https://api.itick.org/stock/kline", headers=headers, params=params).json()
return resp.get("data", [])
# 取得印尼電信最近 10 個交易日數據
kline_data = get_kline("TLKM", limit=10)
print(kline_data[-1]) # 最新一條 K 線
支援週期:8(日線)、9(週線)、10(月線)等多種選擇。
2.2 WebSocket 即時推送(低延遲)
import websocket
import json
def on_message(ws, message):
data = json.loads(message)
if "data" in data:
md = data["data"]
if md["type"] == "quote":
print(f"{md['s']} 最新: {md['ld']} IDR")
ws = websocket.WebSocketApp("wss://api.itick.org/stock",
header={"token": API_KEY},
on_open=lambda ws: ws.send(json.dumps({
"ac": "subscribe",
"params": "BBCA$ID,TLKM$ID",
"types": "quote"
})),
on_message=on_message)
ws.run_forever()
訂閱後即可即時收到報價更新,延遲 <50ms。
三、印尼市場速查表(開發必備)
| 項目 | 說明 |
|---|---|
| 市場代碼 | region=ID(REST)或 $ID(WebSocket) |
| 主流股票 | BBCA(中亞銀行)、TLKM(印尼電信)、BBRI(人民銀行)、ASII(阿斯特拉)、GOTO(科技) |
| 指數代碼 | JKSE(雅加達綜合指數)、LQ45(藍籌股指數) |
| 交易時間 | 雅加達時間 09:00–16:00(連續交易,無午休),北京時間相同 |
| 貨幣單位 | 印尼盾(IDR),注意數值較大 |
四、為什麼開發者都選擇 iTick?
| 場景 | 免費 API 痛點 | iTick 優勢 |
|---|---|---|
| 量化回測 | 僅 1–2 年資料 | 30+ 年歷史 K 線,支援分鐘線 |
| 即時交易 | 15 分鐘延遲 | WebSocket 推送 <50ms |
| 應用開發 | 僅 REST 介面 | REST + WebSocket 雙協議 |
| 成本控制 | 免費版限制多 | 免費方案基礎行情無限呼叫 |
五、總結:立即開始您的印尼量化之旅
透過本文,您已學會:
- ✅ 使用 REST API 獲取印尼股票即時行情與歷史數據
- ✅ 透過 WebSocket 訂閱低延遲即時推送
- ✅ 掌握印尼市場核心參數與慣例
iTick 提供穩定、全面、免費的印尼股票數據介面,無論您是開發量化策略、金融應用程式,還是進行學術研究,都能快速上手。
👉 立即前往 iTick 官網 註冊,開啟您的印尼股市數據之旅!
延伸閱讀: