Я должен использовать загруженные ежедневные цены с 1 марта 2015 года по 1 марта 2017 года для EBAY, GOOG, TEVA, чтобы вычислить выборочную ковариационную матрицу для арифметических возвратов.
Вот что у меня есть:
library(zoo)
library(tseries)
library(fBasics)
for(ticker in c("ebay", "goog", "teva", "ge")){
Prices = get.hist.quote(instrument = ticker, start = "2015-03-01",
end = "2017-03-01", quote = "Close",
provider = "yahoo",origin = "1970-01-01",
compression = "d", retclass = "zoo")}
return = diff(Prices)/lag(Prices, k=-1)
covariance = cov(return)
Однако, когда я печатаю ковариацию, я получаю матрицу 1 на 1 ... Я знаю, что мой цикл перезаписывает тикеры в ценах, поэтому он использует только цены из последнего тикера для остальной части кода. Я пытался использовать функцию списка, чтобы исправить это, но это не изменило мой конечный результат для ковариации. Я полагаю, что в итоге получу матрицу 4х4, но я не совсем понимаю, как это получить.