如何获取公司两年日报价数据的调整系数以计算Beta并对比IBOV同期表现
计算Beta调整系数并与IBOV同期表现对比的实操步骤
一、准备匹配的收益率数据
- 提取目标资产的日/周度收益率:公式为
(当日收盘价 - 前一日收盘价) / 前一日收盘价,时间范围建议取2-5年(样本量足够保证回归可靠性) - 同步提取IBOV指数的同期日/周度收益率:计算逻辑和资产收益率完全一致,必须剔除双方无交易的日期,保证时间维度1:1匹配
- 避坑:别用月度数据,样本量太少会导致回归结果偏差极大
二、计算原始Beta值(线性回归法)
Beta本质是资产收益率与IBOV收益率的协方差除以IBOV收益率的方差,用线性回归直接求解最方便:
- 回归模型:
资产收益率 = α + β*IBOV收益率 + ε,模型输出的β就是原始Beta - 工具实现:
- Excel:用
SLOPE(资产收益率区域, IBOV收益率区域)函数一键得出结果 - Python:用
statsmodels库实现,示例代码:
- Excel:用
import pandas as pd import statsmodels.api as sm # 假设df包含asset_return(资产收益率)、ibov_return(IBOV收益率)两列 X = sm.add_constant(df['ibov_return']) ols_model = sm.OLS(df['asset_return'], X).fit() raw_beta = ols_model.params['ibov_return']
三、计算调整Beta(获取调整系数)
原始Beta会随时间漂移,行业通用Blume调整法修正,核心是均值回归逻辑:
- 调整公式:
调整后Beta = 原始Beta * 0.67 + 1 * 0.33 - 逻辑:长期来看,单个资产的Beta会趋近于市场平均(即1),所以用0.67和0.33的权重向1靠拢,让Beta更具参考性
四、与IBOV同期表现对比
- 先算核心对比指标:
- 累计收益率:资产和IBOV分别用
(期末收盘价/期初收盘价) - 1计算,直接看资产跑赢/跑输幅度 - 调整后Beta:若Beta>1,说明资产波动强于IBOV,上涨弹性大但下跌风险更高;若Beta<1,波动弱于IBOV,走势更稳健
- 超额收益α:回归模型的截距项
α,α>0代表资产在IBOV的基础上有额外收益,α<0则相反
- 累计收益率:资产和IBOV分别用
- 对比逻辑:结合调整Beta和累计收益率,判断资产的风险收益特征是否匹配预期——比如Beta>1但累计收益率低于IBOV,说明资产承担了更高风险却没拿到对应收益
五、关键注意事项
- 数据要干净:剔除资产停牌、IBOV成分股调整的日期,避免异常值干扰回归结果
- 时间周期验证:不同周期的Beta可能差异明显,建议同时计算1年、3年的调整Beta做交叉验证
- 数据源可靠:IBOV和资产的收盘价从正规金融数据平台或巴西交易所官方渠道获取
内容的提问来源于stack exchange,提问作者Ariel Schreiber Dines
相关产品推荐
相关产品推荐

