OpenAlice 自動化排程與 Heartbeat:讓 AI 在你睡覺時監控市場

OpenAlice 自動化排程與 Heartbeat:讓 AI 在你睡覺時監控市場

10 min read

用 OpenAlice 的早期,你大概是這樣的:想知道什麼,就去問它。它回答,你思考,偶爾讓它幫你分析一個標的。

這當然有用,但有個問題——你還是要記得去問。

市場不等你。有些機會出現在你在開會的時候、Fed 發聲明在你睡著的時候、NVDA 突破關鍵阻力在你在吃飯的時候。你不可能 24 小時盯著市場,但你也不想錯過真正值得注意的時刻。

這就是 OpenAlice 自動化層要解決的問題。


Event Log:一切自動化的核心

在理解 Cron 和 Heartbeat 之前,先說一個底層設計——append-only event log。

OpenAlice 的所有系統活動都流過這個 log:交易、AI 訊息、排程觸發、心跳結果,全部是有型別的 event,支援即時訂閱。

這個設計讓自動化很乾淨:每個功能都是這個 event bus 的「監聽器」,有 event 進來就觸發對應行為。不同功能之間不需要互相知道彼此的存在,只需要監聽自己在意的 event。

理解了這個,Cron、Heartbeat、Webhook 的邏輯就很清楚了——它們都是在特定條件下往 event log 丟東西,然後 AI 讀到 event 就執行。


Cron 排程:定時觸發 AI 任務

Cron 讓你可以設定時間規則,在指定時間點自動觸發 AI 任務。

支援三種格式:

  • Cron 表達式 — 標準 cron 語法,精確控制時間
  • 間隔 — 每 X 分鐘/小時執行一次
  • 一次性時間戳 — 在特定時間點觸發一次

實際應用場景:

# 每天早上 9:00(台北時間)執行盤前分析
每天 9:00 AM 幫我分析今日開盤前市場概況

# 每週一提醒我檢視整體部位
每週一 8:30 AM 產生本週投資組合健診報告

# Fed 決策日前一小時提醒
在美聯準會宣布利率決策前 1 小時提醒我

Cron 觸發後,OpenAlice 會發 event 進 log,AI 讀到後執行對應的研究或分析任務,然後把結果送到你設定的頻道(Web UI 或 Telegram)。


Heartbeat:主動的市場守望者

Cron 是「定時觸發」——不管市場有沒有發生什麼,到時間就執行。

Heartbeat 不一樣——它是根據市場狀況決定要不要打擾你。

Heartbeat 是一個特殊的 Cron job,它定期審視市場,但只在「真的有事」的時候才主動通知你。這個「真的有事」是什麼,你來定義。

Heartbeat 的工作流程:

定期觸發(你設定的頻率,例如每 30 分鐘)
→ AI 審視市場狀況
→ 是否有符合你設定條件的訊號?
→ 有 → 通知你(Web UI / Telegram)
→ 沒有 → 靜默,不打擾

這裡有個關鍵設計:Heartbeat 會過濾「活躍交易時段」。你可以設置只在特定市場開盤時段監控,休市期間靜默——不然你會在半夜三點收到一個「沒什麼特別的」通知。

什麼樣的條件適合設進 Heartbeat?

  • 某個標的突破近期高點或跌破支撐
  • 某個技術指標達到超買/超賣區間
  • 某個總體指標(殖利率、VIX)突破閾值
  • 持倉虧損達到某個百分比需要注意
  • 特定關鍵字出現在財經新聞(「Fed」「earnings miss」「geopolitical」)

Heartbeat 解決的不是「幫你做決策」,而是「在對的時機讓你做決策」。


Webhook:外部觸發的接入

Webhook 讓外部系統可以觸發 OpenAlice 的 event——規劃中的功能,但設計概念值得先了解。

應用場景包括:

  • 你的 TradingView 策略觸發訊號時,call webhook 讓 OpenAlice 知道
  • 某個 API 服務回傳特定資料時,往 OpenAlice 推送 event
  • 其他 AI Agent 在完成分析後觸發 OpenAlice 執行交易

這個方向讓 OpenAlice 不只是一個獨立工具,而是可以接入更大 AI 工作流的節點。


Telegram:行動端的交易審核面板

自動化通知要有用,接收端要夠方便——這就是 Telegram 整合的原因。

OpenAlice 有 Telegram bot,你可以:

  • 接收 Heartbeat 主動通知
  • 接收 Cron 排程任務的結果
  • 查看部位狀態
  • 審核 AI stage 好的訂單,決定是否 push 執行

Telegram 上的交易審核面板特別有意思:AI 在背景幫你做好了分析、stage 了訂單、附上 commit message——然後傳一個 Telegram 訊息給你,你看一眼,按「確認執行」或「忽略」。

就這樣。不需要打開電腦,不需要登入券商介面——在手機上審核 AI 的建議,然後決定要不要讓它執行。


設計好的自動化工作流

把這些功能組合起來,可以建出一個很實用的工作流:

盤前準備(Cron)
每天開盤前 30 分鐘,自動跑一個分析:關鍵指數期貨、昨夜美股走勢、今天有無重大事件(財報、Fed 發言、重要數據)。結果送到 Telegram,你在通勤途中看完,到電腦前已有方向感。

市場監控(Heartbeat)
設定 Heartbeat 每 30 分鐘審一次你的持倉標的——有異常才通知。正常的市場波動不需要你知道,但如果 NVDA 突然單日跌超 5%,或者 VIX 突破 30,你要馬上收到訊息。

決策執行(Trading-as-Git)
Heartbeat 觸發通知後,AI 已經幫你 stage 了可能的應對訂單(例如加倉或減倉),你看 Telegram 上的說明,決定要不要 push。

這三件事組合起來,你對市場的反應速度不比全天盯盤的人慢,但你不需要全天盯。


自動化的邊界

一件事要說清楚:自動化越高,Guard Pipeline 越重要。

你讓 AI 監控得越主動、執行得越自動,就越需要在 Guard Pipeline 裡設好護欄——最大部位上限、單筆訂單上限、24 小時內最多執行幾筆、哪些標的 whitelist 允許自動執行。

OpenAlice 的設計鼓勵你漸進式開放自動化權限:先在通知模式跑一段時間,確認 AI 的判斷和你的偏好一致,再把部分執行權限開放給它。不要一開始就設成全自動——你還在建立對它判斷的理解。

這不是說 OpenAlice 不可信,而是說任何自動化系統都需要先被觀察,再被信任。


整個系列到這裡

五篇走完,你現在對 OpenAlice 的輪廓應該很清楚了:

架構理解 → 四個層次(交易、研究、自動化、介面)各司其職
環境跑起來 → Node 22 + pnpm 10 + Claude Code,五分鐘的事
交易設計 → Trading-as-Git:stage、commit with message、push
研究工具 → OpenBB 引擎、技術指標、基本面、新聞監控
自動化 → Cron 定時 + Heartbeat 條件觸發 + Telegram 行動審核

從這裡開始,就是把它跑進你自己的工作流裡——試著問它你真正在意的問題、設置你真正需要的 Heartbeat 條件、用它分析你真正在持有的標的。

沒有比真實使用更快建立對它的理解。


回到系列總覽

這篇是 OpenAlice 系列的第五站,也是最後一站,專門講自動化排程、Heartbeat 監控與 Telegram 整合。整條路的閱讀地圖在 OpenAlice 入門課。