【金融量化】Python实现根据收益率计算累计收益率并可视化

1 理论

理财产品(本金100元)

第1天:3% :(1+3%) ✖ 100 = 103

第2天:2% :(1+2%)✖ 以上 = 103 +2.06

第3天:5% : (1+5%)✖ 以上 = 收益 ✖ 以上

第4天:6% :(1+6%)✖ 以上 = 收益 ✖ 以上

... 累计收益=(1+当天收益率)的累计乘积-1

这里的计算公式为什么需要减去1呢? 因为我们上面的公式都是包括本金的,比如说103应该减去100,只有3元才是我们的利润,所以这里需要减去1,将本金删除掉

2 实现

python 复制代码
import pandas as pd
# 计算累计收益率
def calculate_cum_prof(data):
    data['cum_profit'] = pd.DataFrame(1+data['profit_pct']).cumprod()-1
    data['cum_profit'].plot()
    return data
相关推荐
清水白石0082 小时前
Python 编程实战全景:从基础语法到插件架构、异步性能与工程最佳实践
开发语言·python·架构
yaoxin5211233 小时前
390. Java IO API - WatchDir 示例
java·前端·python
武帝为此4 小时前
【数据清洗缺失值处理】
python·算法·数学建模
zhangchaoxies5 小时前
如何在 Go 中安全复制接口指针所指向的值
jvm·数据库·python
曲幽5 小时前
FastAPI + Pydantic 模型终极实战手册:从能跑就行到固若金汤,这些技巧你一定用得上
python·fastapi·web·model·field·pydantic·validator·basemodel
计算机软件程序设计5 小时前
Python Flask工程目录解读
python·flask·工程目录解读
Ares-Wang5 小时前
Flask》》 Flask-OpenID 认证、 OpenID Connect (OIDC)
后端·python·flask
m0_734949796 小时前
怎么利用Navicat进行调整备份文件压缩等级_详细配置与操作步骤
jvm·数据库·python
m0_741173336 小时前
如何处理SQL中的NULL值_使用ISNULL或COALESCE函数
jvm·数据库·python
AC赳赳老秦6 小时前
OpenClaw进阶技巧:批量修改文件内容、替换关键词,解放双手
java·linux·人工智能·python·算法·测试用例·openclaw