大a都上4千点了,来看一个“股票研究报告(ERR)自动生成”,输入输出如下:
- 输入 :给定公司股票代码(s)和研究日期(t),自动采集6类结构化/非结构化数据,构成输入集合S=[O, F, A, N, P, M]
- O:公司基础信息(如行业分类、市场定位)
- F:财务指标(利润表、资产负债表、现金流量表)
- A:公司公告(董事会决议、季度报告等)
- N:公司相关新闻(经筛选去重)
- P:历史股价数据
- M:市场指数(如沪深300)
- 输出 :符合行业规范的ERR报告,包含6个核心模块:财务分析(R_fin)、新闻分析(R_news)、经营发展分析(R_manage)、风险分析(R_risk)、投资潜力评估(R_invest)、推荐评级(R_rec,买/卖)
方法包含数据集构建、多智能体框架设计、模型训练优化三大模块,下面具体看看实现。
数据集构建-FinRpt数据集
数据集构建流水线、数据采集模块和数据集增强模块
为支撑模型训练和评估,论文设计了自动化数据集构建流水线,核心分3步:
1. 数据收集模块
- 数据源
6 种数据类型相对应的数据内容和数据源
- 数据范围:沪深800指数的800只股票,2024年9月3日-11月5日(共10个分析日期,间隔1周)
2. 数据筛选与生成
- 筛选规则:剔除缺少财务指标、新闻数量<2条、公告摘要<300字的低质量数据
- 报告生成:用FinRpt-Gen框架(初始基于GPT-4o)自动生成ERR,形成原始样本(s, t, S, R)
3. 数据集增强模块
- 推荐评级校正:对比生成报告的R_rec与真实股价趋势,不一致则重新生成
- 专家报告校正:检索东方财富网的专家报告,让GPT-4o参考专家报告优化生成报告的准确性、逻辑性和专业风格
- LLM润色:用GPT-4o优化报告的可读性、连贯性和逻辑流畅度
- 最终数据集:6825条高质量ERR样本(含中英文版本),按9:1:1划分训练集(5556)、验证集(617)、测试集(652)
FinRpt 数据集来自不同行业的报告比例
FinRpt-Gen多智能体框架
FinRpt-Gen 框架
针对ERR结构复杂、需多维度分析的特点,设计了包含9个智能体的分层框架,分3大模块协同工作:
1. 信息提取模块(4个智能体):从原始数据中提取关键信息
- 新闻提取智能体:对新闻N按股价影响度排序,筛选Top10关键新闻
- 收入提取智能体:从利润表F中提取营收、净利润、每股收益(EPS)等核心指标
- 资产提取智能体:从资产负债表F中提取资产、负债、权益等关键数据
- 现金提取智能体:从现金流量表F中提取经营/投资/融资活动现金流
2. 分析模块(4个智能体):生成ERR的核心分析章节
- 财务分析智能体:基于3个财务提取智能体的输出,总结公司财务健康度、盈利能力和现金流状况,生成R_fin
- 新闻分析智能体:基于Top10新闻,分析其对股票未来表现的影响,生成R_news
- 经营分析智能体:从公司公告A中提炼管理层策略、发展轨迹,生成R_manage
- 风险分析智能体:整合财务、新闻、经营分析结果,识别核心风险(如政策风险、仿冒风险),生成R_risk
3. 预测模块(1个智能体):生成投资建议与评级
- 预测智能体:输入R_fin、R_news、R_risk,结合历史股价P和市场指数M,生成投资潜力评估(R_invest)和推荐评级(R_rec)
- 评级规则:若预期股价涨幅超沪深300指数则为“Buy”,否则为“Sell”
模型训练优化:SFT+RL
针对框架中4个核心智能体(财务分析、新闻分析、经营分析、预测),采用“监督微调+强化学习”的两阶段训练:
1. SFT学习专业分析范式
- 数据:使用FinRpt数据集中对应模块的标注样本(输入为提取模块输出,输出为高质量分析章节)
- 方法:采用LoRA(低秩适配)微调,仅更新低秩适配器参数Δθ,避免全量微调的高资源消耗
- 优化目标:最大化生成目标文本的似然概率
其中θ₀为预训练模型原始参数,D_demo为各智能体的演示数据集
2. 强化学习(RL):优化投资预测准确性
- 针对对象:仅优化预测智能体(核心影响投资建议有效性)
- 算法:采用DAPO(动态采样策略优化),基于PPO改进,确保训练稳定性
- 奖励函数:综合评估推荐评级准确性和投资分析质量,权重分配为α=0.6(评级准确性)、β=0.2(ROUGE-1)、γ=0.2(ROUGE-L)
优化目标:最大化裁剪后的代理目标,避免策略更新幅度过大
五、评估系统:全面衡量ERR生成质量
设计了包含“基础指标+LLM专业评估”的双维度评估体系,确保评估的全面性和专业性:
1. 基础指标(5个)- 量化文本质量与预测准确性
- 完成率(CompletionRate):生成报告是否符合6章节格式要求
- 准确率(Accuracy):推荐评级(Buy/Sell)的正确性
- 语义相似度(BERTScore/ROUGE-L):与专家报告的语义对齐程度
- 数字覆盖率(NumberRate):生成报告中财务数字的丰富度(对比专家报告)
2. LLM专业评估(6个维度):评估金融专业性
- 财务数字(FN):财务数据准确性与分析深度
- 新闻相关性(News):新闻分析的相关性与全面性
- 公司/市场/行业洞察(CMI):对公司管理、市场趋势的理解
- 投资逻辑(Invest):投资建议的合理性与论证充分性
- 风险分析(Risk):风险识别的全面性
- 写作质量(Writing):连贯性、可读性与逻辑一致性
- 评估方式:用GPT-4o作为Judge Agent, pairwise对比不同模型生成的报告,计算调整胜率(Win Counts + 0.5×Tie Counts)/总样本数
实验性能
FinRpt-Gen 与基准方法在基础指标评估下的性能比较
消融实验
参考文献:FinRpt: Dataset, Evaluation System and LLM-based Multi-agent Framework for Equity Research Report Generation,https://arxiv.org/pdf/2511.07322v1
repo:https://github.com/jinsong8/FinRpt
