开始使用免费开始使用

自定义目标函数

PortfolioAnalytics 的一个关键特性是:目标的名称必须是一个有效的 R 函数。该包的设计追求灵活与模块化,自定义目标函数正是一个很好的例子。定义自定义矩函数时应遵循以下准则:

  • 目标函数必须返回一个单一值,以便优化器执行最小化或最大化。
  • 强烈建议使用 R 表示资产收益,使用 weights 表示投资组合权重。

这些参数名会被自动检测并高效处理。目标函数的其他参数可以作为具名列表,通过 add.objective() 函数中的 arguments 传入。

本练习是课程的一部分

R 中级投资组合分析

查看课程

练习说明

  • 定义一个自定义目标函数,用于计算投资组合的年化标准差。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Custom annualized portfolio standard deviation
pasd <- function(___, ___, sigma, scale = 12){
  sqrt(as.numeric(t(___) %*% ___ %*% ___)) * sqrt(scale)
}
编辑并运行代码