根据日收益率,计算:

  • 复合年化增长率
  • 年化波动率
  • 夏普比率

示例代码如下:

示例代码

import pandas as pd
import numpy as np
import mathdef cal_sharp(daily_returns: np.ndarray, rf=0, period=252):"""计算夏普比率:(投资组合期望收益率 - 无风险收益) / 投资组合波动率"""Er = daily_returns.sum() / len(daily_returns) - rf / period  # 每日的平均收益 - 每日的无风险收益sharp = Er / daily_returns.std() * math.sqrt(period)return sharpdef cal_volatility(daily_return: np.ndarray, period=252):"""策略年化波动率"""vol = np.sqrt(period) * np.std(daily_return)return voldef cal_cagr(daily_return: pd.Series):"""复合年化增长率"""cum_return = daily_return.add(1).cumprod()  # 净值序列time_days = (cum_return.index[-1] - cum_return.index[0]).days  # 累计收益的天数return np.power(np.abs(cum_return[-1]), 365 / time_days) - 1  # power(净值,1/持续年份) -1def main():"""data.sum()/n 为 n 天利润百分数平均值rf / 252 对应日无风险利益:return:"""n = 200  # 数据天数rf = 3  # 假设年无风险利率data = np.random.normal(size=(n))  # 随机生成日增长率# 关于 period(数值,意义):(252,日夏普),(52,周夏普),(12,月夏普),(1,年夏普)daily_return = pd.Series(data, index=pd.date_range(start='2020-01-01 00:00', periods=n))print("年化增长率:", cal_cagr(daily_return))print("年化波动率:", cal_volatility(daily_return.values))print("夏普比率:", cal_sharp(daily_return.values, rf=rf))if __name__ == '__main__':main()

python计算复合年化增长率、年化波动率与夏普比率相关推荐

  1. python金融分析小知识(34)——年化收益率、年化波动率以及夏普比率的计算

    Hello 大家好,我是一名新来的金融领域打工人,日常分享一些python知识,都是自己在学习生活中遇到的一些问题,分享给大家,希望对大家有一定的帮助! 大家好呀 好久不见!最近忙的事情太多了 没来得 ...

  2. 用python怎么样实现图像二值化_使用Python+OpenCV如何实现图像二值化

    使用Python+OpenCV如何实现图像二值化 发布时间:2020-10-26 14:15:52 来源:亿速云 阅读:77 作者:蛋片鸡 这篇文章运用简单易懂的例子给大家介绍使用Python+Ope ...

  3. 阿里云何川:开放兼容的云,计算巢帮助合作伙伴云化升级

    简介:保障业务稳定性,提供安全的云上互联网,助力合作伙伴实现规模化,打通多渠道分发. 12月21日,在阿里云弹性计算年度峰会上,阿里云弹性计算高级产品专家何川发表了题为<开放兼容的云,计算巢帮助 ...

  4. GDAL+Python实现栅格影像处理之栅格矢量化及矢量栅格化

    GDAL+Python实现栅格影像处理之栅格矢量化及矢量栅格化 相关概念 使用方法 效果展示 相关概念 栅格矢量化:将栅格数据生成矢量数据. 矢量栅格化:将矢量数据生成栅格数据. 使用方法 栅格矢量化 ...

  5. 手写数字图片数据之python读取保存、二值化、灰度化图片+opencv处理图片的方法

    python 读取.保存.二值化.灰度化图片+opencv处理图片的方法 进行手写数字的图片预测的时候碰到了这样的问题. 先说说处理图片有三种方式 一.matplotlib 二.PIL 三.openc ...

  6. Python项目实战 —— 01. 疾病预测结构化数据

    Python项目实战 Python项目实战--目录 Python项目实战 -- 01. 疾病预测结构化数据 一.背景 二.解题思路 三.数据分析 3.1 数据清洗 3.2 数据分析 3.2.1 相关系 ...

  7. 【金融、量化系列】计算股票历史期望收益率(年化)、收益率标准差(年化)、夏普比率、以及股票之间月收益率的相关系数,并以夏普比率、相关系数为条件筛选股票

    使用akshare获取股票数据,利用月度数据计算每只上证50成分股的股票历史期望收益率(年化).收益率标准差(年化).夏普比率.以及股票之间月收益率的相关系数,并以夏普比率.相关系数为条件筛选股票.挑 ...

  8. 使用Python实现基于强化学习与游戏化学习典型算法

    作者:禅与计算机程序设计艺术 随着现代社会和互联网的快速发展,基于网络.移动终端等新型信息技术的应用也越来越多,为人类提供了无限可能.同时,由于计算机科学和互联网技术的飞速发展,计算机已逐渐成为人类社 ...

  9. python -- 计算 平方、乘方、平方根_从零开始学习PYTHON3讲义(二)把Python当做计算器...

    <从零开始PYTHON3>第二讲 上一讲我们说过了如何启动Python IDLE集成开发学习环境,macOS/Linux都可以在命令行执行idle3.Windows则从开始菜单中去寻找ID ...

  10. 计算机python程序设计导论,程序设计导论:Python计算与应用开发实践(原书第2版)...

    程序设计导论:Python计算与应用开发实践(原书第2版) 语音 编辑 锁定 讨论 上传视频 <程序设计导论:Python计算与应用开发实践(原书第2版)>是2018年机械工业出版社出版的 ...

最新文章

  1. android qq三方登录授权失败,QQ第三方登陆授权失败110401原因及解决办法分享
  2. 文件下载--服务器端编程操作
  3. 单变量离散傅里叶变换DFT原理及实现
  4. 她半年内举报了755篇问题论文,专挑中国“下手”?还牵扯到北大副校长.........
  5. 机器学习之线性回归(matlab)
  6. 徐扬:互联网营销下的移动营销
  7. 蓝牙学习笔记(八)——BLE 4.0 的128Bits/32Bist/16Bits的UUID
  8. Tensorlayer深度强化学习之Tensorlayer安装
  9. 射线包含于凸集的充要条件
  10. MySql Server 5.5安装教程
  11. Kindle 3---原系统下的字典的使用
  12. 2D游戏新手引导点光源和类迷雾实现
  13. 【论文阅读】Are We Ready For Learned Cardinality Estimation?
  14. android 高德地图线路规划,路线规划-Android平台-开发指南-高德地图车机版 | 高德地图API...
  15. 综合日语第一册第六课
  16. 键盘之王——求打字峰值速率的小程序(C语言)
  17. 2022 Gartner RPA魔力象限发布,两家国产厂商入选,超自自动化成重点
  18. YOLOX训练自己的数据集(VOC)
  19. 【考研数学】九. 无穷级数
  20. php 五角星,php使用GD库画五角星

热门文章

  1. Android音频的录制与播放
  2. BMI体重指数计算器
  3. nginx配置多个域名使用同一个端口
  4. 谷歌浏览器代理服务器出现问题怎么办?(最快的解决办法)
  5. 如何备考软考高级系统架构师?
  6. ABAP ALV DEMO示例源码
  7. C++ fstream详解
  8. 数据库篇--update触发器
  9. 怎样裁切图片?如何将图片剪裁成需要的大小?
  10. 乐视第4代超级电视引领行业风向标