Kronos:面向K线预测的开源金融基础模型与最小运行指南
【免费下载链接】KronosKronos: A Foundation Model for the Language of Financial Markets项目地址: https://gitcode.com/GitHub_Trending/kronos14/Kronos
Kronos 是首个面向金融K线序列的开源基础模型,在45+全球交易所数据上预训练,将K线标记化后用自回归Transformer预测价格与成交量,适合量化新手与开发者快速上手K线预测。
📌 它解决什么问题
金融K线包含开高低收与成交量等多维连续数据,噪音大、波动快,通用时序模型直接输入原始数值,往往难以捕捉其中的结构。Kronos 的思路是先做转译:用专用 tokenizer 把 K线序列编码成离散 Token,再用语言模型式的自回归 Transformer 在 Token 上预训练,得到一个可复用的K线预测底座。单标的预测、批量预测与微调共用同一套入口,核心实现集中在 model/kronos.py。
⚙️ 工作原理:两级标记化加自回归解码
K线标记化:连续价格压成两级离散Token
一句话概括:KronosTokenizer 用二值球面量化(BSQ)把每个K线点编码成"粗码+细码"的层级 Token。机制上,编码器 Transformer 先将 OHLCV 数据投影到隐空间,BSQuantizer 将其量化为 s1 位粗粒度码与 s2 位细粒度码,解码器再分两级重建原始数据。类比:就像视频压缩里的关键帧加残差帧,粗码记录整体形态,细码补足局部细节。
自回归解码:只读历史,逐帧猜下一步
一句话概括:预测模型是 decoder-only 的因果 Transformer,预测下一步只能依赖已出现的历史 Token。模型先预测粗粒度 Token,再通过 DependencyAwareLayer 以其为条件预测细粒度 Token,并用时间戳嵌入保留时序信息。类比:像一位逐帧口译K线的译员,每次只根据已经念出的内容猜下一帧,天然与"不能偷看未来"的真实交易场景一致。
📊 效果与数据:可查证的指标与演示
- 官方说明预训练数据覆盖45+全球交易所,论文已被 AAAI 2026 接收(arXiv: 2508.02739)。
- 开源三个规格:Kronos-mini 4.1M 参数(上下文2048)、Kronos-small 24.7M、Kronos-base 102.3M(上下文512)。
- 官方示例用400根5分钟K线做回看、预测未来120根,输出价格与成交量的对照曲线;微调回测采用简化 top-K 策略,README 明确标注为演示流程而非生产级系统。
🚀 几分钟跑起来:安装与最小运行命令
前置条件:Python 3.10+,模型权重会自动从 Hugging Face 下载;示例脚本需要一个包含 open/high/low/close 和 timestamps 列的K线CSV(默认读取 examples/ 下的 600977 数据,可自行替换为自选标的)。
git clone https://gitcode.com/GitHub_Trending/kronos14/Kronos cd Kronos pip install -r requirements.txt python examples/prediction_example.py🔧 还能做什么:微调、回测与Web界面
- A股微调管线:finetune/ 提供 Qlib 数据预处理、tokenizer 与 predictor 两阶段训练、top-K 回测的完整脚本,配置集中在 finetune/ 下的 config.py。
- 自定义CSV微调:finetune_csv/ 支持用自己的CSV数据(官方演示为5分钟K线)做顺序微调,并生成历史与预测的对照图。
- 图形界面:webui/ 下运行 python run.py 即可在 7070 端口获得可视化预测页面,无需手写调用代码。
Kronos 把K线序列当作一种语言,用标记化加自回归建模给出了从单标的预测到回测验证的完整路径;想深入实现,从 model/kronos.py 的 KronosPredictor 与 README.md 的示例部分读起即可。
【免费下载链接】KronosKronos: A Foundation Model for the Language of Financial Markets项目地址: https://gitcode.com/GitHub_Trending/kronos14/Kronos
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考