自 TRAE 先锋教师计划启动以来,TRAE 走进了清华大学、复旦大学、中国人民大学、北京邮电大学等高校课堂,助力教师把 AI Coding 真正融入操作系统、软件工程、金融量化等教学现场。
现在,计划将继续推进——扶持 100 位先锋教师用 TRAE 辅助开课,全班同学每人额外获得 6000 积分。湖南大学的《量化投资》正是其中一门课程。这堂课没有停留在"让 AI 写代码",而是用 TRAE 当助教,带着学生从 A 股的 CAPM beta 算起,分三步推导时变风险**与收益规律。
报名方式:加入 TRAE 先锋教师计划,全班同学每人可领 6000 积分。
bytedance.larkoffice.com/share/base/…
湖南大学量化教程实战:计算中国A股的(个股&行业)CAPM beta
以下内容基于唐国豪教授量化投资课程整理,作者:陈俊希、蒙思宇、王星尧、刘泽楚
数据准备:数据来自 CSMAR 国泰安数据库
公司基本信息
股票市场交易——公司文件——字段设置:全选——CSV 格式
无风险利率
汇率及利率——无风险利率文件——全选——CSV
月个股回报率
个股交易数据——月个股回报率文件——CSV
综合月市场回报率
综合市场交易数据——综合月市场回报率文件——CSV
参考程序
证监会行业指引文件,SAS版代码,Python版代码
[beta计算.zip]
程序编写
Step 1:计算行业beta并作图
1.利用 TRAE 辅助生成代码
提示词参考
我现在要计算行业的CAPM beta,
请你先将“公司基本信息”与“月个股回报率”文件夹中的两个CSV 文件合并(按照公司代码stkcd一一匹配)。
其次,按照行业分类代码nnindcd计算月度的股票行业收益率。
第三,将行业收益率与文件夹“综合月市场回报率”中markettype中21那个类型的数据合并。
第四,将“无风险利率”文件夹中月度无风险利率(日度数据保留每个月最后一个观测值)与第三步文件合并(注意:无风险利率是取百分号的,因此要除以100,因为其他几步收益率没有取百分号)。
第五,计算行业beta,并且作图。不懂的可以参考文件夹“参考程序”中的程序。请保留中间程序和所有的数据结果。
2.初步结果分析
我们重点关注低 beta 行业,先看哪些行业的 beta 值较低:
比如,农业(A01)是典型的低beta行业,绝大多数时间<1,只有在大牛市来临前中期会短暂突破1(2006-2007,2014-2015)。刚需或防御性行业(农业、公共事业等)平时对市场波动的敏感度较低,beta 通常小于 1;当 beta 短暂升至 1 以上时,可能反映市场情绪升温。
不是所有金融行业都是高 beta。从全样本结果看,某些细分行业(如货币金融服务 J66)的 beta 并没有想象中的高,甚至低于农业。
图表优化
第一次跑通时,我们通常只检查代码是否正确、是否满足基本要求,提示词里很少涉及图表美观;zero-shot 下,AI 也很难一次生成可直接放进报告的整洁图表。因此,基础结果确认无误后,再专门做一轮形式上的优化。
配色参考
以下整理了一些头部券商研报和学术期刊中常用的绘图配色,供大家参考,也可以在提示词中直接指定颜色和风格。
Step 2:各行业 beta 的时变特征
1.利用 TRAE 辅助生成代码
参考提示词
非常不错!请保存这份结果。随后使用 2000 年之后的数据,以过去60个月的收益率进行滚动回归,逐月估计各行业 beta。然后beta估计样本从2006年1月到样本截止月份。输出各行业时变的beta时间序列图。
2.初步结果分析
再看 beta 的变化:绝大多数行业的 beta 都是时变的。例如农业,甚至家居制造业等耐用消费品行业,beta 也会出现大于 1 的阶段;印刷行业的 beta 从小于 1 升至大于 1,可能与电子化程度提高有关。凡此种种都说明,beta 的时变性与交易行为密切相关。
汽车制造业的 beta 在 2020 年前较低,新能源周期开启后明显上升;文化艺术业的 beta 在 2020 年前后一度大于 1,目前已回落到 1 以下。
Step 3:计算个股 beta 及其与行业 beta 的差值
1.利用 TRAE 辅助生成代码
参考提示词
非常不错!接下来请你按照这个思路,把个股beta按照60个月滚动回归的方式估计出来,并生成一个CSV 表格。然后计算个股beta和对应行业beta的差值,把平均差值最大的50家公司时间序列图画出来。
2.初步结果分析
Top3:海汽集团(+1.93,道路运输业)、银之杰**(+1.83,软件信息)、中文在线(+1.28,新闻出版),均是个股 beta 系统性远高于行业 beta 的公司
这一步要回答的是:个股 beta 与行业 beta 的差值大小是否与交易相关。基本逻辑上,个股 beta 应与行业 beta 大体一致;这一步的作用正是找出偏离者,从中挖掘投资者情绪或异质信息的线索。
计算个股与行业的 beta 差值后,我们进一步研究:这一差值是否包含未来收益的信息?相对行业 beta 较低和较高的股票,其后续收益是否存在系统性差异?是否存在这样的规律:个股 beta 低于行业 beta 的股票,未来收益更高;反之,个股 beta 高于行业 beta 的股票,未来收益更差?
为提高 AI 的输出质量和代码可审查性,我们将第三步再拆成两部分。
Step 3.1
1.利用 TRAE 辅助生成代码
提示词参考
非常不错!请分别把这两类50家公司(正偏的前50家公司和负偏的前50家公司)的股票累计收益曲线(和图中的样本期一致)画在beta差值图中,曲线用绿色表示。绿线从每个图的起始时点、以初始净值 1 开始绘制,最后比较累计净值。
2. 初步结果分析
Step 3.2
1.利用 TRAE 辅助生成代码
提示词参考
谢谢!帮我在两类图上方,把期末净值大于1的股票名字变红。
2. 初步结果分析
个股 beta 与行业 beta 的差值可分为正向偏离与负向偏离两类:
-
若 beta 偏离具有均值回归特征,正偏离股票的 beta 可能回落,由此推测其后续收益相对较弱。
-
负偏离股票的 beta 可能回升,由此推测其后续收益相对较强。
所以,我们期待的答案是:负偏离那一组,平均收益可能更好。
若回测结果支持上述假设,可以进一步构建如下量化策略:每月计算个股 beta 与行业 beta 的差值,买入负偏离的公司,做空正偏离的公司。
进一步的优化方向是进行行业分类:目前我们使用的是证监会行业分类指引。
如果用年报、新闻、业务描述的相似度重新寻找“同行”,再计算差值,看看更合适的比较对象是否能改善预测。
报名方式: 报名 TRAE 先锋教师计划,通过后,全班同学每人可领 6000 积分。 bytedance.larkoffice.com/share/base/…