Kronos 开源K线预测大模型:3 步在本地跑通股票预测,规格怎么选一次讲清
2026/9/13 17:27:52 网站建设 项目流程

Kronos 开源K线预测大模型:3 步在本地跑通股票预测,规格怎么选一次讲清

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

Kronos 是少见的开源 K 线预测基础模型,用 45 家以上全球交易所的行情数据预训练,把 K 线序列量化成符号后自回归地预测未来走势。适合只想看效果的个人投资者、有自有 CSV 数据的开发者,以及要做批量回测的量化研究者。

⚡ 零代码到命令行:3 步完成第一次 K 线预测

第一步:装好环境

先确认本机是 Python 3.10+,然后克隆仓库并安装依赖:

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

依赖清单很短,核心就是 numpy、pandas、torch、matplotlib 几个包,装完即可用。

第二步:网页界面出第一张预测图

不想写代码就直接起 webui/:

cd webui python run.py

然后浏览器打开http://localhost:7070,按"选 CSV 文件 → 选模型和计算设备(CPU / CUDA / MPS)→ 拖时间窗口 → 点预测"四步操作。窗口固定为 400 个历史点加 120 个预测点;首次加载会去 Hugging Face Hub 下载模型权重,耐心等一会。

数据只认列名,最低要求如下:

列名是否必填说明
open、high、low、close必填四价,缺一不可
volume、amount可选没有就留空,批量预测时按 0 处理
timestamps / timestamp / date必填历史与未来两段数据各自的时间戳

第三步:用 KronosPredictor 接管批量预测

要进自己的代码,核心入口是 model/ 里的KronosPredictor:先从模型库加载 tokenizer 和模型,把它们和 max_context 交给预测器实例,再调用predict,传入历史 K 线 DataFrame、历史时间戳、未来时间戳、预测点数四样东西。归一化和反归一化它都替你处理了。

采样参数控制随机性,常用取值如下:

参数控制什么取值参考
T(温度)采样随机性0.1–2.0,网页界面建议 1.2–1.5
top_p核采样截断0.1–1.0,示例脚本常用 0.9
sample_count采样条数,多条取平均1–5,2–3 条更稳
lookback历史窗口长度small/base 建议不超过 512
pred_len预测点数如 120,需与未来时间戳对齐

一次要跑多只标的就用predict_batch,要求各序列的历史长度和预测长度一致。想要端到端脚本,直接看 examples/prediction_example.py;数据里没有成交量,也有对应版本 examples/prediction_wo_vol_example.py。

📐 mini / small / base 怎么按显卡选

四个规格对照

模型参数量上下文长度配套分词器开源状态
Kronos-mini4.1M2048Kronos-Tokenizer-2k已开源
Kronos-small24.7M512Kronos-Tokenizer-base已开源
Kronos-base102.3M512Kronos-Tokenizer-base已开源
Kronos-large499.2M512Kronos-Tokenizer-base未开源

三条选型经验

  • mini 只有 4.1M 参数,上下文却给到 2048,适合先拿长历史数据把流程跑通
  • small 是 README 示例的默认选择,速度和精度均衡,适合大多数入门场景
  • base 是开源系列里最大的,精度定位最高,显存和算力要求也水涨船高;large 目前没有放出权重,不用花时间找

一个容易忽略的点:small 和 base 的上下文上限是 512,你喂的 lookback 最好别超这个数,超了KronosPredictor会自动截断,等于白喂数据。稳妥做法是先拿 mini 验证数据格式和流程,再换大模型,少绕弯路。

🎼 为什么读得懂 K 线:"记谱 + 续写"的两段式原理

K 线同时带着开高低收和成交量五个维度,还混着大量噪声,传统时序模型很难一次消化。Kronos 的解法是两段式:先"记谱",再"续写",底层是 decoder-only 的 Transformer 家族。

分词器:给连续 K 线"记谱"

一段连续录音没法直接印成书,但乐谱可以——符号化的东西才能被印刷、传递、学习。Kronos 的分词器干的就是这件事:把 OHLCV 连续数据量化成分层离散符号,粗的一层记大轮廓,细的一层补进细节,两层叠起来信息不丢。

自回归:听前半段,续后半段

记好谱之后,模型在符号序列上做自回归预训练。类比一位乐手:听完整部曲目前半段,他能预判后半段的旋律走向,而且同类作品听得越多,判断越准。Kronos 在 45 家以上交易所的符号序列上预训练过,所以它不是只学过单一市场的"偏科生",而是见过多种市场"方言"的通用底模。论文已被 AAAI 2026 接收,核心实现就在 model/ 目录。

📈 效果怎么验证:预测图、回测曲线与个股示例

单标的预测对比图

跑通 examples/prediction_example.py 后会得到历史走势与预测叠加的对比图,预测贴合度一眼可查:

回测曲线:策略对基准

用 finetune/ 的 Qlib 流水线在 A 股日线数据上微调后,脚本会生成 top-K 策略相对基准的累计收益曲线:

沪深个股的真实输出

examples/yuce/ 里放着平安银行 000021 等四只 A 股的预测图,每张图都配了 JSON 分析报告,可以逐条核对模型对单只股票的输出细节:

🧪 进阶路线:按角色分流,以及离实盘还差什么

三条路线按角色选

你的情况推荐路线入口
只想看效果,不写代码网页界面webui/
有自己的 CSV 行情CSV 微调finetune_csv/,内置阿里港股 09988 五分钟线示例,改一份 yaml 就能训练
要自建量化策略Qlib 流水线finetune/,数据处理→分词器/预测器两阶段微调→回测

微调命令速查

环节命令
A 股路线依赖pip install pyqlib,并按 Qlib 官方文档备齐日线数据
数据预处理python finetune/qlib_data_preprocess.py
微调分词器(多卡)torchrun --standalone --nproc_per_node=卡数 finetune/train_tokenizer.py
微调预测器(多卡)torchrun --standalone --nproc_per_node=卡数 finetune/train_predictor.py
回测评估python finetune/qlib_test.py --device cuda:0
CSV 路线全流程python train_sequential.py --config configs/config_ali09988_candle-5min.yaml(在 finetune_csv/ 目录下执行)

A 股路线的路径和超参集中在 finetune/config.py,跑任何脚本之前先改它。

回测演示 ≠ 实盘系统

这条必须说在前面:官方明确标注,回测流水线只是演示,不是生产级交易系统。模型吐出来的是原始预测信号,离实盘还差一整套工程——组合优化、风险因子中性化(市场 beta、风格因子)、交易成本与滑点建模;top-K 策略本身也只是最简单的起点。把前面那张回测曲线当成收益承诺,是踩坑的第一步。

从一张 CSV 到可复现的预测曲线,Kronos 把读 K 线拆成了开源可查的每一步——剩下的是你的数据和判断。

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

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

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

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

立即咨询