Skip to main content

建立連線

建立行情連線

以下範例程式碼示範如何同時建立 5 條行情 WebSocket 連線。

info

一般僅 WebSocket 需要同時啟用多條連線,若使用 Web API 則建議使用單一連線方便管理。 Web API 速率限制為所有連線共用;WebSocket 每條連線各可訂閱 200 檔標的。

from fubon_neo.sdk import FubonSDK

sdk = FubonSDK()
accounts = sdk.login("Your ID", "Your password" ,"Your cert path" ,"Your cert password") # 需登入後,才能取得行情權限

websockets = [] # 不同連線 WebSocket 介面列表

for _ in range(5): # 建立 5 條連線
sdk.init_realtime() # 啟動一條行情連線
ws = sdk.marketdata.websocket_client.stock # WebSocket 介面 (證券)
#ws = sdk.marketdata.websocket_client.futopt # WebSocket 介面 (期貨)

# 將介面置入可用列表中
websockets.append(ws)

# 設定 WebSocket Callback 並開啟連結
for ws in websockets:
## Callback functions 需另外定義 ##
ws.on('message', handle_message) # 註冊行情資料 callback
ws.on("connect", handle_connect) # 註冊連線事件 callback
ws.on("disconnect", handle_disconnect) # 註冊斷線事件 callback
ws.on("error", handle_error) # 註冊錯誤事件 callback

ws.connect() # 啟用連結

# 斷開連線
# for ws in websockets:
# we.disconnect()