Я пытался рассчитать доходность своего портфеля и индивидуальные вклады в акции. Я наткнулся на этот пост, который похоже, от парня, который помогает писать PerformanceAnalytics.
В конце статьи он публикует ссылка на r-forge с файлом песочницы для некоторых функций.
Итак, я пытаюсь преобразовать свои ежедневные доходы в суммированные ежемесячные доходы с помощью функции 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? Но я не знаю, как это обойти.
Кстати, если у кого-то есть лучшие идеи или источники для расчета доходности портфеля по месяцам / кварталам / годам, я очень хочу услышать, имея в виду, что им необходимо учитывать изменения веса, перебалансировки и вклады в изменения!
merged.closing
. Неужели это так? - person lebelinoz   schedule 12.09.2017to.monthly.contributions
. Из какого это пакета? - person lebelinoz   schedule 12.09.2017