專案概覽
GoldWatch.live 是一個用於監控黃金(XAU/USD)核心驅動因素的即時宏觀儀表板。它把市場價格、利率、美元強弱、風險情緒、大宗商品、部位、技術趨勢、交易時段、提醒、新聞與 AI 輔助分析整合到同一個操作介面中。
這個產品具備 SaaS 特徵,例如帳號、分層方案、訂閱、提醒與登入後的即時存取。但我會將它主要歸類為資料工作流專案,因為它的核心價值來自採集、標準化、評分、推送與解釋市場輸入的 pipeline。
這是一個由我個人企劃、設計、編碼、部署並持續維護的產品。
產品架構
- Monorepo 產品系統 - 專案使用 pnpm workspaces 與 Turborepo 組織,包含 React Router 儀表板、Hono REST API、獨立 Hono SSE 服務、crawler pipeline、Laravel 認證與帳單閘道,以及用於 schema、常數、方案層級和評分設定的共享 TypeScript packages。
- 讀寫分離 - crawler 依排程將市場與宏觀記錄寫入 PostgreSQL。API 只從資料庫讀取,不會因為使用者請求直接觸發外部資料抓取,因此延遲更可控,資料供給層的使用也更容易管理。
- Provider 抽象 - 資料輸入透過 provider interface 和指標設定管理。每個 symbol 或指標可以定義抓取頻率、fallback 行為、歷史覆蓋與計算值,而不把 UI 綁定到具體採集細節。
- Gold Score 模型 - factor-weighted score 將宏觀輸入轉換為 0-100 分數,並提供 bias、coverage、freshness 與因子拆解。評分綜合真實利率、美元強弱、風險情緒、大宗商品環境、部位與技術趨勢,並使用有界 normalization。
- 即時推送層 - 獨立 SSE 服務只對最新價格表進行單點輪詢,再將變化 fan-out 給已連線客戶端。這可以避免每個客戶端各自建立 polling loop,使即時推送下的資料庫負載接近 O(1)。
- 分層資料服務 - 匿名、免費與 Pro 使用者會取得不同的 polling 與 streaming 行為。系統結合 activity state、tab coordination、CDN caching、rate limit 與 graceful degradation,在即時體驗和基礎設施成本之間取得平衡。
- AI 新聞工作流 - 新聞 pipeline 抓取公開財經標題,進行去重、黃金相關性過濾、情緒評分、影響摘要,並透過 API 與 dashboard drawer 提供給使用者。
- 認證與帳單邊界 - Laravel 簽發 ES256 JWT,API 與 SSE 服務可在本地驗證 token,不需要每次查詢資料庫。Stripe billing 與 plan claims 則用於驅動 Pro 使用者的即時連線和進階功能。
主要功能
- 黃金宏觀儀表板 - 在同一個 dashboard 中查看 XAUUSD、宏觀因子卡片、市場時段、精選指標與上下文狀態。
- 可解釋 Gold Score - 除了單一 0-100 分數,也能查看因子級 bias、coverage、freshness 與底層訊號貢獻。
- 即時價格更新 - 登入使用者透過 SSE 接收即時更新,訪客和背景狀態使用者則依層級策略切換為 polling。
- 交易時段上下文 - 儀表板顯示主要交易時段與市場狀態,協助使用者把價格變化放回時間背景中理解。
- AI 輔助分析 - 支援按需或定時生成宏觀條件摘要,解釋當前環境對黃金的潛在壓力方向。
- 過濾後的新聞流 - 公開財經標題會先經過相關性過濾、評分、摘要與標籤處理,而不是直接展示雜訊較高的原始 feed。
- 提醒與訂閱 - 帳號、提醒行為和 Pro 訂閱功能讓這個資料工作流具備持續使用的 SaaS 產品形態。


