两阶段离散化建模范式
底层范式是先把连续OHLCV量化为层级离散token,再在token序列上做自回归预训练;这相当于为金融时序建立一套“可学习的字表与语法”。
Kronos 的核心思路是把金融市场的K线序列当作一种可建模的“语言”。它先用专用tokenizer把连续、多维的OHLCV压缩成层级离散token,再用解码器式自回归Transformer在token序列上做预训练,从而把预测、生成与下游任务统一到同一种表示空间。模型权重与Tokenizer可以直接从 Hugging Face 拉取,并提供面向工程的Predictor接口,把归一化、截断、采样与反归一化做成可复用管道。需要进一步贴合你的资产、频率与交易制度时,可以用 Qlib 组织数据与回测流程,再用torchrun做两阶段微调(tokenizer与predictor),把“研究笔记”推进到可回归的训练与评估闭环。
| ✕传统痛点 | ✓创新方案 |
|---|---|
| 把金融时序直接喂给通用模型,往往会被噪声与尺度差异击穿:同一套特征与分布假设在不同市场/频率下会迅速漂移。 | Kronos 用两阶段“离散tokenizer→自回归预训练”把连续OHLCV变成可学习的token语言,让建模目标与表示更稳定、可迁移。 |
| 传统时间序列方案把分桶、归一化、采样与评估散落在脚本里,实验难复现,结论难在团队内复用与回归。 | 通过Predictor与成套微调脚本,把训练、推理与评估路径固化为可配置管道,便于A/B对比与回归测试。 |
1git clone https://github.com/shiyu-coder/Kronos.git && cd Kronos && python -m venv .venv && . .venv/bin/activate1pip install -U pip && pip install -r requirements.txt1python examples/prediction_example.py1pip install pyqlib && python finetune/qlib_data_preprocess.py1torchrun --standalone --nproc_per_node=2 finetune/train_tokenizer.py && torchrun --standalone --nproc_per_node=2 finetune/train_predictor.py| 核心场景 | 目标人群 | 解决方案 | 最终收益 |
|---|---|---|---|
| 量化研究的价格路径预测基线 | 量化研究员 | 把多资产K线序列统一成token语言做预测与对比 | 用同一评测口径快速迭代特征与策略输入,减少实验不可复现 |
| 跨市场数据的表示学习与迁移 | 多市场/多交易所团队 | 用统一Tokenizer对齐不同市场频率与尺度 | 降低分布漂移带来的建模成本,把迁移学习变成工程可控流程 |
| 信号生成与回测管道一体化 | 策略工程团队 | 把预测输出转换为可交易信号并接入回测 | 形成训练—推理—回测的闭环,便于回归与版本对比 |
