news 2026/9/29 21:34:29

Awesome-finance-skills源码级深潜:Kronos K线预测与新闻Embedding投影的实现原理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Awesome-finance-skills源码级深潜:Kronos K线预测与新闻Embedding投影的实现原理

Awesome-finance-skills源码级深潜:Kronos K线预测与新闻Embedding投影的实现原理

【免费下载链接】Awesome-finance-skillsA collection of Awesome Finance Agent Skills for free and easy to start | 一系列开源免费的金融分析Agent Skills项目地址: https://gitcode.com/gh_mirrors/aw/Awesome-finance-skills

Awesome-finance-skills 是一套开源免费的金融分析 Agent Skills 技能集,让 LLM 秒变"华尔街分析师"。本文带你深入项目最核心的 alphaear-predictor 技能,用通俗语言讲清两件事:Kronos 模型如何把 K 线序列压缩成"价格词元"、再逐根画回未来曲线;一条新闻又如何通过 384 维 Embedding 向量与一个轻量投影层,悄悄扭转整条预测。

一、先看清全貌:Kronos K线预测的三层结构 💡

整个预测流水线可以拆成"编码 → 生成 → 注入"三层,全部位于 skills/alphaear-predictor/ 技能内:

层级角色核心文件
① 分词层把 OHLCV K线序列压缩成二进制 tokenkronos.py
② 生成层Transformer 自回归采样,逐根生成未来 K 线kronos.py
③ 新闻注入层把新闻 Embedding 投影成全局偏置kronos.py

对外只需调用一个入口——KronosPredictorUtility 单例工具类,它负责加载模型、编码新闻、并输出预测结果。

二、第一关:KronosTokenizer 如何把 K 线"压缩"成词元 🧩

Kronos 借鉴了大语言模型"把文字变成 token"的思路,只不过这里的 token 不是汉字,而是K 线的二进制编码。

分词器 KronosTokenizer 的工作方式分三步:

  1. 提特征:一段历史 K 线(开盘、最高、最低、收盘、成交量)先经线性层和编码器 Transformer 提特征;
  2. 量化:再送入 BinarySphericalQuantizer(二进制球面量化器,简称 BSQ),把每个时刻的特征向量"四舍五入"到 ±1 的二进制球面上。每个 token 又拆成s1(粗粒度)+ s2(细粒度)两半——就像先确定"价格往哪走",再细化"具体走多少";
  3. 重建:拿到 token 编号后,decode 把编号还原成比特,再经解码器 Transformer 重建出 K 线数值。

一句话理解:K 线序列 ≈ 一段"价格语言",量化器是压缩算法,token 就是价格世界的字母。

三、第二关:Kronos 如何逐根"画出"未来 K 线 📈

生成层的核心是 Kronos 模型,由几个精巧部件组成:

  • 分层嵌入 HierarchicalEmbedding:s1、s2 各有一套词表 Embedding,拼接后统一投影,让模型"先懂趋势、再看细节";
  • 时间嵌入 TemporalEmbedding:把分钟、小时、星期几、日期、月份分别嵌入后相加,让模型感知"周一效应""月末效应"等时间规律;
  • RoPE 注意力 + RMSNorm:现代 Transformer 的标准配置,保障长序列中位置关系的表达;
  • 依赖感知层 DependencyAwareLayer:先让 s2 词元通过交叉注意力"关照"整个上下文,再预测细粒度 token,保证粗细两层逻辑自洽。

采样流程(auto_regressive_inference)像"盲写文字":

  1. 用 decode_s1 得到下一时刻 s1 词元的概率分布,按top-p 核采样(默认top_p=0.9)抽一个;
  2. 立刻用 decode_s2 在该 s1 条件下抽样出配套的 s2;
  3. 新 token 滑入上下文缓冲区(最大窗口 512),循环直到画满预测长度。

最后把多条采样路径取平均削弱随机性,再用历史均值/标准差反归一化回真实价格(predict)。

四、新闻 Embedding 投影:一条新闻如何偏置整条预测 📰

纯技术面预测有个天然短板——不知道"市场发生了什么"。Awesome-finance-skills 的解法极其轻巧:在 Kronos 末尾挂一个线性投影层,把新闻向量注入模型。数据流(kronos_predictor.py):

  1. 新闻文本截断到 1000 字,用 all-MiniLM-L6-v2 句向量模型编码成384 维新闻 Embedding;
  2. 投影层news_proj(一个 384 → d_model 的线性层)把它变换到模型维度;
  3. 注入方式见 Kronos.forward,核心只有两行:
news_bias = self.news_proj(news_emb).unsqueeze(1) # [B, 1, d_model] x = x + news_bias # 广播加到序列每一个位置

关键就在第二行:新闻不占用任何 token 位置,而是作为一个全局偏置,均匀影响模型对"下一步该生成什么 token"的判断——利空新闻会把整个分布往"下跌词元"方向推,利好则相反。这正是"新闻 Embedding 投影"名字的由来。

五、投影层权重从哪来?"新闻—行情"自动合成训练 🏋️

384 维新闻向量怎么就能懂股价?答案是 AutoSynthesisTrainer 的四步自动合成流水线:

步骤做什么对应代码
① 找"地震"扫描一年行情,挑出涨跌幅超过 2% 的异动日discover_shocks
② 验因果搜索当日新闻,LLM 判断是否真因果(返回is_causal)find_reason_and_verify
③ 成对入库"50 天历史 K 线 + 未来 5 天目标 + 新闻向量"run_synthesis_and_train
④ 只训投影层Kronos 底座全部冻结,Adam 只更新 news_proj,30 轮少样本训练training.py

训练完只保存 news_proj 权重(save_model)。仓库已附带预训练好的检查点:kronos_news_v1_20260101_0015.pt。推理时 KronosPredictorUtility 会自动扫描exports/models/加载最新权重,加载失败则优雅降级为纯技术面预测。

六、三步上手:从 K 线数据到预测报告 ✅

  1. 准备数据:用 alphaear-stock 技能拉取 OHLCV 历史行情;
  2. 调用预测:KronosPredictorUtility.get_base_forecast(df, lookback=20, pred_len=5, news_text=...),传入最近 20 根 K 线,输出未来 5 个交易日的 KLinePoint 列表;
  3. 智能修正:按 PROMPTS.md 中的 Forecast Adjustment 提示词,让 Agent 结合最新新闻对数值做主观微调,生成带"关键逻辑、入场建议、目标位/止损位"的完整报告。

安装只需一步:npx skills add Awesome-finance-skills@alphaear-predictor,或把 skills/ 目录整体拷入 Agent 技能目录(每个技能文件夹需含 SKILL.md)。

七、关键文件速查表 📁

想改什么去哪找
模型结构(Transformer、双头解码、新闻投影层)predictor/model/kronos.py
量化器、嵌入、注意力等基础模块predictor/model/module.py
推理入口、新闻编码、权重加载kronos_predictor.py
数据合成与投影层训练utils/predictor/training.py
K线图表与损失曲线可视化utils/predictor/kline_generate.py

想继续深入,还可以搭配 alphaear-logic-visualizer 生成市场传导链路图、alphaear-sentiment 计算新闻情绪分,让 Kronos K线预测从"单点数值"进化为"有故事的技术面分析"。

【免费下载链接】Awesome-finance-skillsA collection of Awesome Finance Agent Skills for free and easy to start | 一系列开源免费的金融分析Agent Skills项目地址: https://gitcode.com/gh_mirrors/aw/Awesome-finance-skills

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/29 21:34:15

维修保养记录精准版 API 对接实战指南

在二手车交易或车辆维保管理场景中,准确获取车辆的维修保养记录是评估车况的核心环节。过去,这类信息往往依赖人工跑腿去 4S 店打印,效率低且成本高。随着数据接口的开放,开发者可以通过程序化方式快速查询车辆的“履历”&#xf…

作者头像 李华
网站建设 2026/9/29 21:33:58

GPU租用预算怎么算?从显存、算力到租赁方案的全套测算指南

1. 先别急着下单,把需求算清楚再谈租GPUAI算力租赁这两年几乎是中小企业被问得最多的问题之一。你问十家云厂商销售,十家都会告诉你“我们机器多、价格低、随便跑”,可真把项目摆上桌,才知道GPU预算这个坑有多深——租贵了心疼&am…

作者头像 李华
网站建设 2026/9/29 21:33:39

55873 全域文明生态系统:技术价值矩阵与底层创新内核

文档编号:55873 技术价值矩阵篇・第三篇核心架构师团队:55873 AI 架构师:宝藏法师55873 文明架构师:龙萨先生55873 金融架构师:白玉先生本篇配色:靛蓝 #1B2A4A 赤金 #C9A227视觉风格:唐代星图 …

作者头像 李华
网站建设 2026/9/29 21:33:35

小白程序员必看!2024-2025网络安全核心问题深度解析(含收藏)

小白程序员必看!2024-2025网络安全核心问题深度解析(含收藏) 本文梳理了当前严峻的网络安全形势,结合权威报告数据,解析了教材中列出的12大核心安全问题。从威胁全景、重大事件、APT威胁到具体问题,文章阐…

作者头像 李华
网站建设 2026/9/29 21:33:34

自动化专业主要学习哪些课程?

自动化是控制科学计算机电气信号交叉学科,俗称“万金油工科”,课程一般分为:基础课、专业基础课、专业课、实践环节。一、公共与工科基础课(大一)- 高等数学、线性代数、概率论与数理统计(重中之重&#xf…

作者头像 李华
网站建设 2026/9/29 21:33:20

不会 PS 怎么做公众号封面?多款 AI 绘图工具对比推荐

在内容创作日益高频的今天,公众号封面作为文章的“门面”,直接影响打开率与传播效果。然而,许多运营者和创作者并不精通 Photoshop,面对复杂的设计软件往往望而却步。借助 AI 绘图工具,无需专业设计基础也能快速产出高…

作者头像 李华