分享

python - 计算金融资产日波动率和年波动率

 ly88 2023-07-11 发布于山西

年化波动率 = 日波动率 * sqrt(252)

注:假设一年有252个交易日。

# encoding: gbkimport akshare as akimport numpy as npfund_etf_hist_em_df = ak.fund_etf_hist_em(symbol='159915', period='daily', start_date='20230511', adjust='')# 计算对数收益率fund_etf_hist_em_df['收益率'] = np.log(fund_etf_hist_em_df['收盘'] / fund_etf_hist_em_df['收盘'].shift(1))fund_etf_hist_em_df = fund_etf_hist_em_df.iloc[1:, :]arr = fund_etf_hist_em_df['收益率'].to_numpy()# 计算样本标准偏差(日波动率)day_volatility = np.std(arr, ddof = 1)# 年波动率year_volatility = day_volatility * np.sqrt(252)print('日波动率', day_volatility)print('年波动率', year_volatility)

程序输出:

日波动率 0.01007860705964551年波动率 0.1599929270505717

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多