Блог им. Mihalich81

Пример расчёта индекса Московской биржи

Довольно часто у меня спрашивают, как создать свой индекс акций или портфель. Решил сделать инструкцию.

1. Создаём копию индекса Московской биржи из акций.

— Вес акций можно взять https://www.moex.com/ru/index/IMOEX/constituents/ или https://smart-lab.ru/q/index_stocks/IMOEX/. Рекомендую второе, т.к. МБ даёт только скриншот таблицы, а на SMART-LAB можно скопировать таблицу выделением в EXCEL. Хотелось бы выгрузку в *.csv, но и за это СПАСИБО.

Пример расчёта индекса Московской биржи

Важно запомнить, вес бумаг постоянно меняется. Чем больше дорожает бумага относительно остальных, тем больше её вес. Также, возможно удаление биржей бумаг из индекса и добавление новых.

— Находим примерный минимальный объём на депозите для реализации. Для этого делим цену каждой акции на коэффициент веса и берём максимальное число.

Например, для акций «Транснф ап» получим:

122300 / (0.55 / 100) = 22 236 363 р.

Где:

122300 – цена акции Транснф ап;

0.55 / 100 – вес в % делим на 100, получаем коэффициент.

Но, даже ₽22млн. Не даст идеального повторения индекса.

Чем больше сумма на депозите, тем больше точность повторения индекса.

Например, если в распоряжении счёт ₽100млн., индекс повторить легко. Просто берём количество акций необходимое для реализации веса. Для акций «Сбербанк» получим:

100 000 000 * (14.82/100) / 235.29 = 62986 акций

Где:

100 000 000 – депозит;

14.82/100 — вес в % делим на 100, получаем коэффициент;

235.29 – цена акции «Сбербанк».

Единственное, нужно учитывать количество лотов. Для акций «Сбербанк» это 10 акций, поэтому, нам нужно купить 62986 /  10 = 6298 лотов.

2.      Создаём мини индекс Московской биржи из основных акций.

Т.к. собрать портфель из всех 40 акций (на данный момент) не все смогут, часто обрезают количество акций. Приведу пример индекса из 5-ти акций с самым большим весом.

— Выбираем 5 акций с самым большим весом. Например,

Сбербанк       14.82%

ГАЗПРОМ ао  14.64%

ЛУКОЙЛ         14.54%

ГМКНорНик   6.23%

Новатэк ао     5.07%

— Получаем сумму процентов:

14.82+14.64+14.54+6.23+5.07=55.3

В общем-то, данный расчёт говорит, что мы будем повторять индекс чуть больше, чем на 55%.

— Определяем вес каждой акции для нашего мини индекса.

Получим коэффициент компенсации. На него нужно.

100 / 55.3 = 1.8083

Теперь достаточно просто умножить вес каждой акции на коэффициент компенсации.

Сбербанк       14.82%*1.8083=26.80%

ГАЗПРОМ ао  14.64%*1.8083=26.47%

ЛУКОЙЛ         14.54%*1.8083=26.29%

ГМКНорНик   6.23%*1.8083=11.27%

Новатэк ао     5.07%*1.8083=9.17%

— Вычисляем количество лотов для каждой акции.

Например, для акций «Сбербанк» при депозите 100 000р.

100 000 * (26.80/100) / 235.29 / 10 = 11 лотов.

3.      Создаём график собственного индекса в QUIK

Штатного индикатора в QUIK нет, но я написал универсальный индикатор Арбитраж PRO при помощи которого можно решить задачу.

Я подготовил архив с готовой вкладкой для QUIK, где индекс уже создан:

https://disk.yandex.ru/d/jkhnhdgLsjZ2Wg

— Создаём диаграмму со всеми инструментами, входящими в наш мини индекс. Для этого создаём новый график Сбербанк-нажимаем пр.кн.мыши на графике-Добавить график (индикатор)-Новый-находим нужный инструмент-далее всё подтверждаем.

Пример расчёта индекса Московской биржи
 

— Привязываем графики к индикатору. Для этого нажимаем лев.кн.мыши на названии графика-Дополнительно-указываем Идентификатор (можно скопировать из названия). Названия идентификаторов нам потребуются далее. Аналогично нужно задать для остальных инструментов. Можно в этом же окне, выбирая слева инструмент.

Пример расчёта индекса Московской биржи 

— Загружаем индикатор Арбитраж PRO в новую область нашей диаграммы. В

Поле «Выражение» задаём идентификаторы с весами и складываем их:

Сбербанк*26.8+ГАЗПРОМ*26.47+ЛУКОЙЛ*26.29+ГМКНорНик*11.27+Новатэк*9.17

Можно сразу перевести в коэффициенты, но динамику это не изменит.

Сбербанк*0.268+ГАЗПРОМ*0.2647+ЛУКОЙЛ*0.2629+ГМКНорНик*0.1127+Новатэк*0.0917

Пример расчёта индекса Московской биржи

Пример расчёта индекса Московской биржи
 

 4.      Нормализуем наш мини индекс.

Например, нам нужно сравнить наш мини индекс с IMOEX.

— Добавляем график IMOEX в область индикатора. Для этого нужно кликнуть именно на область индикатора, аналогично примеру выше, добавить новый инструмент IMOEX, важно убрать галочку «Поместить в новую область». Скорее всего, получим малоинформативный график с большой разницей между значениями индексов.

Пример расчёта индекса Московской биржи 

— Теперь нам нужно найти сближающий коэффициент. Например, мы хотим видеть график, на котором наш индекс приравнен к IMOEX на текущий момент расчёта. Для этого берём последнее значение нашего мини индекса и делим его на значение IMOEX:

318389.35/2630.87=121.02

Далее, нам нужно разделить значение нашего мини индекса на сближающий коэффициент:

(Сбербанк*26.8+ГАЗПРОМ*26.47+ЛУКОЙЛ*26.29+ГМКНорНик*11.27+Новатэк*9.17)/121.02

Пример расчёта индекса Московской биржи 

Получили более адекватный график, говорящий нам, что в последнее время наш индекс уступает IMOEX. Это произошло из-за отставания ГМКНорНик, Новатэк, ГАЗПРОМ. Сбербанк не смог вытащить эту компанию. Вес каждой акции пересчитывается индикатором Арбитраж PRO на каждый бар отдельно в зависимости от цены.

В примере выше, нулевая точка находится на моменте расчёта. Нулевую точку можно сместить на любой бар, например на начало года. Для этого нужно взять данные обоих индикаторов на последний день прошлого года и вычислить коэффициент сближения, как рассмотрено выше. Правда, для точного расчёта нам потребуются веса в индексе IMOEX на последний день. Найти историю состояния индекса по дням мне не удалось. Веса в прошлом можно вычислить из текущих данных, конечно, без учёта корректировки индекса самой биржей, но это другая история. Для примера вводим текущие веса:

297392.87/2154.12=138.05

(Сбербанк*26.8+ГАЗПРОМ*26.47+ЛУКОЙЛ*26.29+ГМКНорНик*11.27+Новатэк*9.17)/ 138.05

Пример расчёта индекса Московской биржи 

— Есть другой способ, основанный на возможности QUIK создавать графики в процентах. Создадим график процентного изменения с начала года. Для этого соберём последние значения прошлого года:

Наш индекс: 297392.87

IMOEX: 2154.12

Пример расчёта индекса Московской биржи 

Теперь нажимаем лев.кн.мыши на названии графика-Дополнительно-ставим галочку «Процентное изменение»-вводим значение индикатора/графика на момент отсчёта-подтверждаем.

 Пример расчёта индекса Московской биржи

Аналогично поступаем с другими данными диаграммы, в нашем случае с графиком IMOEX. Получаем такой график:

 Пример расчёта индекса Московской биржи

К слову, возможность QUIK «Процентное изменение» позволяет создавать множество интересных графиков. Значение этих графиков может быть подхвачено роботами, например, моим Робот Сетка LUA.

Без всяких дополнительных индикаторов, QUIK способен показать вот такой график:

 Пример расчёта индекса Московской биржи  

★17
4 комментария
Полезный пост! Спасибо автору!
avatar
AlexChi, спасибо Вам за идею покупать лучшие акции, уже среднюю зарплату на этом заработал. 
Состав индекса через ISS еще можно скачать сразу в csv
avatar
Супер! Давно не хватало такого!
avatar

теги блога Михаил Понамаренко

....все тэги



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