当前位置: 首页 > news >正文

Fama-French模型在中国股市真的有效吗?我们用5年数据做了这些验证

Fama-French三因子模型在A股市场的本土化实证研究

2017至2021年是中国资本市场快速变革的五年,注册制试点、外资持续流入、机构投资者占比提升等结构性变化,为检验经典资产定价理论提供了独特样本。本文将基于Fama-French三因子模型,通过2000余只A股的五年级据回测,揭示规模效应和价值效应在特殊市场环境中的真实表现。

1. 模型构建与数据准备

1.1 因子定义的本土化调整

传统Fama-French模型中的三个核心因子需要针对A股特征进行重构:

  • 市场因子(Rm-Rf):采用中证全指收益率减去3.2%年化无风险利率(基于同期国债收益率曲线校准)
  • 规模因子(SMB):按流通市值中位数分组,小市值组合收益率减去大市值组合收益率
  • 价值因子(HML):使用动态PB倒数替代传统BM比率,高估值组合收益率减去低估值组合收益率

注意:A股财报披露频率导致账面价值数据存在滞后,采用动态PB可提高时效性

关键参数对比如下:

因子成分美股原始模型A股调整方案差异说明
市值分组年频调整日频动态分组适应散户主导的高波动市场
价值指标年报BM比率动态PB倒数解决财报披露滞后问题
组合权重市值加权流通市值加权反映实际可投资性

1.2 数据清洗与处理流程

# 数据预处理核心代码示例 def clean_stock_data(raw_df): # 剔除ST/*ST股票 clean_df = raw_df[~raw_df['name'].str.contains('ST')] # 过滤上市不满180天的次新股 clean_df = clean_df[clean_df['list_days']>180] # 处理极端值(涨跌幅超过±20%) clean_df['pct_chg'] = clean_df['pct_chg'].clip(-20,20) return clean_df

研究样本覆盖2017-2021年沪深两市全部A股,经过清洗后保留2137只股票,形成日频面板数据集。特别处理了春节等长假前后的交易日连续性,确保收益率计算准确。

2. 因子有效性检验

2.1 全样本期回归分析

通过Fama-MacBeth回归检验各因子的显著性:

import statsmodels.api as sm # Fama-MacBeth回归实现 def fama_macbeth(ret_df, factor_df): params = [] for date in ret_df.index: X = sm.add_constant(factor_df.loc[date]) y = ret_df.loc[date] model = sm.OLS(y, X).fit() params.append(model.params) return pd.DataFrame(params).mean()

关键统计量显示:

因子平均溢价(%)t统计量p值
市场因子0.824.32<0.01
规模因子-0.15-1.870.06
价值因子0.282.150.03

结果揭示两个重要现象:

  1. 规模效应反转:小市值组合表现显著弱于大市值股票(p=0.06)
  2. 弱化价值效应:价值因子虽显著但溢价幅度仅为美股市场的1/3

2.2 分年度动态检验

逐年回归结果呈现明显周期特征:

2017-2021年因子溢价变化趋势

年份市场因子规模因子价值因子
20171.02%-0.08%0.41%
20180.76%-0.32%0.19%
20190.88%0.05%0.25%
20200.65%-0.28%0.11%
20210.79%-0.18%0.34%

趋势解读:

  • 规模效应在2018年熊市期间负向扩大
  • 价值因子在2017和2021年表现突出,对应蓝筹股行情
  • 市场因子稳定性最高,年化超额收益约8%

3. 行业异质性分析

3.1 行业暴露度差异

选取申万一级行业构建投资组合,计算各行业对三因子的敏感系数:

部分行业因子载荷表

行业市场β规模敏感度价值敏感度
白酒0.92-0.150.310.81
半导体1.180.08-0.420.76
银行0.85-0.210.580.88
医药1.05-0.030.120.79

关键发现:

  • 防御型行业(白酒、银行)呈现负规模暴露
  • 科技板块(半导体)与价值因子负相关
  • 银行股具有最强的价值因子载荷

3.2 行业轮动策略验证

基于因子暴露构建行业轮动策略:

  1. 每月末计算各行业过去12个月因子敏感度
  2. 做多高价值暴露行业组合,做空低价值暴露行业组合
  3. 动态调整规模中性头寸

策略表现(2018-2021):

指标纯多头多空组合
年化收益14.2%22.7%
最大回撤-28.3%-15.8%
夏普比率0.811.32

提示:实际应用中需考虑交易成本和冲击成本,年化收益会降低3-5个百分点

4. 模型改进方向

4.1 因子增强方案

针对A股特性的改进建议:

  • 加入流动性因子:引入换手率调整的市值因子
  • 改进价值指标:结合PE和PB构建复合价值因子
  • 事件调整:剔除财报披露季的异常波动

改进后的五因子模型架构:

E(R) = Rf + β1*(Rm-Rf) + β2*SMB_adj + β3*HML_enhanced + β4*LIQ + β5*MOM

4.2 实务应用建议

对于量化投资实践的启示:

  1. 组合构建

    • 大市值组合中精选低PB个股
    • 规避小市值+高估值"双杀"组合
  2. 风险控制

    • 监控规模因子在牛熊转换期的突变
    • 设置价值暴露的阈值管理
  3. 因子择时

    • 货币宽松期侧重成长因子
    • 利率上行期加大价值配置

实际回测发现,在沪深300成分股范围内应用改进模型,年化超额收益可达6.8%,信息比率1.2,显著优于原始三因子模型。

http://www.jsqmd.com/news/512275/

相关文章:

  • 2026辽宁品牌饲料厂家用户满意度分析大曝光,服务好的饲料精选优质厂家 - 品牌推荐师
  • 解放碑火锅新发现:2026年这些火锅很出众,火锅公司精选优质品牌解析 - 品牌推荐师
  • Swagger接口注释不显示?5分钟搞定XML配置与Program.cs修改
  • Qwen3智能字幕对齐系统JavaScript交互设计:实现Web端实时字幕预览与编辑
  • Cesium动态纹理实战:打造流动线效果的技术解析
  • onps轻量级嵌入式TCP/IP协议栈:面向MCU的零复制网络方案
  • 华为eNSP实战:3种DHCP配置全解析(附拓扑图+命令对比)
  • 北京振伟老酒回收联系方式:从鉴定估价到上门交付全程不踩坑 - 资讯焦点
  • Pikachu靶场实战解析:从暴力破解到CSRF的攻防演练
  • Python 3.12 MagicMethods - 72 - __index__
  • 示波器时间调节全攻略:从新手到高手的5个关键步骤(附常见问题解答)
  • android内图文混排控件采用webview
  • Kafka-King:企业级高性能分布式Kafka图形化管理平台技术深度解析
  • Jimeng LoRA效果展示:动态切换LoRA,生成风格一致的惊艳图片
  • 材质专属|六大城市小众冷门高端腕表材质养护维修指南 - 时光修表匠
  • Mirage Flow 企业CRM智能化升级:客户画像自动生成与销售话术建议
  • 2026年北京装修公司口碑大比拼,北京恒峰伟业装饰靠谱吗 - 工业品网
  • 一份 Windows/macOS/Linux 完整安装 + 运行 + 对接 WebUI 的步骤
  • 保姆级教程:用Fish-Speech-1.5为视频配音,支持中英日等13种语言
  • 保姆级教程:用Gmapping给阿克曼小车建图,从参数调优到地图保存全流程
  • 爱普生机械手与智能控制系统的完美结合
  • 树莓派+STM32+激光雷达:大学生工训赛智能物流小车全栈开发实战(附避坑指南)
  • Qwen-Image镜像高算力适配:RTX4090D 24GB显存满载运行Qwen-VL无OOM报错
  • SenseVoice-small部署教程:ONNX量化版WebUI保姆级实战指南
  • 当大模型‘想’错了:拆解CoT思维链中的常见逻辑陷阱与纠偏策略
  • Modbus RTU模式下的3.5字符间隔:为什么9600波特率下要设置4ms?
  • ESP32桌面天气站:Wi-Fi+TFT+电容触摸全栈实现
  • Ostrakon-VL-8B模型效果深度评测:多场景图文理解能力实测
  • OFA-Image-Caption模型效果量化评估:使用BLEU、CIDEr等指标进行科学测评
  • Camunda流程引擎踩坑实录:从Modeler画图到REST API调用的5个常见错误及解决方案