# Kronos:把金融市场变成"语言"的基座模型,AAAI 2026 录用

> 如果你还在用 LSTM 或 Prophet 做行情预测——这篇可能让你重新思考时间序列建模的方向。


当 Transformer 遇上 K 线

金融时间序列预测领域一直存在一个核心矛盾:数据噪声极高、非平稳性极强,传统深度学习模型(LSTM、CNN、Transformer 直接堆叠)往往在训练集上表现尚可,一到实盘就全面崩盘。原因很简单——这些模型把金融数据当作普通数值序列处理,完全忽略了市场的分层结构和语义特征。

2025 年 8 月,arXiv 上出现了一篇名为 *Kronos: A Foundation Model for the Language of Financial Markets* 的论文,作者团队来自清华大学及合作机构。他们做了一个大胆的假设:如果 K 线(OHLCV)序列本质上是一种"语言"——价格波动是词汇,交易模式是语法——那么 Transformer 是否也能像理解自然语言一样理解市场?

答案令人惊讶地肯定。这篇论文已被 AAAI 2026 正式录用。更关键的是,开源实现已经上线 GitHub,参数最小仅 410 万,个人开发者即可运行。


核心架构:Tokenize 市场,再"读懂"行情

Kronos 的核心创新在于一套两阶段框架,彻底改变了金融数据的输入方式。

第一阶段:专用 Tokenizer。 传统做法直接将 OHLCV(开盘价、最高价、最低价、收盘价、成交量、成交额)送入模型。Kronos 则先用自研 Tokenizer 将这些连续多维数据量化为分层离散 token。这个设计巧妙地在保留价格层次关系的同时,将无限可能的连续值映射到有限的 token 空间——相当于给每段行情打标签。

第二阶段:Decoder-only Transformer。 在 token 化的 K 线序列上,Kronos 进行标准的自回归预训练。模型学习的是"给定过去 N 根 K 线,接下来会怎样展开"这一模式——与 GPT 学"给定前面文字,预测下一个词"在数学上是同构的。

这种设计的优势在于可迁移性极强。不同交易所、不同品种、不同时间周期的 K 线,经过同一个 Tokenizer 后都在同一语义空间内对齐,模型学到的不是某个具体股票的模式,而是"市场的语言"本身。


模型家族与开箱即用

Kronos 提供四个尺寸的预训练模型,覆盖从研究到生产的完整需求:

模型 参数量 上下文长度 许可 获取地址
Kronos-mini 4.1M 2048 ✅ 开源 [HuggingFace](https://huggingface.co/NeoQuasar/Kronos-mini)
Kronos-small 24.7M 512 ✅ 开源 [HuggingFace](https://huggingface.co/NeoQuasar/Kronos-small)
Kronos-base 102.3M 512 ✅ 开源 [HuggingFace](https://huggingface.co/NeoQuasar/Kronos-base)
Kronos-large 499.2M 512

快速上手示例——预测比特币未来走势:

# 安装依赖
pip install -r requirements.txt

# 一键预测(Python)
python examples/prediction_example.py
from model import Kronos, KronosTokenizer, KronosPredictor
import pandas as pd

# 加载模型
tokenizer = KronosTokenizer.from_pretrained("NeoQuasar/Kronos-Tokenizer-base")
model = Kronos.from_pretrained("NeoQuasar/Kronos-small")
predictor = KronosPredictor(model, tokenizer, max_context=512)

# 读取历史 K 线
df = pd.read_csv("./data/BTC_1h.csv")
df['timestamps'] = pd.to_datetime(df['timestamps'])

# 生成预测
pred_df = predictor.predict(
    df=df[['open','high','low','close','volume']],
    x_timestamp=df['timestamps'][:400],
    y_timestamp=df['timestamps'][400:520],
    pred_len=120, T=1.0, top_p=0.9, sample_count=1
)
print(pred_df.head())

项目还提供实时 Demo,可在线查看 BTC/USDT 的未来 24 小时预测曲线。


微调实战:接入中国 A 股回测

Kronos 最大的亮点之一是对中国市场原生友好——官方提供了基于微软 Qlib 的微调 Pipeline,一条命令即可完成从数据准备到策略回测的全流程:

# 1. 安装 Qlib 并下载 A 股日频数据
pip install pyqlib
pyqlib-cli download --days=2000

# 2. 预处理数据(切分训练/验证/测试集)
python finetune/qlib_data_preprocess.py

# 3. 微调 Tokenizer(多 GPU)
torchrun --standalone --nproc_per_node=2 finetune/train_tokenizer.py

# 4. 微调 Predictor
torchrun --standalone --nproc_per_node=2 finetune/train_predictor.py

# 5. 运行回测
python finetune/qlib_test.py --device cuda:0

回测脚本会自动输出累计收益曲线对比,直观展示微调后的模型相对于基准策略的表现。需要注意的是,官方声明该 Pipeline 为教学演示用途,实际生产中还需要配合组合优化模块和风险因子中性化处理。


总结:机遇与边界

Kronos 的开创性毋庸置疑——它是目前已知首个将金融市场统一建模为语言基座模型的尝试,且完全开源,MIT 协议意味着你可以商用而不必担心法律风险。对于量化研究入门者来说,它是一个极佳的起点;对于有经验的量化开发者,它的 Tokenization 思路值得借鉴到其他金融子领域。

但必须清醒认识其边界:当前模型输出的只是原始预测信号,直接用于交易远远不够。一套完整的量化策略还需要仓位管理、止损规则、交易成本建模等工程组件。此外,large 版本未开源是个遗憾——499M 参数的性能上限仍未知。

选型建议:学术研究或快速验证想法 → Kronos-small(够用且免费);生产环境部署 → base 起步 + 结合业务场景微调;纯前端可视化 → 直接用在线 Demo 无需本地部署。


*数据来源: GitHub Trending · Kronos GitHub · 论文 arXiv:2508.02739*

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。