Блог им. NickolayF
Привет всем. Чтобы не изобретать велосипеды #софты для просмотра структуры портфеля#.
Скачиваем R, RStduio. В RStudio устанавливаем библиотеки: rusquant, PerformanceAnalytics, PerformanceAnalytics.
Добавляем следующий код в RStudio.
Подключаем библиотеки:
library(rusquant) library(PerformanceAnalytics) library(PortfolioAnalytics)
tickers <- c("FXGD","IRAO") weights <- c(.5,.5) start_data <- "2014-01-01" PortPrices <- NULL
for(curr in tickers) { PortPrices <- cbind(PortPrices, getSymbols(curr, src = 'Finam', auto.assign = FALSE)[,4]) }
benchmark <- getSymbols("MICEX", src = "Finam", auto.assign = FALSE)[,4] benchmarkRet <- na.omit(ROC(benchmark))Тоже самое для портфеля акций, плюс считаем портфель и включаем ребалансировку каждый месяц.
PortReturn <- na.omit(ROC(PortPrices)) PortRet <- Return.portfolio(PortReturn, weights = weights, rebalance_on = "month")
PortCum <- cumsum(PortRet) Micex <- cumsum(benchmarkRet)
chart_Series(PortCum) add_TA(Micex, on = 1, col="blue", lty=2)
CAPM.beta(PortRet, benchmarkRet, .035/252) CAPM.jensenAlpha(PortRet, benchmarkRet, .035/252) 0.8568791 0.126834
table.AnnualizedReturns(PortRet) table.CalendarReturns(PortRet) table.Correlation(PortRet, benchmarkRet)
Спасибо за внимание, всем профита!
Улучшения, доработки пишите в комментах.