跳轉至

建立 2025-02-24 更新 2026-09-16

自動化與通知

策略跑起來之後,總不能一直盯著螢幕看訊號有沒有出現。自動化的第一步通常不是「自動下單」,而是先做到「自動通知」:讓程式在符合條件時主動傳訊息給你,你再決定要不要動手交易。等流程穩定之後,才考慮進一步串接券商 API 自動下單。

用即時通訊軟體發送提醒

唯客學院早期課程示範過用 LINE Notify 傳送股票訊息(例如均線圖、選股結果)到手機,程式邏輯很單純:算出訊號 → 組出訊息或圖片 → 呼叫 API 送出。

# linenotify.py 的核心邏輯(示意)
import requests

def notify(token, message="", image_path=None):
    headers = {"Authorization": "Bearer " + token}
    payload = {"message": message}
    files = {"imageFile": open(image_path, "rb")} if image_path else None
    return requests.post(
        "https://notify-api.line.me/api/notify",
        headers=headers, params=payload, files=files,
    )

LINE Notify 已於 2025 年 3 月 31 日停止服務

LINE 官方已關閉 LINE Notify,改推薦改用 LINE Messaging API(透過 LINE 官方帳號發送訊息,每月有一定免費額度)。下方 Notebook 保留原本的教學邏輯,方便理解「策略 → 自動通知」的概念,但實際要恢復自動通知功能,需要改接 Messaging API,串接方式與權杖申請流程都不同。

不論用哪一種通知服務,自動化通知的設計模式都相同:先把「什麼條件要通知」的判斷邏輯與「怎麼發送」的程式碼分開,之後就算通知管道換掉(Line、Email、Telegram、Discord…),策略邏輯完全不用動。

進階:串接券商 / 交易所 API 自動下單

如果要更進一步做到自動下單,常見的做法是串接交易所或券商提供的 API:

平台 適用市場 說明
Binance API 加密貨幣 透過 python-binance 等套件查詢報價、送出市價/限價單
Interactive Brokers API 美股、期貨、外匯等 透過 ib_insync 等套件連線 TWS/Gateway 進行交易
# 以 Binance API 查詢報價為例
from binance.client import Client

client = Client(api_key, api_secret)
price = client.get_symbol_ticker(symbol="BTCUSDT")

自動下單前務必先做好風控

自動下單一旦上線就是真金白銀進出,務必先完成回測風險管理,並加上交易日誌與例外處理(try/except 搭配 log 記錄),確保程式出錯時不會無限重複下單。

動手做

Notebook 內容
8-1 使用 Line Notify 呼叫 LINE Notify API 傳送文字訊息(服務已停用,僅供理解概念)
8-2 使用 Line Notify 傳送股票資訊給自己 將股票均線圖畫成圖片後一併傳送(服務已停用,僅供理解概念)