呂凱崴kaiweilu.tw

CrocBoss:台股資料與回測系統

台股盤後資料管線與自寫策略的選股/回測系統,後期擴充為對外的多使用者服務(不下單、不散布)。2024 年暑假為驗證投資策略而開始的個人專案。

期間
2024 年暑假起斷續進行;2026-06-30 至 07-17 完成現行版本並開放,持續擴充
角色
獨立完成
技術
Python、DuckDB、FastAPI、Tauri、React、Cloudflare Tunnel
規模
2,009 檔、612 萬根日 K;六關驗證協定;兩次對抗式安全審查

書審對應:附件 D-2

看盤介面:自繪 K 線與技術指標;行情由伺服器每日派送、本機引擎唯讀查詢
看盤介面:自繪 K 線與技術指標;行情由伺服器每日派送、本機引擎唯讀查詢
本頁目錄
  1. 目標
  2. 資料管線
  3. 驗證流程
  4. 桌面版與對外服務
  5. 成果

目標

回測策略常因歷史資料不乾淨,或使用了當時不可得的資訊(前視偏誤)而高估績效。目標是每日自動更新、可還原任一時點已知資料的管線,以及能攔截過度擬合的驗證流程;難點在於讓「當時知道什麼」可被機械地重現,並在採用策略前就擋下只在樣本內有效的結果。

資料管線

  • 回填 2,009 檔、612 萬根日 K,每日盤後自動更新至今。
  • point-in-time 資料存取:任一時點的查詢僅可見當時已知資料,並附前視稽核。

驗證流程

  • 六關驗證協定:走動式前推、安慰劑檢定、僅可使用一次的盲測段等含盲測的關卡,任一關未過即不採用;只有通過全部六關的策略才會被列為正式系統。
  • 模擬下單紀錄以只增不改的雜湊鏈存證。
  • 使用者自寫的 Python 策略在本機引擎的隔離子行程執行,伺服器永不執行使用者程式碼。

桌面版與對外服務

  • Tauri 與 React 看盤介面:自繪 K 線與技術指標(無圖表函式庫)、安裝檔與簽章驗證的自動更新。
  • 對外開放前撰寫威脅模型與五條安全紅線:伺服器永不執行使用者程式碼、券商憑證僅存於裝置、行情庫對 API 唯讀、Argon2id 雜湊與一致的 401 回應、依帳號與 IP 鎖定;經兩次對抗式安全審查後經 Cloudflare Tunnel 上線。

成果

資料管線每日自動更新至今;六關驗證攔截了僅在樣本內績效佳的策略;多使用者版本上線後持續擴充。本頁與書審敘述皆為工程與資料驗證,不涉投資績效,畫面內容非投資建議。

自寫策略於本機引擎的隔離子行程執行,結果以 point-in-time 資料計算
自寫策略於本機引擎的隔離子行程執行,結果以 point-in-time 資料計算
策略准入:六關驗證(含單次盲測)通過者才列為正式系統;非投資建議
策略准入:六關驗證(含單次盲測)通過者才列為正式系統;非投資建議