微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有没有一种简单的方法可以用 R

如何解决有没有一种简单的方法可以用 R

我有一个风险回报图和数据框(下面 dput 中的 dfRiskReturn)。我不想使用雅虎财经下载股票,我已经通过另一种方式获得了风险回报数据框。我只想知道现在我有了数据框,我如何获得有效边界。

这是一个旧视频,但它几乎是我想要的。也许我想检查相关性(dput 中的集群列)与有效前沿(如果可能的话)。只选择彼此不相关的股票或其他东西来寻找最佳有效边界,我不知道。 https://www.youtube.com/watch?v=zkXIByRwJ-g

我正在阅读 youtube 评论,他们推荐了包 fPortfolio,但我不知道它是如何工作的。

我也看到最近有人在用 python 做这件事,但我想用 R 来做: https://www.youtube.com/watch?v=Isutk-wqJfE


dput(dfRiskReturn):

structure(list(Return = c(12,-2,-4.5),Volatility = c(25,12,34),cluster = structure(c(1L,2L,2L),.Label = c("1","2"),class = "factor"),X5 = c("FALSE","FALSE","FALSE")),row.names = c("ACWI","TLT","GLD"),class = "data.frame")

编辑:

我按照问题的答案得到了这个,但我不知道最佳点的坐标是什么,或者如何获得它。 [相关系数为 0.5 左右]: https://quant.stackexchange.com/questions/15178/calculating-the-efficient-frontier-from-expected-returns-and-sd/41182#41182

解决方法

这是一个例子。我使用 PerformanceAnalytics 的 edhec-data 来计算带有 fPortfolio 的相切组合。

library(fPortfolio)
library(PerformanceAnalytics)

data("edhec")

rets <- edhec

# compute the tangency portfolio
tp <- tangencyPortfolio(as.timeSeries(edhec))

frontier <- portfolioFrontier(as.timeSeries(edhec))
plot(frontier) # select 1 and 3

# get tangency point
> tp@portfolio@portfolio[["targetReturn"]][["mean"]]
[1] 0.004483096
> tp@portfolio@portfolio[["targetRisk"]][["Sigma"]]
[1] 0.006325268

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。