Returns 由 n 只股票中的任意 m 只股票组成的等权重投资组合
Returns of an equally weighted portfolio consisting of any m of the n stocks
我有一个五股的投资组合,我每月计算 returns 并且当时需要三只股票的所有可能组合,因此有 10 种组合。
如何计算所有可能投资组合的每月 return?我想我需要使用 'combn'。但我得到的结果只是一长串数字。也许它就在那儿的某个地方,但我无法从所有数字中得出任何结论……
到目前为止的代码:
library('quantmod')
tickers <- c('MSFT','YHOO','ORCL','EBAY','AMZN')
getSymbols(tickers, src='yahoo', from='2015-03-01', to='2016-02-29')
amzn_ret = monthlyReturn(AMZN, type = 'log')
ebay_ret = monthlyReturn(EBAY, type = 'log')
msft_ret = monthlyReturn(MSFT, type = 'log')
orcl_ret = monthlyReturn(ORCL, type = 'log')
yhoo_ret = monthlyReturn(YHOO, type = 'log')
stock_ret = c(amzn_ret, ebay_ret,yhoo_ret,orcl_ret,msft_ret)
combin = combn(stock_ret, 3, sum, simplify = FALSE)
您正在将 returns 绑定为向量 c
,您需要的是 cbind
或某种形式的 table
:
stock_ret <- data.table(amzn_ret, ebay_ret,yhoo_ret,orcl_ret,msft_ret)
combin <- combn(stock_ret, 3, rowSums, simplify = TRUE)
你可能想说 rowSums
?
我有一个五股的投资组合,我每月计算 returns 并且当时需要三只股票的所有可能组合,因此有 10 种组合。
如何计算所有可能投资组合的每月 return?我想我需要使用 'combn'。但我得到的结果只是一长串数字。也许它就在那儿的某个地方,但我无法从所有数字中得出任何结论…… 到目前为止的代码:
library('quantmod')
tickers <- c('MSFT','YHOO','ORCL','EBAY','AMZN')
getSymbols(tickers, src='yahoo', from='2015-03-01', to='2016-02-29')
amzn_ret = monthlyReturn(AMZN, type = 'log')
ebay_ret = monthlyReturn(EBAY, type = 'log')
msft_ret = monthlyReturn(MSFT, type = 'log')
orcl_ret = monthlyReturn(ORCL, type = 'log')
yhoo_ret = monthlyReturn(YHOO, type = 'log')
stock_ret = c(amzn_ret, ebay_ret,yhoo_ret,orcl_ret,msft_ret)
combin = combn(stock_ret, 3, sum, simplify = FALSE)
您正在将 returns 绑定为向量 c
,您需要的是 cbind
或某种形式的 table
:
stock_ret <- data.table(amzn_ret, ebay_ret,yhoo_ret,orcl_ret,msft_ret)
combin <- combn(stock_ret, 3, rowSums, simplify = TRUE)
你可能想说 rowSums
?