请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

每日的夏普转换为年,乘于根号252为一年的夏普,分母是(每日的标准差)如何推导?

如题,学渣求解`

def calculate_sharpe(code):
    '''
    计算股票的夏普比率
    :param code:
    :return:
    '''
    data = ds.get_csv_price(code, 'price') # 打开file
    daily_return = data['close'].pct_change() # 计算daily涨幅
    avg_return = daily_return.mean() # daily平均
    
    sharpe = avg_return/daily_return.std()
    sharpe_year = sharpe*np.sqrt((252)) # 转换年夏普
    

正在回答

2回答

不知道这个是不是金融分析里用来做近似计算的通用方法,但是这个计算个人认为及其不严谨,并且非常容易把人搞晕,特别是数学基础不好的。

按年计算的平均收益等于按日平均收益的252倍是没有错的。但是计算标准差时,公式里所需要的每年的收益数据,只有在每天收益完全相等的情况下,才能也按照252来乘,这种情况下根号内分母累加的每一组年收益-年平均收益,都可以换算成252p-252p(平均),把相同系数252提出去,乘以公式中有的平方,在和分母换算成年需要提出的一个252系数抵消一半,就是252开平方,不过这种情况,标准差本来就是0,算来也没有意义。只要不是每天收益相同,严格推到公式就一定不是这样简单乘以一个系数的结果。

想不明白为什么不能直接按年获取多年的价格数据,再来计算按年的夏普值呢。而要用这种数学推到明显有问题的方式来算。

如果我的理解有错,向老师道歉,但如果我理解没有错,这种似是而非的推到,会浪费大家很多时间,希望老师能够更加严谨一点。


2 回复 有任何疑惑可以回复我~
  • 同意你的观点, 日标准差变年标准差这块  应该是算错了,乘了个根号252,一下就蒙了
    回复 有任何疑惑可以回复我~ 2022-01-22 21:33:59
  • 同感!
    回复 有任何疑惑可以回复我~ 2022-03-29 14:35:54
提问者 探寻神性的汪星人 2021-07-16 01:59:09

谢了,大概是懂了。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信