Исторические данные индекса Московской Биржи (IMOEX) в Google Sheets

Исторические данные индекса Московской Биржи (IMOEX) в Google Sheets

Michael Smirnov

Правильный канал о Таблицах (Google Sheets): @google_sheets

Чат канала: @google_spreadsheets_chat


Здравствуйте, товарищи!


Небольшая инструкция на скорую руку о том, как достать исторические данные индекса московской биржи.

Про всё, что можно получить от московской биржи в виде XML (на самом деле ещё HTML, JSON, CSV), читаем тут:

https://iss.moex.com/iss/reference/


Далее конкретный примере про индекс самой биржи (IMOEX). Для других инструментов — читайте описание (выше) и адаптируйте.


Смотрим, какие есть торговые системы (нужная — stock):

https://iss.moex.com/iss/engines.xml


В нужной системе смотрим, какие есть рынки (нужный — index):

https://iss.moex.com/iss/engines/stock/markets.xml


Смотрим режимы торгов (SNDX):

https://iss.moex.com/iss/engines/stock/markets/index/boards.xml


Заметили, как то, что в квадратных скобках ([engine], например) мы меняем на найденное в справочниках?


Идём дальше. Какие есть инструменты? (IMOEX — первый)

https://iss.moex.com/iss/engines/stock/markets/index/boards/SNDX/securities.xml


Данные по указанному инструменту на выбранном режиме торгов (это мы просто из любопытства смотрим):

https://iss.moex.com/iss/engines/stock/markets/index/boards/SNDX/securities/IMOEX


Все сделки (за сегодня):

https://iss.moex.com/iss/engines/stock/markets/index/boards/SNDX/securities/IMOEX/trades

Ок. Теперь к историческим данным (в ссылках добавляется history).


Какие даты доступны?

https://iss.moex.com/iss/history/engines/stock/markets/index/boards/SNDX/securities/IMOEX/dates


Попробуем достать за прошлую неделю (с 21.06.2021 по 27.06.2021):

https://iss.moex.com/iss/history/engines/stock/markets/index/boards/SNDX/securities/IMOEX/?from=2021-06-21&till=2021-06-27


А теперь ничего лишнего, оставим только нужные колонки (дата и последнее значение, вам, может, что-то другое будет нужно, не забываем, что это пример, а не руководство на все случаи жизни):

https://iss.moex.com/iss/history/engines/stock/markets/index/boards/SNDX/securities/IMOEX/?from=2021-06-21&till=2021-06-27&iss.meta=off&iss.only=history&history.columns=TRADEDATE,CLOSE


Ещё документация, где можно про iss.meta=off, history.columns=... почитать:

https://fs.moex.com/files/6523


Ну, и разбираем эти данные Google Sheets:

=IMPORTXML("https://iss.moex.com/iss/history/engines/stock/markets/index/boards/SNDX/securities/IMOEX.xml?from=2021-06-21&till=2021-06-27&iss.meta=off&iss.only=history&history.columns=TRADEDATE,CLOSE"; "//row/@*")


Чтобы разделить на колонки и при этом не делать два запроса, достаточно завернуть результат импорта во WRAPROWS(...; 2):

=WRAPROWS(IMPORTXML("https://iss.moex.com/iss/history/engines/stock/markets/index/boards/SNDX/securities/IMOEX.xml?from=2021-06-21&till=2021-06-27&iss.meta=off&iss.only=history&history.columns=TRADEDATE,CLOSE"; "//row/@*"); 2)



На этом всё. Спасибо за внимание.


Cсылки


Функции Google Sheets


XPath

В интернете полно информации об использовании XPath. Больше экспериментируйте, чтобы разобраться.


Московская Биржа


Правильный канал о Таблицах (Google Sheets): @google_sheets

Чат канала: @google_spreadsheets_chat

Report Page