Kronos Skill:金融 K 线首个开源基础模型,AAAI 2026 接收
在 GitHub Trending 今日榜上,一只专门”读懂”K 线语言的金融基础模型正以 +217 stars/天的速度走红。Kronos(https://github.com/shiyu-coder/Kronos)是全球首个针对金融 K 线序列的开源基础模型,已被 AAAI 2026 接收,论文登上 arXiv(2508.02739),正在被全球量化团队搬进生产 pipeline。
功能与原则
Kronos 是一个专为金融市场设计的 Decoder-only 基础模型,专注于 K 线(OHLCV 开盘/最高/最低/收盘/成交量)序列建模。核心设计原则:用专门的两阶段框架处理金融数据的高噪声特性——
- 第一阶段:专用 Tokenizer 将连续多维 K 线数据量化为层级离散 token
- 第二阶段:大型自回归 Transformer 在这些 token 上预训练,作为统一模型服务多种量化任务
不同于通用时序基础模型(TSFM),Kronos 不试图”复用 NLP 模型硬塞金融数据”,而是把金融时序当作一种独立的”语言”重新设计架构。
认可度
- Star 数:35,800+(截至 2026-08-04),今日 +217
- Fork:6,000+
- Watch:305
- HuggingFace 模型系列(NeoQuasar/Kronos-*)已被社区广泛下载
- AAAI 2026 已接收(2025-11-10 公布)
- 论文 arXiv: 2508.02739
- GitHub Trending 多次上榜
链接
https://github.com/shiyu-coder/Kronos
原作者
主要作者团队(论文署名):Yu Shi, Zongliang Fu, Shuo Chen, Bohan Zhao, Wei Xu, Changshui Zhang, Jian Li。GitHub 仓库主要维护者 @shiyu-coder,活跃贡献者包括 @Luciferbobo、@CharlesJ-ABu、@AnMakc、@randyy179 等。来自清华大学 / 产业界量化研究背景,专注把 LLM 范式迁移到金融时序建模。
介绍
Kronos 解决的是一个长期被忽略的痛点:金融时序本质上和文本、图像、语音一样是”一种语言”,但绝大多数 TSFM 都把金融数据当成普通时间序列硬塞 Transformer,结果在高频噪声下表现糟糕。
Kronos 的核心创新是把 K 线先 token 化:训练一个专门的 Tokenizer 把连续的 OHLCV 序列压缩成离散 token,再用大型自回归 Transformer 在 token 流上预训练。这意味着 Kronos 可以统一处理多种量化任务——预测、信号生成、回测、组合优化都能用同一个底座。
预训练数据覆盖全球 45+ 交易所的 K 线数据,确保模型见过不同市场制度(牛/熊/震荡/闪崩)。发布完整模型家族 4 个尺寸,从 4.1M 参数的 mini 适合轻量实验,到 499.2M 的 large 适合重负载量化研究,覆盖 4 种部署场景。
特点
- 首创 K 线专用 Tokenizer:把连续 OHLCV 量化成分层离散 token,从根源上解决金融数据高噪声建模难题
- 完整模型家族:Kronos-mini(4.1M)/ small(24.7M)/ base(102.3M)/ large(499.2M),4 档尺寸覆盖从教学到生产
- 统一多任务底座:一个预训练模型同时服务价格预测、信号生成、回测评估,无需为每个任务训练专模
- 学术背书强:AAAI 2026 接收,论文公开 arXiv,复现门槛低
- 完整 Finetune Pipeline:内置 Qlib 数据准备 + torchrun 多卡训练 + 完整回测脚本,A 股场景示例开箱即用
使用方法
安装:
git clone https://github.com/shiyu-coder/Kronos.git
cd Kronos
pip install -r requirements.txt
单资产预测(最小示例):
from model import Kronos, KronosTokenizer, KronosPredictor
import pandas as pd
# 1. 加载预训练模型
tokenizer = KronosTokenizer.from_pretrained("NeoQuasar/Kronos-Tokenizer-base")
model = Kronos.from_pretrained("NeoQuasar/Kronos-small")
predictor = KronosPredictor(model, tokenizer, max_context=512)
# 2. 准备数据(必须含 open/high/low/close 列)
df = pd.read_csv("./data/XSHG_5min_600977.csv")
df['timestamps'] = pd.to_datetime(df['timestamps'])
lookback, pred_len = 400, 120
# 3. 生成预测
pred_df = predictor.predict(
df=df.loc[:lookback-1, ['open','high','low','close','volume','amount']],
x_timestamp=df.loc[:lookback-1, 'timestamps'],
y_timestamp=df.loc[lookback:lookback+pred_len-1, 'timestamps'],
pred_len=pred_len, T=1.0, top_p=0.9, sample_count=1
)
多资产批量预测:使用 predict_batch() 一次性处理多个 DataFrame,GPU 自动并行。
使用场景与人群
- 量化研究员 / 量化交易团队:用 Kronos 作为底座,finetune 出自家策略的预测/信号模型
- 金融科技 / 资管公司:把 Kronos 集成到回测平台,作为新因子生成的统一接口
- 机器学习研究者:探索”领域专用基础模型”的设计范式(金融时序 + Tokenizer + 自回归 Transformer)
- AI 应用开发者:构建基于 Kronos 的市场情绪分析 / 价格预警 / 投资辅助工具
输入与输出案例
案例 1:A 股单只股票日内预测
- Input:600977(中文传媒)5 分钟 K 线数据,400 个时间点(OHLCV + amount),预测未来 120 个 5 分钟 K 线
- Output:返回 120×6 的 DataFrame(open/high/low/close/volume/amount),可与真实 K 线对比画出预测 vs 实际曲线图
案例 2:A股全市场批量信号生成 + 简单回测
- Input:通过
python finetune/qlib_data_preprocess.py处理 Qlib 全市场 A 股日频数据;多卡 finetune Tokenizer 和 Predictor;用python finetune/qlib_test.py --device cuda:0跑回测 - Output:输出 Top-K 选股策略的累计收益曲线、与基准(沪深 300)的对比图、性能指标(年化收益、夏普比率、最大回撤等)。演示用 Qlib 框架完整串联数据 → 训练 → 评估全流程
Kronos 之所以在 Trending 上持续走红,根本原因是它把”金融时序”从附属任务升级为独立的基础建模领域,并给出了可复现的开源参考实现。对于 AI 圈它代表”领域专用 FM”的新范式,对于金融圈它代表”LLM-style 预训练”终于正式杀进 K 线建模——两边的人都能用,是它真正的破圈之处。
评论区
登录后可评论。