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 保持在测试环境,不要扩大权限或替换现有稳定流程。