Блог им. egenui

R. ОИ на фьючерс РТС

Читаю очередное расследование на СЛ http://smart-lab.ru/blog/295515.php, люблю такое, аж с правильным, интргующим заголовком.
Физики нервно курят в сторонке, пока юрики не могут решить куда пойдем. 
Юрики как мы увидим ниже по большей части в шортах. А физики экстремально в лонгах почти на 10 000 контрактов.

Так же коменты классные, в духе конспералогии.
Watto, в том то и дело, если посмотреть открытые сегодня позы юриков, то видно, что они одинаковы по объему и в лонг, и в шорт. Отсюда и возникает легкое непонимание.
А как может быть иначе? Об кого открывать лонги юрикам то? Об физиков что ли с их нищенскими депо? В целом маркет мейкер это и есть Юр. Лицо и по большому счету он и является контрагентом для Юр. Лиц.

Давно еще это исследовал, нет какой-либо линейной связи между движением индекса и ОИ, и не важно кто Юрики или Физики имеют большие позиции. Вот к примеру графики ОИ Юриков, начиная с начала года. Красное — шорты, Зеленое — лонги.
R. ОИ на фьючерс РТС
Как правило ОИ шортов и лонгов Юриков сильно скоррелированны и это понятно, на каждый шорт есть свой лонг, а так как позиции у Юриков большие то контрагентом для юриков выступают так же Юрики! В идеале эти две линии бы совпадали, но спред между ними это действия Физиков! Вот так выглядит спред между лонгами и шортами Юр. Лиц
R. ОИ на фьючерс РТС

Как можно заметить, спред имеет тенденцию к лонгам, начиная с апреля 2015. И вот наконец графики ОИ Физиков которые подтверждают предположения сделанные выше
R. ОИ на фьючерс РТС
Выводы. Собственно простые, колличесвто лонгов физиков почти на максимумах года. Только вот эти максимумы никак историчесски не указывают на развороты, и по большей части не несут какой-то нужный инфы на основе которой можно строить торговую стратегию, но вы сами проверьте конечно же.

Ну и сам код который качает данные ОИ с сайта биржы и строит графики что выше.

asset_name <- "Фьючерсный контракт на �ндекс РТС"
url_prefix <- "http://moex.com/ru/derivatives/open-positions-csv.aspx?d="
url_suffix <- "&t=1"
date <- c(seq(as.Date("2015-02-01"), Sys.Date() , 1))
url <- paste(url_prefix, gsub('-' , '', as.character(date[1])), url_suffix , sep="")
open_pos <- read.csv(url, encoding = "UTF-8")
result <- subset(open_pos, open_pos$name==asset_name)

for (i in 2:length(date))
{
  url <- paste(url_prefix, gsub('-' , '', as.character(date[i])), url_suffix , sep="")
  open_pos <- read.csv(url, encoding = "UTF-8")
  result <- rbind(result, subset(open_pos, open_pos$name==asset_name))  
}
pos_fl <- subset(result, result$iz_fiz==1)
rownames(pos_fl) <- pos_fl$X.U.FEFF.moment
pos_fl <- pos_fl[6:13]

pos_ul <- subset(result, is.na(result$iz_fiz))
rownames(pos_ul) <- pos_ul$X.U.FEFF.moment
pos_ul <- pos_ul[6:13]

# Физ лица
plot(as.Date(rownames(pos_fl)), cumsum(pos_fl$change_prev_week_short_abs), type='l', 
     col='red', ylim = range( cumsum(pos_fl$change_prev_week_long_abs), cumsum(pos_fl$change_prev_week_short_abs)),
     main = '�зменение количества договоров (контрактов) по отношению к предыдущей неделе, шт. Физ. Лица', 
     ylab = 'Колличесвто контрактов', xlab = 'Дата' )

lines(as.Date(rownames(pos_fl)), cumsum(pos_fl$change_prev_week_long_abs), col='green', type='l')

# Юр Лица
plot(as.Date(rownames(pos_ul)), cumsum(pos_ul$change_prev_week_short_abs), type='l', 
     col='red', ylim = range( cumsum(pos_ul$change_prev_week_long_abs), cumsum(pos_ul$change_prev_week_short_abs)),
     main = '�зменение количества договоров (контрактов) по отношению к предыдущей неделе, шт. Юр. Лица', 
     ylab = 'Колличесвто контрактов', xlab = 'Дата' )

lines(as.Date(rownames(pos_ul)), cumsum(pos_ul$change_prev_week_long_abs), col='green', type='l')


# spread
plot(as.Date(rownames(pos_ul)), cumsum(pos_ul$change_prev_week_long_abs/pos_ul$change_prev_week_short_abs), type='l', 
     col='blue', main = 'Отношение лонгов к шортам Юр. Лица', 
     ylab = 'Колличесвто контрактов', xlab = 'Дата' )
★18
22 комментария
Не заморачивайтесь сильно. Дело в том, что понятия «физик» и «юрик» сильно размыты. И это очередная пустая инфа, распространяемая биржей. 
avatar
my_profit, да, я тоже так думаю.
avatar
 Код для чего?
avatar
Александр, в смысле для чего? Что бы вы могли сами скачать данные и посмотреть. Если речь об инструменте то это язык R
avatar
evgen000, спасибо, я понял что код для R. Просто не разобрался сразу. Никогда не работал в нем.
avatar
Подскажите, как из R выгрузить данные в EXCEL?
avatar
IliaM, функцией write.csv 
avatar
IliaM, Если совсем по-простому (через буфер), то
write.table(ВАШИ ДАННЫЕ,«clipboard», sep="\t", dec = ',',row.names = FALSE)
и в excel «вставить»
avatar
AlexeyT, спасибо. А какой способ не самый простой, но может удобнее?
avatar
IliaM, тоже самое, только выгружать в файл в с разделителями (точкой-запятой, если русская локаль в винде),
то есть
write.table(ВАШИ ДАННЫЕ,«testfile.csv», sep=";", dec = ',',row.names = FALSE)
можно создавать и сами xls (xlsx) файлы, но удобнее через простые текстовые файлы.
avatar
Спасибо!
avatar
Анализировать ОИ для предсказания направления движения/отката пустое занятие.  Дело в том, что основной объём ОИ это не направленные позиции а хэдж опционов, валюты и спота. 

Пример: у меня 450 контрактов РТС лонг и мне плевать куда завтра рынок стрельнёТ ибо все мои контракты это покрытие моих опционов. И я собираюсь выходить с ними на экспирацию. В это время мои 450 контрактов учитывают ОИшные аналитики в надежде угадать направления движения рынка!!!
Это при том, что мой счёт лишь 300000р. А ведь это даже меньше среднего на ФОРТС согласно статистики мосбиржи.
avatar
Алексей_72, «у меня 450 контрактов РТС лонг» и «Это при том, что мой счёт лишь 300000р.»
А как вы на 300к.р смогли купить 450 контрактов, при Го 13,422р?
avatar

1) buy 1 RIZ5
2) sell 1 RI85000BL5
3) buy 1 RI85000BX5
и так 450 раз

avatar
evgen000
Куда делся ваш топик от 24 ноября про доходность активов по периодам?
avatar
SouthUral, я ее удалил, запилю другую, чуть новее )
avatar
evgen000, ок, ждем с нетерпением
вдогонку вопрос: с файлами котировок структуры xts, полученными через rusquant, возможно проводить внутренние манипуляции, т.е. например производить математические вычисления волатильности конкретной свечи и т.п., или их необходимо преобразовывать в формат data.table или matrix? 
avatar
SouthUral, не надо преобразовывать. К примеру дневная волотильность по инструменту SBER с начала 2015 года

library(rusquant) getSymbols('SBER', from='2015-01-01', src='Finam') SBER$Volatility <- LoHi(SBER) hist(SBER$Volatility, breaks = 50, col = 'red', main = 'SBER day volatility', xlim = c(0,.07), xlab = 'Day volatility %')

Итого среднее значение от Лоу до Хай 2-3% начиная с начала года.
avatar

теги блога evgen000

....все тэги



UPDONW
Новый дизайн