ESG投资策略
Table of Content
ESG投资策略¶
1.前言¶
前情提要
在上一篇文章中我们下载了akshare中所有有关ESG的数据,结果各个平台上都只提供截面数据,比较遗憾。但是作者还是在别的平台上下载到了ESG评分的时间序列数据,包括华政和wind评级。
该文中会对各个机构评出的ESG指标进行分层收益分析,因为下载的ESG均是以季度为频率的,所以我们的调仓频率也是一季度一次。 但我们的回测还是会按照日度来生成对应的相关指标,所以我们依然需要长期的日度数据。 在进行任何的回测之前,如果可以先把数据下载到本地然后直接读取本地的数据相信会更快。 以下是通过本平台可以提供的数据进行一个数据的预下载处理: ```python import pandas as pd import os start = datetime.date(2009, 1, 1) end = datetime.date(2023, 12, 29) universe = -1
获取所有股票¶
df = load_bars(start, end,-1) df.to_parquet('daily_data.parquet') ```
数据获取到之后,我们的分析 接下来,让我们来对ESG进行分层收益结果:
2.分析步骤¶
2.1数据清理¶
读取华政和 Wind 的 ESG 数据以及全市场日线数据。 剔除 ST 股票、异常日期和空值,保留必要字段(股票代码、日期、评分),按日期和股票排序。
2.2评分分层¶
对每个披露日的 ESG 得分进行横截面排序并分层。 层数可调(默认 10 层),第 1 层为最低评分的 10%,第 10 层为最高评分的 10%。 该过程会分别对华政综合得分、E/S/G 子项得分以及 Wind ESG 评级独立执行。
2.3日度收益率计算¶
从全市场日线行情中计算每只股票的日收益率,剔除异常值与极端涨跌(默认截尾 0.5% 分位)。 确保样本干净,避免极端波动干扰层内均值。
2.4将评级扩展到日线¶
将季度或不定期披露的 ESG 评级扩展到日度频率, 并采用 T+1 生效机制(即评级在披露后一交易日才生效), 保证信号和收益的时间顺序不被污染。
2.5分层回测¶
对每个交易日、每一层计算等权平均收益,过滤掉成分过少的层(默认 ≥10 支股票)。 利用 QuantStats 库快速计算各层与多空组合的主要绩效指标: 年化收益、波动率、夏普比率、最大回撤、Calmar 比率、Sortino 比率、胜率等。
2.6 可视化与报告输出¶
生成四类图表: * 各层累计收益曲线 * 多空策略收益与回撤 * 核心绩效指标对比 * 指标汇总表格
此外,还为每个策略自动输出 QuantStats HTML 报告。
3.wind结果分析¶

上图右上角为第十层和第一层多空交易的结果,可以看到从2019到2021年进行ESG投资是有盈利希望的,然而回顾大部分投资期限,也只有这3年的投资是可以呈现正收益的,其余情况表现并不好,那么从年化收益来看呢,ESG最高的第十组年化收益也并不出众。 那ESG高的企业是一点都没用了吗? 答案是否定的,我们可以发现,尽管第十层ESG高组别的股票年化收益最低,但其最大回撤也处于一个相对低值。分析ESG评分由低到高,最大回撤像一个二次函数先变高再变低。 这个情况说明了ESG低和高的企业的股票的波动都相对较小
4.华政数据多维分析¶
华政提供了更多的评级数据,包括单独的E,S和G评分,因此我们可以绘制四幅分层收益分析图:
4.1华政综合得分¶

4.2华政E评分¶

4.3华政S评分¶

3.4华政G评分¶

5综合比较¶
ESG策略短期内并不具备显著的超额收益能力,但它在风险控制与长期稳定性方面的潜力开始显现。这或许意味着ESG并不是“能立刻赚钱”的策略,而是一种“能延缓亏钱”的策略——尤其当政策与社会预期进一步强化ESG约束后,高ESG企业的资本成本将逐步下降,其长期价值将被市场重新定价。
如需获取完整代码可以订阅「Quantide Research」平台360元的会员。平台介绍及付费方式参见下文。