IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    年化收益率是什么意思 如何计算

    qthinker发表于 2023-11-27 10:08:54
    love 0

    年化收益率是衡量投资收益回报的重要指标。它是把当前收益率(例如日收益率、周收益率、月收益率)换算成年收益率来计算的,并不是真正的已取得的收益率。以日收益率为例,反算为年化收益率,可以简单理解为,按照过去每日的收益的一个平均情况,维持在这个水平上,平均一年能赚到多少个百分点,年化收益率是一个复合的年增长率。QThinker Plus 上提供了这个计算工具,可以直接计算。下面说一下计算方法。

    具体到计算上,一般有两种方式计算年化收益率:

    一、通过日收益率序列计算年化收益率

    这种计算,通常以资产期初价值为1,先计算期末的累计收益率,然后用期末收益率开周期天数次方后减一,得到年化收益率。伪代码如下:

    # 计算历史回报占一年天数的比率
    num_years = len(returns) / ann_factor
    # 以资产期初价值为1,计算期末累计收益率
    ending_value = cum_returns_final(returns, starting_value=1)
    # 对期末收益率开num_year次方后 - 1 得到年化收益率
    annual_return = ending_value ** (1 / num_years) - 1

    这里需要注意的是ann_factor这个变量,这个变量的取值需要和returns,即回报序列匹配。如果你的returns序列不包含假期,比如股市投资的日收益率序列,那么对应的ann_factor这个变量应该设置为252,即一年的交易日数量。如果你的returns序列是包含假期的,比如你持有货币基金,周末也有收益,那么这个ann_factor应该设置为一年的天数,即365。

    二、通过期初期末资产数值及持有天数计算年化收益率

    直接给个函数,里面的365是与入参days对应的,如果days这个持有天数是包含假期的自然日天数,则设置为365,如果days是不包含假日的交易日天数,则为252。

    def cal_annual_return(start:float , end:float , days:int) -> float:
        pct = end/start
        return pct ** ( 1 / ( days / 365 )) - 1



沪ICP备19023445号-2号
友情链接