我一直在嘗試計算我的投資組合回報和個人股票投入。我偶然發現了this post,這似乎來自幫助編寫PerformanceAnalytics的人。PerformanceAnalytics沙箱中的to.period.contributions()錯誤
在文章的最後,他發佈了一些功能link to r-forge with a sandbox file。
因此,我試圖通過to.monthly.contributions()
函數將我的日常回報轉換爲總計的每月回報,但我遇到了xts錯誤!
這裏是我的代碼:
library(PerformanceAnalytics)
library(quantmod)
stock.weights <- c(.15, .20, .25, .225, .175)
symbols <- c("GOOG", "AMZN", "BA", "FB", "AAPL")
getSymbols(symbols, src = 'google', from = "2016")
#xts with daily closing of each stock
merged.closing <- merge(GOOG[,4], AMZN[,4], BA[,4], FB[,4], AAPL[,4])
#xts with returns
merged.return <- na.omit(Return.calculate(merged.closing))
# weighted returns rebalanced quartely
portfolio.returns = Return.portfolio(merged.return, weights = stock.weights,
rebalance_on = "quarters", verbose = TRUE)
#to monthly contributions function
to.monthly.contributions(portfolio.returns$contributions)
然而,當我運行的最後一行,我得到了以下錯誤消息:
Error in inherits(x, "xts") :
argument "Contributions" is missing, with no default
5. inherits(x, "xts")
4. is.xts(x)
3. checkData(Contributions)
2. to.period.contributions(contributions = contributions, period = "months")
1. to.monthly.contributions(portfolio.returns$contributions)
我猜的錯誤有事情做與portfolio.returns$contributions
不是一個xts?但我不確定如何解決這個問題。
請注意,如果任何人有任何更好的想法或資料來計算投資組合收益按月/季/年計算,我很想聽聽他們的記錄,他們需要考慮體重變化,重新平衡和貢獻改變!
你有兩次Google,'merged.closing'沒有Apple。這可能嗎? – lebelinoz
我找不到'to.monthly.contributions'。那是哪個包? – lebelinoz
我無法重現教程。我遇到了一個定義函數中的日期的錯誤,並且我遇到了同樣的問題。 – Katerina