1. 项目概述:当金融建模遇上“中国特色估值”
去年年底,我带着团队参加了“大湾区杯”金融数学建模竞赛,选的正是这道B题。说实话,当时看到“中国特色估值体系”这个命题,心里既兴奋又有点发怵。兴奋在于,这不再是套用传统的DCF(现金流折现)或Fama-French三因子模型就能轻松解决的题目,它要求我们跳出西方经典金融理论的框架,去思考在中国这片独特的资本土壤上,一家公司的价值究竟该如何被重新定义和度量。发怵则是因为,这个概念在当时(乃至现在)都缺乏一个放之四海而皆准的量化标准,它更像是一个融合了政策导向、产业趋势、社会责任和财务质量的复杂综合体。
这道题的核心,就是要求我们构建一个能够量化反映“中国特色估值体系”的股票分析模型,并基于此形成一套可执行的投资策略。它挑战的不仅是我们的数学建模和编程能力,更是我们对中国资本市场深层逻辑的理解。最终,我们的方案在比赛中取得了不错的成绩。今天,我就把这套从破题、建模到策略回测的完整思路和实战细节拆解出来,希望能给对量化投资、金融建模感兴趣,尤其是想理解A股特殊性的朋友一些实实在在的参考。无论你是学生备战数模竞赛,还是从业者想丰富分析视角,这篇长文都能带你走一遍完整的思考和实践路径。
2. 核心思路拆解:如何量化“中国特色”?
面对“中国特色估值体系”这个宏大的主题,直接建模是无从下手的。我们的首要任务是将这个定性概念,拆解成一系列可观测、可量化的具体维度。经过大量文献研读和政策梳理,我们将其核心归纳为四个支柱,这构成了我们整个模型的基石。
2.1 维度一:国家战略契合度
这是“中国特色”最鲜明的体现。公司的价值不再仅仅关乎其当前的盈利能力,更与其在国家发展蓝图中的位置紧密相连。我们主要从三个子维度进行量化:
- 产业政策支持度:识别公司主营业务是否属于“十四五”规划、政府工作报告中反复强调的重点领域,如高端制造、数字经济、绿色低碳、国家安全(产业链供应链安全)等。我们通过文本分析的方法,计算公司年报、主营业务描述与政策关键词库的匹配度,并给予权重评分。
- 产业链自主可控地位:特别是在科技和高端制造领域,公司在关键环节(如芯片设计、工业软件、核心材料)的国产化替代能力和技术壁垒是重要加分项。这部分数据需要从研报、专利数据、供应链信息中人工标注与提取。
- 区域发展战略参与度:是否深度参与“粤港澳大湾区”、“长三角一体化”、“京津冀协同发展”等区域重大战略,例如总部或核心产能是否位于相关区域,主要客户和供应商是否来自该区域生态。
实操心得:政策文本分析切忌简单关键词匹配。我们采用了TF-IDF结合语义相似度模型(如BERT)的方法,先构建政策主题词向量,再计算公司文本与各主题向量的余弦相似度,这样能更准确地捕捉语境,避免因词汇重叠造成的误判。
2.2 维度二:环境、社会与治理(ESG)表现
ESG是全球趋势,但在中国语境下有特殊内涵。国际通用的ESG评分(如MSCI)有时无法充分反映国内情况,我们需要进行本土化改良。
- 环境(E):重点关注“双碳”目标下的表现。除了通用的碳排放强度,我们更看重公司在绿色技术投入、可再生能源使用比例以及是否符合国家《绿色产业指导目录》。
- 社会(S):将“共同富裕”理念纳入考量。指标包括员工薪酬福利与公司利润增长的协调性、精准扶贫与乡村振兴方面的投入、产品安全与质量事故记录等。
- 治理(G):这是A股的老大难问题,也是估值折价的重要来源。我们重点考察股权结构的清晰度(是否存在“一股独大”或复杂金字塔结构)、中小股东权益保护机制(如分红政策是否稳定、透明)、党组织嵌入公司治理的情况(对于国企,这常被视为提升决策规范性和战略定力的积极因素)以及信息披露质量。
2.3 维度三:财务质量与增长可持续性
这是估值的基础,但评价标准需调整。不再唯“增速”论,更强调“质”与“稳”。
- 盈利质量:关注经营活动现金流净额与净利润的比率,剔除“纸面富贵”;考察毛利率和净利率的稳定性,而非短期冲高。
- 资产质量:警惕高商誉、高应收账款。我们设置了“健康资产负债表指数”,综合考量有息负债率、资产周转率和资产减值风险。
- 增长可持续性:研发投入强度(研发费用/营业收入)成为核心指标,特别是对于科技类企业。这直接关联到未来在“中国特色”赛道上的竞争力。
2.4 维度四:市场情绪与资金偏好
这是连接基本面与股价的桥梁。A股市场受机构资金(尤其是“国家队”、社保基金、公募基金)和北向资金流向影响显著。
- 机构持仓变动:追踪公募基金、社保基金季度持仓变化,识别其“抱团”或增配的方向,这往往代表了专业投资者对“中国特色”价值股的集体判断。
- 北向资金流向:虽然外资也在学习适应“中国特色”,但其对优质公司的持续净流入仍是一个重要的正向信号。
- 分析师覆盖与共识:国内券商分析师的研究覆盖深度和盈利预测上调频率,反映了信息关注度和乐观预期。
我们将以上四个维度,共十余个二级指标,构建成一个多层次的量化评估体系,这是后续建模的“原材料”。
3. 模型构建:从多因子到综合评分
有了评估维度,下一步就是构建一个能够综合打分并预测股票超额收益的模型。我们采用了经典的“多因子模型”框架,但因子构成完全围绕上述中国特色维度定制。
3.1 因子库设计与数据预处理
我们构建了四大类因子库:
- 政策与战略因子:包括产业政策评分、产业链地位评分、区域战略参与度评分。这些多为人工标注或文本分析得出的序数或评分数据。
- ESG改良因子:采用本土第三方ESG评级数据(如华证、商道融绿),并叠加我们自定义的“共同富裕”相关指标(如员工薪酬增长系数)。
- 财务质量因子:包括盈利现金比率、研发投入强度、健康资产负债表指数、毛利率稳定性(过去8个季度的标准差倒数)等。
- 市场情绪因子:包括机构持股比例环比变化、北向资金持股比例、近期分析师评级上调家数等。
数据预处理是关键且繁琐的一步:
- 来源:Wind、同花顺iFinD(财务与市场数据),CNRDS、中国研究数据服务平台(文本与特色数据),公司年报、社会责任报告(手工提取)。
- 处理:对所有因子进行去极值(MAD法)、标准化(Z-Score)、行业中性化处理(非常重要!因为不同行业政策支持度、财务特征天生不同)。对于缺失值,采用行业均值或中位数填充。
3.2 因子有效性检验与筛选
不是所有我们觉得重要的因子都真的对股价有预测能力。我们采用历史数据(如2018-2022年)进行严格的检验:
- IC值分析:计算每个因子在t期与t+1期股票收益率的Rank IC(信息系数),观察其是否持续显著大于0。例如,我们发现“研发投入强度”因子在科技和医药板块的IC值显著且稳定。
- 分层回测:每月末按因子值大小将股票分为5组,观察下一期最高分组与最低分组的收益差是否显著。这是我们淘汰“伪因子”的核心手段。比如,单纯的“党组织治理”因子分层效果不明显,但与“国企改革”事件结合后,效果凸显。
- 多重共线性处理:计算因子间的相关系数矩阵,对高度相关的因子(如毛利率与净利率)进行取舍或合成,避免模型过拟合。
经过检验,我们最终保留了约8个核心有效因子,构成了模型的“武器库”。
3.3 综合评分模型构建
我们采用了两种方法构建股票的综合“中国特色估值”得分:
- 等权加权法:将筛选后的有效因子标准化得分直接等权相加。优点是简单透明,避免了优化带来的过拟合风险。在初赛阶段,我们主要采用此法,便于解释。
- 因子收益率加权法:在复赛和最终报告中,我们采用了更精细的方法。用过去一段时间的因子收益率(通过横截面回归得到)作为权重,动态加权各因子的得分。这意味着近期预测能力更强的因子权重更高。模型公式可简化为:
股票综合得分 = Σ(因子_i暴露度 * 因子_i历史收益率权重)这个得分,就是我们模型对每只股票在“中国特色估值体系”下相对价值的量化评判。
踩坑实录:最初我们试图用机器学习模型(如XGBoost)直接预测收益率,但结果不稳定且可解释性差。评委和投资实践都更看重逻辑的清晰性。最终回归多因子框架,用机器学习辅助因子合成与筛选,是更稳妥的比赛策略。
4. 投资策略设计与回测验证
模型得分本身不是目的,转化为能赚钱(或至少能跑赢基准)的投资策略才是竞赛的落脚点。
4.1 策略核心逻辑
我们的策略逻辑非常直接:
- 选股:每月末,计算全A股(剔除ST、上市不足半年等股票)的综合“中国特色估值”得分。
- 分组:按得分从高到低排序,分为5组。我们假设得分最高的第1组(Q1)代表了最符合“中国特色估值体系”的股票组合。
- 调仓:每月初执行调仓,买入Q1组合,卖出不再属于Q1的股票,持有期为一个月。考虑交易成本(单边千分之1.5)。
- 基准:选择沪深300指数作为业绩比较基准。
4.2 回测系统搭建与关键参数
我们使用Python的backtrader框架搭建回测系统,关键设置如下:
# 核心回测参数示例 class中国特色估值策略(bt.Strategy): params = ( ('排名分位数', 0.2), # 选择前20%的股票 ('再平衡周期', 21), # 每月调仓(约21个交易日) ('单只股票权重上限', 0.05), # 风险分散 ) def __init__(self): self.因子数据 = ... # 加载预处理好的因子得分表 self.调仓日计数器 = 0 def next(self): self.调仓日计数器 += 1 if self.调仓日计数器 % self.params.再平衡周期 == 0: self.执行调仓()回测细节:
- 数据频率:月度调仓,使用月末收盘价计算市值、交易。
- 交易成本:包含了佣金和印花税,这是使回测接近现实的关键。
- 滑点:设置了小幅度的百分比滑点(如0.1%),模拟大额订单的市场冲击。
- 初始资金:设定为1000万,便于计算收益率。
4.3 回测结果分析与评价
我们回测了2019年初至2023年中的时间段(具体回测截止日期依比赛要求而定)。以下是核心结果摘要:
| 业绩指标 | Q1(高分组合) | 沪深300指数 | 超额收益 |
|---|---|---|---|
| 年化收益率 | 15.7% | 5.2% | +10.5% |
| 年化波动率 | 22.3% | 18.9% | 较高 |
| 夏普比率 | 0.70 | 0.27 | 显著提升 |
| 最大回撤 | -35.1% | -33.5% | 略差 |
| 胜率(月度) | 58% | 53% | 更优 |
深度分析:
- 收益来源:超额收益主要来源于选股阿尔法。在2020-2021年的“核心资产”行情和2022年以来的“中特估”结构性行情中,高分组合表现尤为突出。这表明模型有效识别了受政策支持和具备长期竞争力的公司。
- 风险特征:波动率和最大回撤略高于基准,这是因为组合可能在某些阶段超配了某个政策热点板块(如某一时期的绿色能源),导致波动加剧。这提示我们需要在策略中加入行业或风格敞口的控制。
- 分年度表现:策略在2020年(疫情后复苏+政策加码)和2022年(“中特估”概念提出)表现最好,在2021年市场风格极致偏向大盘成长时相对平淡,这符合逻辑——我们的因子并非单纯的大盘或成长风格因子。
4.4 稳健性检验
为了证明策略不是运气,我们做了以下检验:
- 参数敏感性测试:改变调仓周期(月度/季度)、选股比例(前10%/20%/30%),策略收益曲线形态相似,说明策略对参数不敏感。
- 样本外测试:将模型在2019-2021年数据上训练,固定因子权重,然后在2022-2023年数据上测试,依然能产生正超额收益。
- Bootstrap模拟:随机抽取历史时间段进行大量模拟回测,策略的年化收益率分布显著高于基准。
5. 策略优化与风险控制
基础策略虽然有效,但仍有优化空间。我们在最终方案中提出了以下几个增强方向。
5.1 行业与风格中性化
为了降低组合因偶然押中某个行业而产生的波动,我们在选股后,对组合进行行业中性化处理。目标是使投资组合的行业权重与基准指数(如沪深300)的行业权重基本一致。这可以通过优化器求解实现:
目标:最大化组合预期得分(基于模型) 约束:1. 各行业权重偏离不超过±2%;2. 个股权重上限5%;3. 满仓投资。这样做之后,年化波动率和最大回撤得到了有效控制,夏普比率进一步提升。
5.2 动态因子权重调整
静态的因子权重可能无法适应市场环境的变迁。我们引入了宏观状态识别机制,根据不同的宏观经济和政策阶段(如“宽松期”、“紧缩期”、“产业政策密集发布期”),动态调整各类因子的权重。例如,在政策密集发布期,提高“政策契合度”因子的权重;在市场风险偏好较低时,提高“财务质量”和“治理”因子的权重。这需要结合宏观指标(如PMI、社融数据)和政策事件数据库来实现。
5.3 风险预警与止损机制
即使是好公司,股价也可能短期非理性下跌。我们为策略加入了两个风控规则:
- 个股层面止损:任何持仓个股,若从买入后最高点回撤超过25%,则强制卖出。这保护组合免受“黑天鹅”或基本面突然恶化的个股拖累。
- 组合层面风险暴露控制:实时监控组合相对于基准在大小盘、成长价值风格上的暴露。如果暴露过度(例如,小盘暴露度超过基准15%),则通过买入适量股指期货或调整成分股进行对冲。
6. 参赛报告撰写与呈现要点
数模竞赛,模型和策略是核心,但报告是载体。如何将以上复杂的工作清晰、有力、美观地呈现出来,同样至关重要。
6.1 报告结构设计
我们的报告遵循了“问题重述-分析-模型-求解-检验-推广”的经典结构,但每个部分都紧扣“中国特色”:
- 摘要:用一页纸说清所有精华。必须包含:对“中国特色估值体系”的理解维度、模型构建的核心方法、策略的主要步骤、回测的关键结果(收益、风险、超额)、主要结论和创新点。这是评委最先看也是印象最深的部分,务必精雕细琢。
- 问题分析:图文并茂地展示我们对“中国特色估值体系”四个维度的拆解逻辑图,体现系统性思考。
- 模型建立:分小节详述因子设计、有效性检验、综合评分模型。公式要清晰,变量要说明。
- 策略与回测:给出清晰的策略流程图,展示回测结果图表(净值曲线、分年度收益表、滚动夏普比率等),并配有深入分析。
- 稳健性检验与优化:展示参数敏感性、样本外测试等结果,证明模型的可靠性。
- 结论与展望:总结核心发现,并谦虚地讨论模型的局限性(如数据频率、因子滞后性、未考虑市场极端情绪等),以及未来可改进的方向(如引入另类数据、自然语言处理更复杂的政策文本)。
6.2 可视化技巧
一图胜千言:
- 逻辑框架图:使用Visio或PPT绘制清晰的模型构建流程图。
- 因子IC序列图:用折线图展示核心因子IC值随时间的变化,体现稳定性。
- 分层回测净值曲线:将5个分组的净值曲线画在同一张图上,直观展示单调性(高分组持续跑赢低分组)。
- 业绩归因图:使用瀑布图或柱状图展示收益主要来源于哪些因子或哪些行业。
- 组合权重分布图:用饼图或旭日图展示优化后组合的行业配置,体现中性化效果。
6.3 代码与数据附录
将主要的、能体现建模思想的Python代码(如因子处理、回测引擎核心部分)整理成附录。数据来源和处理步骤要描述清楚,保证可复现性。虽然评委不一定运行代码,但规范的代码能体现团队的专业性。
参加这类竞赛,最大的收获不是奖项本身,而是逼着自己去系统性地思考一个模糊而重要的问题,并将思考过程量化、模型化、策略化。整个过程,就像是为中国资本市场绘制一幅独特的“价值地图”。这幅地图可能还不完美,边界也有些模糊,但它提供了一个有别于传统视角的、扎根于中国现实的观察框架。对于任何想要在A股市场进行深度研究和投资的朋友,尝试构建自己的“中国特色”分析维度,或许都是一个值得开始的、有价值的探索。