R PerformanceAnalytics::Return.portfolio() 在 geometric=TRUE 时生成 NaN

R PerformanceAnalytics::Return.portfolio() generates NaN when geometric=TRUE

我正在为 PerformanceAnalytics::Return.portfolio() 苦苦挣扎,如果我尝试设置参数 geometric=TRUE,我会得到 NaN 作为 return 系列。如果我设置 geometric=FALSE 然后我得到 returns 计算。

我显然已经确保在输入 return 系列和权重系列中没有 "na" 或 "nan" 或 "inf" 值。

有什么指点吗?

来电是:

stratRets <- PerformanceAnalytics::Return.portfolio(R = rets, weights = weights, geometric = TRUE)

我无法在此处复制 return 和权重数据框,因为它们包含数千行。我会试着想出一个更小的例子来重现这个问题,并很快 post 在这里。

同时,我们将不胜感激关于检查内容的任何快速指示。

答案是删除开头权重总计为 0 的所有行。