Блог им. SciFi
> source("D://Dropbox//R//earnings-RTS.r") [1] "sdT = 110.317631956078" [1] "meanT - 2 * sdT = -218.883720702279" [1] "meanT - 1 * sdT = -108.566088746201" [1] "meanT + 1 * sdT = 112.069175165954" [1] "meanT + 2 * sdT = 222.386807122032"
#install.packages("tseries") #install.packages("rusquant", repos="http://R-Forge.R-project.org") # Установка пакетов. Она не требуется, если уже все установлено. library(tseries) library(rusquant) # Подключение библиотек if (length (RIM6) == 0) { getSymbols("RIM6", src = "Finam", from = Sys.Date() - 10, period = "5min") } # Получение данных, если их нет abs.returns <- Cl(RIM6) - Op(RIM6) # Абсолютные доходности dev.off() # Очистка графика через выключение графического устройства R par(mfrow=c(3,1)) # Создаем график с 3 строками и 1 столбцом hist(abs.returns, breaks=100, col = "blue", border = "gray", xlab = "Absolute Returns", ylab = "Frequency", main = "Histogram of absolute returns for RIM6 (5 min)") # Гистограмма размеров свечей axis(1, at = seq(-800, 800, by = 100), las = 1) # Корректируем значения x-координат d <- density(abs.returns) # Функция плотности распределения plot(d, main = "Density of absolute returns") # Диаграмма плотности распределения polygon(d, col="red", border="blue", lwd = 2) # Закрашиваем диаграмму axis(1, at = seq(-800, 800, by = 100), las = 1) # Корректируем значения x-координат meanT <- as.numeric(mean(abs.returns, na.rm=TRUE)) sdT <- as.numeric(sd(abs.returns, na.rm=TRUE)) abline(v = meanT + 1 * sdT, col = "blue", lwd = 2) abline(v = meanT + 2 * sdT, col = "blue", lwd = 2) abline(v = meanT - 1 * sdT, col = "blue", lwd = 2) abline(v = meanT - 2 * sdT, col = "blue", lwd = 2) print (paste("sdT = ",sdT)) print (paste("meanT - 2 * sdT = ",meanT - 2 * sdT)) print (paste("meanT - 1 * sdT = ",meanT - 1 * sdT)) print (paste("meanT + 1 * sdT = ",meanT + 1 * sdT)) print (paste("meanT + 2 * sdT = ",meanT + 2 * sdT)) v.abs.returns <- as.vector(abs.returns) # Получение вектора boxplot(v.abs.returns , xlab="Absolute returns" , col="green", horizontal = TRUE, outline = TRUE, staplewex = 1) # Диаграмма размаха, содержит медиану, верхний и нижний квантили, наблюдаемые максимум и минимум и выбросы axis(1, at = seq(-800, 800, by = 100), las = 1) # Корректируем значения x-координат text(x = fivenum(v.abs.returns), labels = fivenum(v.abs.returns), y = 1.3) # Добавление текста
РТС большой… нет не так… огромный любитель рисовать ДИВЕРЫ в огромных количествах
на всех таймфреймах