news 2026/9/2 13:55:26

Kronos 金融K线预测快速上手指南:从装环境到喂数据微调

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Kronos 金融K线预测快速上手指南:从装环境到喂数据微调

Kronos 金融K线预测快速上手指南:从装环境到喂数据微调

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

Kronos 是一个专门做金融K线预测的开源基础模型:它把 K 线当作一种"语言"来学习,你给它历史行情,它还你未来一段走势的预测。适合三类人:想入行量化的新手、想把预测接进自己流程的开发者、以及只想要个能跑的 demo 验证效果的人。下面按上手的实际顺序走一遍,不用啃论文。

用2分钟看懂 Kronos

它的核心思路一句话概括:先把 K 线"翻译"成一串符号,再用语言模型式的架构去预测后面会发生什么。这和你用大语言模型处理文本是一个套路。

文本不能直接丢给模型,要先切成 token(词的基本单元)。Kronos 对 K 线做了同样的事,整个框架分两步:

  • 第一步,分词器(tokenizer):把每根 K 线的开盘、最高、最低、收盘、成交量(合称 OHLCV)量化成一串离散令牌。你可以理解为把 K 线的原始数值翻译成模型能"认读"的符号序列。
  • 第二步,自回归 Transformer:自回归就是"续写"——根据前文逐个决定下一个词。这个 Transformer 在 45 多家全球交易所的 K 线数据上预训练过,学的是 K 线序列的共性规律,拿来就能做预测。

为什么要多此一举量化成令牌?原始金融数据噪声大,转成离散符号后,模型可以聚焦于 K 线的结构模式,而不是被精确数值牵着走。另外 token 化让不同规模的模型能复用同一套分词器,部署上也更省事。

5分钟跑通第一个预测

环境准备与模型选型

环境门槛不高:Python 3.10 以上,然后在项目根目录执行:

pip install -r requirements.txt

依赖清单(torch、pandas、huggingface_hub 等)都固定在 requirements.txt 里,建议单独建一个虚拟环境,避免和现有包打架。

接着决定用哪个规模的模型。开源有三档,上下文长度指模型一次最多能"看"多少根历史 K 线:

模型参数规模上下文长度适合场景
Kronos-mini4.1M2048轻量快验,CPU 也能跑
Kronos-small24.7M512常规预测,速度与精度均衡
Kronos-base102.3M512对预测质量要求更高的场景

⚠️ 两个注意点:small 和 base 的输入上限是 512,超长序列预测器会自动截断;显存紧张就从 mini 或 small 起步,没必要一上来就 base。

跑起第一个预测

最快的路径是 Web 界面,无需写代码:

cd webui && python run.py

浏览器打开 http://localhost:7070 ,上传 CSV 数据、选模型和设备(CPU/CUDA/MPS)、滑动选时间窗口(固定 400 根历史 + 120 根预测),点预测即可看到 K 线图对比。参数建议和注意事项可查 webui/README.md。

想直接写代码的话,核心调用就这几行:

from model import Kronos, KronosTokenizer, KronosPredictor tokenizer = KronosTokenizer.from_pretrained("NeoQuasar/Kronos-Tokenizer-base") model = Kronos.from_pretrained("NeoQuasar/Kronos-small") predictor = KronosPredictor(model, tokenizer, max_context=512) pred_df = predictor.predict(df=x_df, x_timestamp=x_timestamp, y_timestamp=y_timestamp, pred_len=120)

输入是含 open/high/low/close 列的 pandas DataFrame(volume、amount 可选),返回的 pred_df 就是按 y_timestamp 索引的预测 K 线。完整的加载数据、画对比图的脚本在 examples/prediction_example.py,跑一遍就能得到下面这种效果图。

三种用法,按需挑一条

跑通一次之后,根据你的目的选一条主线即可:

路径适合谁怎么开始
WebUI 交互不写代码、先建立对输出效果的直观感受cd webui && python run.py,浏览器里操作
Python API要把预测接进自己的策略或回测脚本KronosPredictor几行代码调用;多标的并行用predict_batch
CSV 微调通用模型在自己数据上不够贴合,想训专属版本准备 CSV 和 YAML 配置,跑finetune_csv/train_sequential.py

建议的顺序:先在 WebUI 里出一张图,确认数据格式和输出形态没问题;再切到 Python API 自己写评估逻辑;最后才考虑微调。注意predict_batch要求所有序列的历史长度和预测长度一致,缺 volume/amount 列会自动补零。

喂自己的K线数据微调

如果你手上有一个市场或品种的历史 K 线,想让模型更贴合自己的数据,仓库提供了完整的 CSV 微调流程,细节见 finetune_csv/README_CN.md。三步走:

  1. 备数据:CSV 至少要包含 timestamps、open、high、low、close 五列,volume 和 amount 没有的话可以全填 0。仓库里有一份港股阿里 5 分钟 K 线的样例数据在finetune_csv/data/,可直接参考列格式。
  2. 改配置:照finetune_csv/configs/config_ali09988_candle-5min.yaml复制一份,把数据路径和预训练模型路径改成自己的;lookback_window、predict_window、max_context 等训练参数在模板里有逐行注释。
  3. 训练:一条命令按顺序先微调分词器、再微调预测器(多卡可加 torchrun 走 DDP 加速),训练完两个组件的最佳检查点会分别保存到各自目录,拿自己的数据即可跑预测。

卡住了先看这

  • 模型加载/下载失败:先查网络能否连通模型仓库,再确认 transformers 版本 ≥ 4.30.0;首次加载需要下载权重,等待一会儿属正常现象。
  • 显存不够或 CPU 太慢:换 Kronos-mini,或调小 batch_size;WebUI 里也可以直接选 CPU 设备跑通流程。
  • 数据格式报错:对照配置模板逐列核对列名——最少要有 open/high/low/close,时间列叫 timestamps、timestamp 或 date 都能识别。
  • 预测结果看着不对:先排查输入数据本身(缺失、乱序、异常值),再调predict里的 T(温度)和 top_p 等采样参数,多采样几条路径(sample_count)观察是否稳定。
  • WebUI 打不开:大概率是 7070 端口被占用,改一下webui/app.py里的端口号再重启。

装完、跑通、微调这三个节点过了之后,建议顺着 README.md 看完整的模型清单和基于 Qlib 的回测流程,再翻examples/目录里几个可直接运行的脚本,最后读一遍 finetune_csv/README_CN.md 把训练参数逐项过一遍——这三处文档覆盖了从验证到定制的全部细节。

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

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/2 13:49:46

基于STM32与FreeRTOS的六自由度机械臂:总线舵机与PS2手柄控制实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 13:49:38

非全日制MBA边工作边写论文,按项目节点推进的节奏

非全MBA的论文焦虑,很少来自选题本身,更多来自工作、课程、论文三线并行下「不知道进度到哪了」。把论文拆成一个个项目节点,用周中碎片喂进度、用周末整块出成果,是不少在职学员验证过的推进方式。知学术AIPaperGPT 的免费智能大…

作者头像 李华
网站建设 2026/9/2 13:48:11

架构不止是画线:玄武架构的连接约束与治理之道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 13:46:41

游戏汉化技术全解析:从资源解包到UI适配的工程实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 13:46:26

DVWA靶场实战指南:从SQL注入到XSS的Web安全攻防全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 13:45:22

扫描件 Ctrl+F 没反应?OCRmyPDF 和 4 种 OCR 方案,各在哪里用

扫描件 CtrlF 没反应?OCRmyPDF 和 4 种 OCR 方案,各在哪里用 【免费下载链接】OCRmyPDF OCRmyPDF adds an OCR text layer to scanned PDF files, allowing them to be searched 项目地址: https://gitcode.com/GitHub_Trending/oc/OCRmyPDF OCRm…

作者头像 李华