Kronos 量化预测完整教程:金融基础模型如何用三条命令预测你的 K 线
2026/9/1 21:02:52 网站建设 项目流程

Kronos 量化预测完整教程:金融基础模型如何用三条命令预测你的 K 线

【免费下载链接】KronosKronos: A Foundation Model for the Language of Financial Markets项目地址: https://gitcode.com/GitHub_Trending/kronos14/Kronos

Kronos 是首个开源的金融 K 线基础模型:输入历史 K 线(OHLCV,即开盘、最高、最低、收盘、成交量),它能自回归地预测未来若干周期的价格与成交量。在港股阿里巴巴(09988)的 5 分钟 K 线上,它的预测趋势已能贴近真实走势。下面从实际预测效果出发,完整走一遍 Kronos 的安装、数据准备与调优。

看到 K 线预测效果:输入、预测与真值对比

📈 上图是官方示例(examples/prediction_example.py)跑出的 5 分钟 K 线预测。蓝色是历史输入,红色是模型预测,浅蓝是完整真值:模型只看到最近 400 根 K 线,就外推了 120 个未来周期。重点看两处——预测曲线在拐点位置和波动幅度上与真值一致,且价格与成交量两个维度同时被预测,而不是只猜价格。

它能预测什么:市场、频率与输入字段

  • 市场:股票(A 股、港股)、加密货币(如 BTC/USDT)、期货等任何 K 线资产;预训练覆盖全球 45 个以上交易所的数据。
  • 频率:5 分钟线到日线均可,换数据粒度即可,模型不用改。
  • 输入字段:标准 OHLCV,其中 open/high/low/close 必填,volume、amount 可选。
  • 模型规格:Kronos-mini(410 万参数)、Kronos-small(2470 万)、Kronos-base(1.02 亿)均已开源,上下文分别支持 2048 / 512 / 512 根 K 线。

微调港股 09988 的 5 分钟数据后,finetune_csv/ 训练流程输出的预测效果如下:

三条命令完成 Kronos 安装与首次预测

git clone https://gitcode.com/GitHub_Trending/kronos14/Kronos cd Kronos pip install -r requirements.txt

🚀 环境要求 Python 3.8+ 与 PyTorch 1.13+,仓库根目录的 requirements.txt 会把 torch、pandas、huggingface_hub、matplotlib 等依赖一次装齐。首次运行时模型权重会自动从 Hugging Face 下载,核心类 KronosPredictor 已封装好预处理、归一化与反归一化。

如何准备 K 线数据:字段、512 行上下文与缺失值策略

把数据整理成 pandas DataFrame,字段清单如下:

  • timestamps:每根 K 线的时间戳,必须转成 datetime 类型;
  • open / high / low / close:开盘、最高、最低、收盘,四个必填列;
  • volume / amount:成交量与成交额,可选,缺失时直接填 0(KronosPredictor 会自动补零);
  • 数据长度:Kronos-small 和 Kronos-base 的 max_context 是 512,建议至少准备 512 行,让模型吃满上下文窗口,官方示例用 lookback=400、pred_len=120 截窗;
  • 待预测区间的未来时间戳单独作为 y_timestamp 传入,长度等于 pred_len。

模型源码在 model/,数据加载与字段命名可直接对照 examples/ 里的脚本抄。

怎么判断预测结果、做回溯测试与继续调优

先读曲线:上图式图表中,上方收盘价、下方成交量,红色预测线与蓝色真值对比,重点看趋势一致性与波动幅度,逐点贴合在高噪声金融数据里既不现实也不该是目标。要量化效果就做回溯测试(backtest,用历史数据模拟策略运行来估算收益):官方管线在 finetune/qlib_test.py 中跑 top-K 策略,输出累计收益与超额收益两条曲线:

核心预测调用只有几行,采样参数全部暴露在外:

predictor = KronosPredictor(model, tokenizer, max_context=512) pred_df = predictor.predict(df=x_df, x_timestamp=x_ts, y_timestamp=y_ts, pred_len=120, T=1.0, top_p=0.9, sample_count=1)

🔧 三条马上能落地的调优动作:

  1. 采样参数:默认 T=1.0、top_p=0.9;调高温度 T 可让预测路径更多样,sample_count 取 5 以上会生成多条路径再平均,结果更稳。
  2. 数据更新频率:滚动历史窗口并定期重训,行情波动状态切换时,tokenizer 和 predictor 都值得重调一次。
  3. 微调(fine-tune,即基于预训练权重在自己的数据上继续训练):finetune_csv/ 提供 CSV 数据开箱流程,样例配置 configs/config_ali09988_candle-5min.yaml 中 lookback_window=512、predict_window=48,一条 train_sequential.py 跑完全流程。

架构上只用三句话交代:tokenizer 先把连续 OHLCV 量化成分层离散 token,再由自回归 Transformer(类似"接龙",基于前面内容生成下一根 K 线的 token)在 45 个以上交易所的数据上预训练,这正是它能跨市场零样本泛化的原因。

下一步最值得做的一件事:挑你最关心的市场,用 finetune_csv/ 的管线完整微调一遍 tokenizer + predictor,再用 top-K 策略回测验证累计收益。模型变成自己策略里真正可用的组件,比任何"开箱即用"都更值钱。细节可查 README 与 AAAI 2026 论文。

【免费下载链接】KronosKronos: A Foundation Model for the Language of Financial Markets项目地址: https://gitcode.com/GitHub_Trending/kronos14/Kronos

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询