Блог им. AndreyFilippovich
С таблицами excel разобрались, но у нас есть ещё большой пласт информации по гугл таблицам.
Тут также необходимо подготовка так как без неё у вас могут не подгружаться данные.
Вся подготовка заключается в изменении региональных настроек.
Переходим в «Файл» -> «Настройки»
Далее в «Региональные настройки» меняем регион на «Соединенные Штаты». Нажимаем «Сохранить настройки»
Это автоматически включит все настройки, которые нам необходимы, больше ничего не требуется.
Как работать с таблицей?Всё работает примерно по такой же схеме как и в двух предыдущих статьях по Excel. Вот первая статья, а вот вторая. Предлагаю прежде ознакомиться с ними, чтобы двигаться дальше.
Для примера вы можете использовать мою таблицу-пример, которая находится тут: https://t.me/filippovich_money/652
1- при входе у вас будут спрашивать про обмен данными с третьими сторонами. Вам надо разрешить доступ.
2- у гугл таблиц формулы немного отличаются
Она выглядит следующим образом:
=IMPORTxml(«iss.moex.com/iss/engines/stock/markets/bonds/boards/РЕЖИМ_ТОРГОВ/securities.xml?iss.meta=off&iss.only=РАЗДЕЛ&РАЗДЕЛ.columns=SECID,ДАННЫЕ», concatenate("//row[@SECID='",ISIN,"']/@ДАННЫЕ"))
Пойдём по порядку.
Честно, я не нашёл способа как подтягивать режим торгов. Он точно есть, но на данный момент у меня нет решения 😑
Поэтому режим торгов необходимо проставлять руками… В будущем обязательно надо исправить косяк.
Для того чтобы найти режим торгов бумаги нам необходимо зайти на сайт Московской биржи и в поиске ввести ISIN бумаги. Сайт найдёте по ссылке: https://www.moex.com/
Для примера возьмём бумагу Контрол Лизинг выпуск 2 с ISIN RU000A1086N2
Вводим в поиске сайта и переходим
При переходе на страницу бумаги прокручиваем немного вниз и находим поле Идентификатор режима торгов. Это то, что нам нужно.
С режимом торгов разобрались, теперь посмотрим ещё раз на формулу
=IMPORTxml(«iss.moex.com/iss/engines/stock/markets/bonds/boards/РЕЖИМ_ТОРГОВ/securities.xml?iss.meta=off&iss.only=РАЗДЕЛ&РАЗДЕЛ.columns=SECID,ДАННЫЕ», concatenate("//row[@SECID='",ISIN,"']/@ДАННЫЕ"))
Сейчас разберём, что такое РАЗДЕЛ и ДАННЫЕ.
Это мы ищем на специальном сайте для API Московской биржи. Вот ссылка: https://iss.moex.com/iss/engines/stock/markets/bonds/
Например, нам надо узнать НКД у бумаги, на сайте он расположен так:
Securities- это раздел, где находится множество всевозможных данных.
ACCRUEDINT - это название тех данных, которые нам нужны. В данном случае так называется НКД
Теперь нам известны ISIN, режим торгов, раздел и данные. Подставим всё это в формулу:
=IMPORTxml(«iss.moex.com/iss/engines/stock/markets/bonds/boards/TQCB/securities.xml?iss.meta=off&iss.only=Securities&Securities.columns=SECID,ACCRUEDINT», concatenate("//row[@SECID='",RU000A1086N2,"']/@ACCRUEDINT"))
В приведённом примере эта формула располагается в ячейке F2
Прошу обратить внимание на ту же самую формулу, но для другой бумаги:
=IMPORTxml(«iss.moex.com/iss/engines/stock/markets/bonds/boards/TQIR/securities.xml?iss.meta=off&iss.only=securities&securities.columns=SECID,ACCRUEDINT», concatenate("//row[@SECID='",A3,"']/@ACCRUEDINT"))
У неё режим торгов другой. Примерно процентов 70 по гугл-таблице именно из-за такой мелочи. Будьте внимательны!
В самом начале я делал все таблицы исключительно в гугл таблицах из-за того, что тут есть ряд функций, которых нет в Excel, но 1 крайне важная вещь полностью отвернула меня от этого сервиса.
Этой вещью является ограничение на количество отправляемых запросов. Бесконечные Loading...
Из-за этого отправка более 5-10 запросов разом может превратиться и в 20 минут ожидания. А 5-10 запросов- это даже не 1 строка данных, которые я собираю, то есть 1 бумага.
У меня как-то было более 30 бумаг и для полной прогрузки такого количества запросов гугл таблица без перерыва стояла 2 часа!!!
Иногда и на 2 запросах гугл таблицы могут грузиться 10 минут. Это крайне неудобно, когда тебе надо быстренько зайти, прогрузить информацию и выйти, а тут тебе надо долго ждать.
В Excel таблицах такого ограничения нет и вы можете хоть 1000 бумаг разом грузить, никаких ограничений не будет.
В общем, много кому именно гугл таблицы и нужны, поэтому появилась эта таблица.
ОПТИМИЗИРОВАЛ… Хуле?
ps. минуты три…
*не гугл-хуюгл, а тупо с компа…
iss.moex.com/iss/engines/stock/markets/bonds/securities/SU26234RMFS3?iss.only=securities&securities.columns=SECID,SHORTNAME,BOARDID
Описание режимов тоже доступно
iss.moex.com/iss/engines/stock/markets/bonds/boards
Спасибо помогли.
=IMPORTxml(СЦЕПИТЬ(«iss.moex.com/iss/engines/stock/markets/bonds/securities/»,B8,"? iss.only=securities&securities.columns=SECID,BOARDID,MARKETCODE,CURRENCYID"), СЦЕПИТЬ("//row[@CURRENCYID='SUR'and @MARKETCODE='FNDT']/@BOARDID"))
В8 — ячейка где прописан тикер (для офз)/isin (для корпората)
Пользоваться осторожно в начале дня — Excel может падать, причём весь, а не только файл, в котором обновляешь данные
Из таблиц сейчас думаю остановиться на Libre Offie (дёшево-сердито, нет рисков отключения от сервиса), а по хорошему надо бы полностью свой скрипт писать, на питоне, js или R