Kronos K 線模型本地運行:環境安裝、模型選擇、預測範例與回測陷阱

Kronos 金融 K 線基礎模型本地教程,涵蓋 Python 環境、Hugging Face 模型選擇、OHLCV 輸入、預測長度、回測防洩漏和投資風險邊界。

Kronos 的本篇教學圍繞著標題中的具體任務。 Kronos 是金融 K 線建模專案;預測產出不能當作投資建議,資料外洩、複權方式、交易成本和樣本外測試會顯著改變回測結果。

下面使用測試環境和可撤銷資料演示。涉及帳號、金鑰、機器控制、投資或緊急通訊時,必須再做人工確認。

先明確任務是復現還是研究

這一節只處理「先明確任務是復現還是研究」。先保存目前狀態,再執行最小測試,不要同時改變多個條件。

1
git clone https://github.com/shiyu-coder/Kronos.git

對 Kronos 來說,判斷結果時必須結合這一邊界:Kronos 是金融 K 線建模專案;預測輸出不能當作投資建議,資料外洩、複權方式、交易成本和樣本外測試會顯著改變回測結果。

如果結果無法重複,記錄版本、輸入和日誌,然後縮小測試範圍。

固定 Python、CUDA 與依賴版本

建議按以下順序執行:

  1. 核對實際版本與來源。
  2. 使用測試帳號、測試目錄或測試設備。
  3. 執行一個可撤銷動作。
  4. 儲存輸出、退出碼或截圖。
  5. 恢復修改並重新驗證。
1
2
python --version
nvidia-smi

完成標準是「固定 Python、CUDA 與依賴版本」得到可核驗結果,而不是指令剛好沒有報錯。

建立與其他項目隔離的環境

檢查項 通過標準 停止訊號
建立與其他項目隔離的環境 輸入、輸出和權限範圍明確 工具自動擴大操作範圍
來源 能回到官方倉庫或原始資料 依賴未知鏡像或二手結論
安全 日誌中沒有秘密值 出現 Token、Cookie 或隱私資料
復原 能回到執行前狀態 沒有備份或撤銷方法
1
python -m venv .venv

出現停止訊號時先恢復,不要繼續下一步。

模型權重與程式碼版本要配套

這一節只處理「模型權重與程式碼版本要配套」。先保存目前狀態,再執行最小測試,不要同時改變多個條件。

1
git rev-parse HEAD

對 Kronos 來說,判斷結果時必須結合這一邊界:Kronos 是金融 K 線建模專案;預測輸出不能當作投資建議,資料外洩、複權方式、交易成本和樣本外測試會顯著改變回測結果。

如果結果無法重複,記錄版本、輸入和日誌,然後縮小測試範圍。

K 線欄位順序不能靠猜

建議按以下順序執行:

  1. 核對實際版本與來源。
  2. 使用測試帳號、測試目錄或測試設備。
  3. 執行一個可撤銷動作。
  4. 儲存輸出、退出碼或截圖。
  5. 恢復修改並重新驗證。
1
# 检查 timestamp/open/high/low/close/volume

完成標準是「K 線欄位順序不能靠猜」得到可核驗結果,而不是指令剛好沒有報錯。

時區、停牌和缺失值先處理

檢查項 通過標準 停止訊號
時區、停牌和缺失值先處理 輸入、輸出和權限範圍明確 工具自動擴大操作範圍
來源 能回到官方倉庫或原始資料 依賴未知鏡像或二手結論
安全 日誌中沒有秘密值 出現 Token、Cookie 或隱私資料
復原 能回到執行前狀態 沒有備份或撤銷方法
1
# 输出时间范围、时区与缺失统计

出現停止訊號時先恢復,不要繼續下一步。

前復權與後復權會改變什麼

這一節只處理「前復權與後復權會改變什麼」。先保存目前狀態,再執行最小測試,不要同時改變多個條件。

1
# 保存复权方式和数据供应商

對 Kronos 來說,判斷結果時必須結合這一邊界:Kronos 是金融 K 線建模專案;預測輸出不能當作投資建議,資料外洩、複權方式、交易成本和樣本外測試會顯著改變回測結果。

如果結果無法重複,記錄版本、輸入和日誌,然後縮小測試範圍。

第一次只跑官方最小範例

建議按以下順序執行:

  1. 核對實際版本與來源。
  2. 使用測試帳號、測試目錄或測試設備。
  3. 執行一個可撤銷動作。
  4. 儲存輸出、退出碼或截圖。
  5. 恢復修改並重新驗證。
1
python --help

完成標準是「第一次只跑官方最小樣例」得到可核驗結果,而不是命令剛好沒有報錯。

顯存不足先縮短序列與批次

檢查項 通過標準 停止訊號
顯存不足先縮短序列與批次 輸入、輸出與權限範圍明確 工具自動擴大操作範圍
來源 能回到官方倉庫或原始資料 依賴未知鏡像或二手結論
安全 日誌中沒有秘密值 出現 Token、Cookie 或隱私資料
復原 能回到執行前狀態 沒有備份或撤銷方法
1
nvidia-smi

出現停止訊號時先恢復,不要繼續下一步。

訓練集不能看到未來數據

這一節只處理「訓練集不能看到未來資料」。先保存目前狀態,再執行最小測試,不要同時改變多個條件。

1
# 按时间切分 train/validation/test

對 Kronos 來說,判斷結果時必須結合這一邊界:Kronos 是金融 K 線建模專案;預測輸出不能當作投資建議,資料外洩、複權方式、交易成本和樣本外測試會顯著改變回測結果。

如果結果無法重複,記錄版本、輸入和日誌,然後縮小測試範圍。

滾動回測優於一次隨機切分

建議按以下順序執行:

  1. 核對實際版本與來源。
  2. 使用測試帳號、測試目錄或測試設備。
  3. 執行一個可撤銷動作。
  4. 儲存輸出、退出碼或截圖。
  5. 恢復修改並重新驗證。
1
# 使用 walk-forward 时间窗口

完成標準是「滾動回測優於一次隨機切分」得到可核驗結果,而不是指令剛好沒有報錯。

把手續費和滑點加入結果

檢查項 通過標準 停止訊號
把手續費和滑點加入結果 輸入、輸出和權限範圍明確 工具自動擴大操作範圍
來源 能回到官方倉庫或原始資料 依賴未知鏡像或二手結論
安全 日誌中沒有秘密值 出現 Token、Cookie 或隱私資料
復原 能回到執行前狀態 沒有備份或撤銷方法
1
# 分别报告毛收益与净收益

出現停止訊號時先恢復,不要繼續下一步。

比較簡單基準而不是只看模型

這一節只處理「比較簡單基準而不是只看模型」。先保存目前狀態,再執行最小測試,不要同時改變多個條件。

1
# 与持有策略和移动平均基准比较

對 Kronos 來說,判斷結果時必須結合這一邊界:Kronos 是金融 K 線建模專案;預測輸出不能當作投資建議,資料外洩、複權方式、交易成本和樣本外測試會顯著改變回測結果。

如果結果無法重複,記錄版本、輸入和日誌,然後縮小測試範圍。

保存隨機種子和資料快照

建議按以下順序執行:

  1. 核對實際版本與來源。
  2. 使用測試帳號、測試目錄或測試設備。
  3. 執行一個可撤銷動作。
  4. 儲存輸出、退出碼或截圖。
  5. 恢復修改並重新驗證。
1
git status --short

完成標準是「保存隨機種子和資料快照」得到可核驗結果,而不是命令剛好沒有報錯。

預測方向對但無法交易的原因

檢查項 通過標準 停止訊號
預測方向對但無法交易的原因 輸入、輸出和權限範圍明確 工具自動擴大操作範圍
來源 能回到官方倉庫或原始資料 依賴未知鏡像或二手結論
安全 日誌中沒有秘密值 出現 Token、Cookie 或隱私資料
復原 能回到執行前狀態 沒有備份或撤銷方法
1
# 检查换手、成交量与延迟

出現停止訊號時先恢復,不要繼續下一步。

研究結論應該如何表述

這一節只處理「研究結論應該如何表達」。先保存目前狀態,再執行最小測試,不要同時改變多個條件。

1
# 只报告样本、方法、限制和可复现结果

對 Kronos 來說,判斷結果時必須結合這一邊界:Kronos 是金融 K 線建模專案;預測輸出不能當作投資建議,資料外洩、複權方式、交易成本和樣本外測試會顯著改變回測結果。

如果結果無法重複,記錄版本、輸入和日誌,然後縮小測試範圍。

訓練資料供應商變更會破壞可比性

建議按以下順序執行:

  1. 核對實際版本與來源。
  2. 使用測試帳號、測試目錄或測試設備。
  3. 執行一個可撤銷動作。
  4. 儲存輸出、退出碼或截圖。
  5. 恢復修改並重新驗證。
1
# 固定供应商、下载时间与字段定义

完成標準是「訓練資料供應商變更會破壞可比性」得到可核驗結果,而不是命令剛好沒有報錯。

預測區間與交易持有期間不能混用

檢查項 通過標準 停止訊號
預測區間與交易持有期間不能混用 輸入、輸出和權限範圍明確 工具自動擴大操作範圍
來源 能回到官方倉庫或原始資料 依賴未知鏡像或二手結論
安全 日誌中沒有秘密值 出現 Token、Cookie 或隱私資料
復原 能回到執行前狀態 沒有備份或撤銷方法
1
# 分别记录 forecast horizon 与 holding period

出現停止訊號時先恢復,不要繼續下一步。

回測報告必須保留失敗區間

這一節只處理「回測報告必須保留失敗區間」。先保存目前狀態,再執行最小測試,不要同時改變多個條件。

1
# 报告最大回撤、换手率和分年度结果

對 Kronos 來說,判斷結果時必須結合這一邊界:Kronos 是金融 K 線建模專案;預測輸出不能當作投資建議,資料外洩、複權方式、交易成本和樣本外測試會顯著改變回測結果。

如果結果無法重複,記錄版本、輸入和日誌,然後縮小測試範圍。

Kronos 的最終核對

  • 使用的版本和來源已經記錄。
  • 測試輸入與正式資料已經隔離。
  • 命令、配置和實際輸出能夠對應。
  • 失敗路徑至少主動測試過一次。
  • 金鑰、帳號和私人資料沒有進入 Git 或日誌。
  • 升級、停止和恢復都有明確動作。

如果仍無法解釋結果如何產生,就繼續把 Kronos 保持在測試環境,不要擴大權限或取代現有穩定流程。