Python 使用pandas将累积收益转换为每日收益
所以我试着从Python 使用pandas将累积收益转换为每日收益,python,pandas,Python,Pandas,所以我试着从 hist_data = (hist_data - hist_data.iloc[0]) / hist_data.iloc[0] 我正试图从累积收益率上升到每日收益率,但我对如何有效地做到这一点一无所知。有什么想法吗? 我想如果我减去1,这可能会有用 (hist_data[1:] - hist_data[:-1]) / hist_data[:-1] 如果hist_data包含累积回报,则这是计算每日回报的常用快捷方式。假设hist_data是一个返回百分比向量,您将需要向hist
hist_data = (hist_data - hist_data.iloc[0]) / hist_data.iloc[0]
我正试图从累积收益率上升到每日收益率,但我对如何有效地做到这一点一无所知。有什么想法吗?
我想如果我减去1,这可能会有用
(hist_data[1:] - hist_data[:-1]) / hist_data[:-1]
如果
hist_data
包含累积回报,则这是计算每日回报的常用快捷方式。假设hist_data
是一个返回百分比向量,您将需要向hist_data添加1.0
,如下所述。这样我们就得到了回报率向量,而不是回报率百分比
import numpy as np
daily_returns = np.exp(np.log(hist_data + 1.0).diff())
这里我们只是使用自然日志(ln
)的属性
ln(a/b) = ln(a) - ln(b)
a/b = exp(ln(a) - ln(b))
如果
hist_data
包含累积回报,则这是计算每日回报的常用快捷方式。假设hist_data
是一个返回百分比向量,您将需要向hist_data添加1.0
,如下所述。这样我们就得到了回报率向量,而不是回报率百分比
import numpy as np
daily_returns = np.exp(np.log(hist_data + 1.0).diff())
这里我们只是使用自然日志(ln
)的属性
ln(a/b) = ln(a) - ln(b)
a/b = exp(ln(a) - ln(b))
你能添加样本数据吗?你能添加样本数据吗?