【金融量化】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
相关推荐
a7963lin5 分钟前
Golang怎么用GitLab CI构建_Golang如何编写.gitlab-ci.yml自动化构建流程【教程】
jvm·数据库·python
我鑫如一23 分钟前
口碑好的AI API中转站哪家强
人工智能·python
花千树-01036 分钟前
从业务接口到 MCP Tool:多语言工程化实践指南(Python / TypeScript / Java)
java·python·rpc·typescript·api·mcp
啦啦啦_99991 小时前
3. 欠拟合 & 正好拟合 & 过拟合
python
WL_Aurora1 小时前
备战蓝桥杯国赛【Day 4】
python·蓝桥杯
落雪寒窗-1 小时前
Python进阶核心路线(工程向)
开发语言·python
yexuhgu1 小时前
JavaScript中函数防抖Debounce的原理与闭包实现方案
jvm·数据库·python
m0_613856291 小时前
C#怎么判断进程是否在运行_C#如何管理系统进程【必备】
jvm·数据库·python
Jetev2 小时前
golang如何实现审计日志记录_golang审计日志记录实现教程
jvm·数据库·python
yexuhgu2 小时前
Redis如何解决哨兵通知延迟问题_优化客户端连接池动态刷新拓扑的订阅监听机制
jvm·数据库·python