Ранее выложил гистограмму для нефти. Выкладываю остальные гистограммы по просьбам читавших тот пост. Таймфрейм 5 мин. ES не нашел на Финаме и не торгую их. Сделал для S&P и NASDAQ. Ну и для остального. Использую свойство логарифмов что log(1+x) ~ x при малых x, которое позволяет считать доходность простым вычитанием логарифмов цен.
Количество прямоугольников в гистограммах зависит от размаха движения. Оно одинаковое для всех активов, но я рисовал только основную часть колокола. Если прямоугольников мало, значит размах некоторых 5-минуток был большой и они где-то за пределами графика. Частота разная, потому что был взят разный временной интервал. Для нефти я взял интервал за 1 мес, для остальных с 16 января 2016 г. Это видно по названиям графиков.
Мое изучение R продолжается. Научился писать функции. Вот функция, которой я рисую гистограмму для чего угодно, просто передав расположение файла:
# Created by SciFi, 2016
earnings.histogram <- function(fileName, start = -0.02, stop = 0.02, n = 10) {
earnings = NULL
fullFileName <- paste(fileName, ".txt", sep="")
dataSet <- read.csv(fullFileName)
attach(dataSet)
for (i in 1:length(X.CLOSE.)) { earnings[i] <- (log(X.CLOSE.[i]) — log(X.OPEN.[i])) }
hist(earnings, breaks=100, col = «green», border = «black», xlab = «Доходности», ylab = «Частота», main = fileName, xaxp = c(start, stop, n), xlim = c(start, stop))
detach(dataSet)
}
Применяется она так:
setwd("/Users/user/Dropbox/R")
source(«EarningsHistogram.r»)
earnings.histogram(«PriceData/NASDAQCOMP_160101_160401», -0.006, 0.006, 10)