
Kronos 股票K线预测从数据准备到批量回测的完整流程【免费下载链接】KronosKronos: A Foundation Model for the Language of Financial Markets项目地址: https://gitcode.com/GitHub_Trending/kronos14/KronosKronos 股票K线预测模型是一个面向金融市场的开源基础模型能对 OHLCV 行情数据做自回归预测。这份指南覆盖环境搭建、单只股票K线预测、批量预测与回测验证四个环节读完可以跑通第一条预测流水线并知道如何扩展到多标的场景。前置准备与项目初始化依赖项最低版本推荐配置Python3.103.10PyTorch2.0.02.x CUDAhuggingface_hub / pandas / matplotlib0.33.1 / 2.2.2 / 3.9.3按 requirements.txt 锁定版本GPU 显存—small 档 ≥8GBbase 档 ≥16GB最小可运行命令如下git clone https://gitcode.com/GitHub_Trending/kronos14/Kronos cd Kronos pip install -r requirements.txt与指南相关的目录model/模型与 Predictor 实现、examples/推理示例脚本、finetune/Qlib 微调流水线、finetune_csv/CSV 微调流水线。模型权重首次运行时由from_pretrained自动从 Hugging Face Hub 拉取。核心机制拆解Tokenizer 量化与自回归生成两级框架先离散化再生成Kronos 把K线预测拆成离散化 自回归生成两级。第一级是 Tokenizer用两级码本把连续的 OHLCV 数据量化成分层离散 token第二级是在 45 个以上全球交易所 K 线上预训练的 decoder-only Transformer推理时逐 step 自回归地生成未来 token。设计意图是让模型先学会市场的语言再在这个语言上做下一根K线的生成式预测。左侧为 Tokenizer 量化模块右侧为自回归预测模块共同完成从K线 token 化到预测序列的流程从 DataFrame 到预测序列的管线KronosPredictor封装了完整管线输入归一化 → Tokenizer 离散化 → 自回归采样温度 T、核采样 top_p、多路径 sample_count→ 反变换最终输出与输入同结构的预测 DataFrame。用户侧只需传入一个 DataFrame 和两段时间戳序列。可用的模型档位如下模型参数量最大上下文Kronos-mini4.1M2048Kronos-small24.7M512Kronos-base102.3M512端到端实操跑通第一条预测流水线准备 5 分钟K线数据示例脚本examples/prediction_example.py读取 examples 目录下data/XSHG_5min_600977.csv该文件不在仓库中需自行准备同格式 CSV 并放入examples/data/。必需列为timestamps / open / high / low / closevolume / amount可选。执行预测并查看输出python examples/prediction_example.py脚本的核心调用如下取 400 根历史K线作为输入预测未来 120 根predictor KronosPredictor(model, tokenizer, max_context512) pred_df predictor.predict( dfx_df, x_timestampx_timestamp, y_timestampy_timestamp, pred_len120, T1.0, top_p0.9, sample_count1, )控制台会打印pred_df的头部并弹出上下两栏图上栏收盘价、下栏成交量。蓝色为真实值红色为预测值预测段前半段跟随真实走势随步数增加偏差逐渐放大长程预测宜视为趋势参考微调与回测验证需要适配特定市场时跑 finetune/ 的 Qlib 流水线改config.py路径 → 预处理切分 → 依次微调 Tokenizer 与 Predictor → 回测。若数据是 CSV 格式可直接用 finetune_csv/配置关键项如下data: data_path: /path/to/your/data.csv lookback_window: 512 predict_window: 48 max_context: 512 training: batch_size: 32python finetune/qlib_data_preprocess.py python finetune/qlib_test.py --device cuda:0回测脚本会输出绩效指标和累计收益曲线左为策略对基准的累计收益右为超额收益曲线演示采用简化的 top-K 信号策略结果不代表实盘表现在 CSV 数据上微调后仓库提供了港股阿里巴巴 5 分钟K线的逐窗口预测结果示例浅蓝为完整历史深蓝为模型输入窗口红色为预测段批量预测与性能参考predict_batch接收 DataFrame 列表与对应时间戳列表内部将其堆叠为 (B, seq_len, feat) 张量后在 GPU 上并行生成。约束条件所有序列的 lookback 与 pred_len 必须一致每个 DataFrame 需含 OHLC 四列缺volume / amount会自动补 0。大批量时建议分批调用以控制显存。数据规模处理方式耗时参考Kronos-small单卡pred_len12050 只单批一次数分钟200 只分 2~3 批约 10 分钟1000 只分批循环40~60 分钟以上为粗估实际取决于 GPU 型号、pred_len 与 sample_count。指数成分股全量扫描把沪深 300 全部成分股的日频K线导出为 CSV用predict_batch分批生成未来 N 日收盘价预测。将 300 只股票的预测涨跌幅汇总成排序表即可得到次日增强策略的候选池或因子筛选输入无需逐只重跑。行业板块轮动监测每个行业取若干代表股批量预测其短期走势后按行业聚合得到各板块的预期动量。当某板块的整体预测与近端实际走势出现明显分歧时作为板块轮动观察信号供人工复核候选名单。常见问题与延伸阅读批量预测 OOMbatch 过大或 sample_count 偏高拆小批次或改用 Kronos-mini数据列名不匹配open/high/low/close 缺一即报错volume/amount 可缺上下文超过 512small/base 的 max_context 为 512lookback 建议不超过示例数据缺失data/XSHG_5min_600977.csv 不在仓库内需自备并放入 examples/data/值得进一步阅读的文档与代码model/kronos.pyTokenizer、Transformer 与采样逻辑实现examples/prediction_batch_example.py多序列批量预测最小示例finetune_csv/README_CN.mdCSV 微调完整流程说明【免费下载链接】KronosKronos: A Foundation Model for the Language of Financial Markets项目地址: https://gitcode.com/GitHub_Trending/kronos14/Kronos创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考