Функция GOOGLEFINANCE для загрузки котировок акций и курсов валют
Обсудим функцию GOOGLEFINANCE, которая позволяет загружать в Таблицы котировки акций и курсы валют — как в динамике, так и на текущий момент.
Валюты
Для получения биржевого курса достаточно ввести два трехбуквенных кода валют внутри этой функции. Например, “USDRUB”:
USDRUB — текстовое значение, мы указываем его в кавычках внутри функции.
Более наглядно будет указывать коды валют в ячейках и объединять их в такую конструкцию с помощью амперсанда (символа, который соединяет несколько текстовых значений).
Такую функцию можно протянуть и сразу получить результат в нескольких валютных парах.
Объединение кодов валют из ячеек внутри функции GOOGLEFINANCE (BTC — это код биткоина)
Чтобы загрузить курс валюты за определенный период, нужно добавить аргументов — помимо кода валюты, указать второй аргумент “PRICE” и даты начала и окончания периода (третий и четвертый аргументы):
Или сослаться на ячейки с кодами валют и датами:
Получили информацию о курсе валюты за длительный период. Формат вывода результатов — два столбца, с датой и курсом.
Отметим, что график (спарклайн) в ячейке C2 сформирован с помощью функции SPARKLINE, которую мы будем обсуждать позднее в курсе. Здесь график добавлен для наглядности.
Акции
Для получения информации об акциях нужно использовать вместо двух кодов валют тикер, четырехбуквенный код — например, AAPL для акций компании Apple.
В случае с акциями функция может загрузить большое количество параметров — цену открытия, цену закрытия, самую низкую или высокую цену за день, объем торгов, капитализацию компании и много других — все они перечислены в справке.
Тикер указывается в первом аргументе функции. Параметр указывается во втором аргументе функции.
Соответственно, следующая функция
Будет возвращать объемы торгов акциями Apple с первого января 2017 по 1 февраля 2019 года.
Все аргументы — тикер, параметры и даты — можно указывать как в самой функции, так и в ячейках, на которые вы будете из функции ссылаться.
В следующем примере мы получаем максимальные цены дня по Apple за период с 1 января 2014 по 19 февраля 2019 года. Все параметры мы получаем из ячеек, на которые ссылаемся из функции:
Загружаем максимальные цены (high) по акциям с помощью GOOGLEFINANCE
Источник
Что делает Free API Московской биржи в Google Таблицах
Количество частных инвесторов на Московской бирже удвоилось за последний год и составило 3,86 млн: за 2019 счета на Мосбирже открыли 1,9 млн человек. Санкт-Петербургская биржа, специализирующаяся на торгах акциями иностранных компаний, в прошлом году зафиксировала трехкратный прирост счетов – с 910 000 до 3,06 млн шт.
Это означает, что на рынок пришло почти 2 млн новичков, которые никогда не занимались трейдингом и не использовали специализированный софт для торгов и учета позиций.
И если мобильные приложения брокеров для торгов постоянно обновляются и в целом достаточно удобны для пользователей, то учёт позиций, особенно при использовании нескольких брокеров (счёт от одного, а ИИС от другого) может вызывать вопросы. Бесплатным решением с автоматическим скачиванием котировок и параметров могут быть гугл таблицы с использованием бесплатного API Московской биржи.
Ранее я уже описывал на Хабре возможности при использовании разных приложений (Intuit Quicken, KMyMoney, Microsoft Excel, Google Таблицы) для совокупного учета капитала “в одном окне”.
API Московской биржи в формулах Google Таблиц
Вообще вариантов использования API Мосбиржи два:
- формулы;
- скрипты.
Но скрипты в бесплатных документах скорее пугают людей, особенно, если у этих людей есть какие-то инвестиции. И особенно, если они не понимают код скрипта. Поэтому я остановлюсь только на формулах.
В общем виде все запросы, которые можно отправить к API Мосбиржи можно узнать в справочнике. Но лично для меня этот справочник был не очень понятен и я далеко не сразу в нём разобрался, поэтому сделал простую Гугл таблицу с примерами, которые использую сам.
Идентификатор режима торгов
В API Московской биржи очень многое зависит от параметра “Идентификатор режима торгов” (primary_boardid), который можно посмотреть прямо у них на сайте через форму поиска.
Идентификатор режима торгов для акций Сбербанка
Также этот идентификатор можно посмотреть через обычный HTTP-запрос к API:
Идентификатор режима торгов primary_boardid для акций Яндекс
Автоматическое получение имени инструмента с Московской биржи по его идентификатору
Очень удобно, что можно получить полное наименование инструмента. Также можно автоматически получать и краткое наименование инструмента, но полное название более понятно особенно для облигаций.
Гугл таблица с примерами автоматического получения имени для разных классов активов
Автоматическое получение цены инструмента с Московской биржи по его идентификатору
Цены на российские активы можно получать с множества сайтов, но если мы говорим про API Московской биржи, то на этой вкладке представлены актуальные примеры.
Гугл таблица с примерами автоматического получения цен для разных классов активов
Автоматическое получение даты следующего купона и его значения с Московской биржи по идентификатору облигации
По облигациям (не только корпоративным, но также ОФЗ и еврооблигациям) можно автоматически получать дату выплаты следующего купона и его значение.
Гугл таблица с примерами автоматического получения дат и значений купонов
Автоматическое получение дивидендной доходности на конкретную дату с Московской биржи по идентификатору облигации
К сожалению, в одну формулу получить значение дивидендной доходности для облигации на конкретную дату можно получить только для ОФЗ, потому что их список короткий. Для корпоративных облигаций — можно перебирать в скрипте, например, или вручную указывать начальную позицию для поиска.
Гугл таблица с примерами автоматического получение дивидендной доходности на конкретную дату
Автоматическое получение дат оферт с Московской биржи по идентификатору облигации
Очень удобно можно планировать собственные финансы, получая оферты по облигациям автоматически.
Гугл таблица с примерами автоматического получения дат оферт
API Московской биржи предоставляет широкие возможности. В статье описал только те инструменты, которыми пользуюсь сам как долгосрочный частный инвестор.
Также хочу отметить, что никак не связан с Московской биржей и использую ИСС Мосбиржи только в личных интересах, например, для учета собственного капитала.
Автор: Михаил Шардин,
4 февраля 2020 г.
Источник
Данные Мосбиржи в гугл таблицах
Половину июня (с начала месяца до 20 июня 2021 года) в гугл таблицах было невозможно получать данные российских акций через встроенную функцию.
При попытке получить котировки с префиксом MCX, например для Сбербанка, формулой из гугл таблиц =GOOGLEFINANCE(«MCX:SBER») возвращался результат #N/A .
Сервис починили и данные снова доступны, но можно сильно расширить диапазон получаемых данных, если использовать API Московской биржи.
Копирование формул из таблицы-примера в ваши собственные таблицы
Вы можете свободно копировать формулы из моей таблицы с примером для использования в собственных таблицах, потому что на формулах нет и не может стоять никакой защиты.
Если после копирования из таблицы-примера в вашу таблицу формула не работает, то проверьте региональные настройки вашей таблицы.
Моя таблица с примером получения данных с Московской биржи
Я использую регион Соединенные Штаты, а если по умолчанию ваш регион Россия, то формулы корректно НЕ копируются!
Вот подробная инструкция как проверить региональные настройки конкретной таблицы:
- Откройте файл в Google Таблицах на компьютере.
- Нажмите Файл затем Настройки таблицы.
- Выберите нужные варианты в разделах «Региональные настройки».
- Нажмите Сохранить настройки.
Если вы не хотите менять регион в своей собственной таблице, то можно просто изменить разделитель в формуле. Для корректной работы надо изменить разделитель с запятой на точку с запятой.
Получение названий акций и облигаций
Гугл таблица с примерами автоматического получения имени для разных классов активов
Можно получать названия акций и облигаций используя сервера Московской Биржи. Сама формула при этом выглядит следующим образом:
Получение цен акций и облигаций
Гугл таблица с примерами автоматического получения цен акций и облигаций
Можно получать цены акций и облигаций используя сервера Московской Биржи. Сама формула при этом выглядит следующим образом:
Получение даты и значения дивиденда для акций
Гугл таблица с примерами автоматического получения дат и значений дивидендов для акций
Можно получать даты и значения дивидендов для акций, используя сервера Московской Биржи. У гугл финанса такого функционала никогда не было для российских акций. Сама формула при этом выглядит следующим образом:
Получение даты купона и значения для облигаций
«> Гугл таблица с примерами автоматического получения дат купонов и значений для облигаций
Можно получать даты и значения купонов для облигаций, используя сервера Московской Биржи. У гугл финанса такого функционала никогда не было для российских облигаций и вообще облигаций в сервисе нет. Сама формула при этом выглядит следующим образом:
Получение даты оферты
Гугл таблица с примерами автоматического получения дат оферт для облигаций
Можно получать оферты облигаций, используя сервера Московской Биржи. У гугл финанса такого функционала никогда не было для российских облигаций и вообще облигаций в сервисе нет. Сама формула при этом выглядит следующим образом:
Источник данных
Если вы хотите разобраться во всех нюансах работы — откуда берутся данные, то вы, также как и я можете обратиться к официальной документации к информационно-статистическому серверу Московской Биржи (ИСС / ISS). Правда, изучая этот документ, вы можете обнаружить что большая часть интересных функций, приведенная в этой статье, в документе никак не отображена.
Итоги
Можно легко расширить список получаемых в гугл таблицу параметров за счёт Московской Биржи.
Эти формулы работают только за счет API Московской биржи, с которой я никак не связан. Использую ИСС Мосбиржи только в личных информационных интересах.
Источник
Api московской биржи google таблицы
Графики котировок ценных бумаг с Мосбиржи и NASDAQ. Включает в себя кравлер суточных данных и платформу для отрисовки графиков.
Цель проекта — скачивать данные о котировках и рисовать по ним разные графики. Кравлер работает с суточными данными Московской биржи по акциям, облигациям, валюте и ETF через MOEX API Для котировок иностранных ценных бумаг (акций, индексов, биткоинов) используется API Alpha Vantage — оно позволяет скачивать суточные данные по любому тикеру с бирж NASDAQ или NYSE
Данные с Московской биржи (MOEX)
API Московской бирже позволяет скачивать за раз все котировки определённого рынка. Например рынка облигаций. Поэтому в одном файле хранятся все данные рынка за день. Например в quotes/2019/03/05/2019-03-05-stock-bonds.csv содержатся цены открытия/закрытия/мин/макс (OHLC) по всем облигациям с указанием названий и ISIN.
Чтобы скачать данные за день, нужно запустить main.py в режиме download с указанием даты (YYYY-MM-DD) и рынка:
Чтобы скачать данные за несколько дней, можно передать диапазон дат: —date 2018-01-01 —dateend 2018-12-31
Данные иностранных ценных бумаг с NASDAQ
Данные скачиваются по заданному тикеру через параметр market . При этом в качестве engine нужно указывать nasdaq . В бесплатном аккаунте Alpha Vantage установлено ограничение на 5 запросов в минуту и 500 запросов в день.
При скачивании тикера с имеющимися данными в папке quotes/NASDAQ/, данные за указанную дату (диапазон дат) будут дописываться в конец csv файла
Платформа предоставляет удобный формат для отрисовки графиков любых ценных бумаг, а также их модифицировать.
Исходные данные котировок и графики хранятся на гитхабе, а точнее хостятся на github pages и доступны по ссылке на сайте https://nerevar.github.io/stock_prices/
Новые графики можно добавлять по образцу имеющихся графиков в папке graph_data/, которые включают в себя:
Конфиг графиков graph.py
Файл graph.py должен содержать класс GraphBuilder , который описывает, по каким данным строить график. Есть возможность указать как одну линию, так и массив из нескольких линий, например на графике облигаций Грузовичкоф рисуются сразу 2 линии.
Также можно загружать разнородные данные из других графиков (папок) — как в примере yndx_rub
- функция market_filter возвращает объект с фильтром, из какого рынка брать данные
- функция quote_filter возвращает объект с фильтром для Pandas DataFrame, который из таблицы со всеми котировками оставится только нужную
- функция get_value возвращает скалярное значение float или массив float’ов с котировками ценных бумаг. На вход принимается filtered DataFrame за один день.
- функция get_values возвращает данные для отрисовки графика целиком: массив из пар [timestamp, value] , на вход принимает данные о ценной бумаге за всё время в Pandas DataFrame
Страничка с графиком index.html
Каждый график требует отдельного файла index.html, который бы загружался в браузере и отрисовывал нужный график. Задаётся заголовок страницы в . Для простых графиков можно дальше ничего не менять:
- при загрузки страницы аяксом загрузятся данные values.csv из той же папки
- и отрисуется HighStock график с помощью метода plotGraph
Пример более сложного графика, который использует данные трёх источников, а затем умножает значение акции YNDX на курс доллара: yndx_rub
Данные для графика values.csv
После скачивания исходных данных котировок за определённый день, их нужно сконвертировать в csv для отрисовки графиков в HighCharts. Для этого нужно запустить main.py в режиме graphs с указанием даты (YYYY-MM-DD) и графика (списка графиков):
Графики с Мосбиржи ежедневно строятся по одной точке: данные нового дня дописываются в конец файла values.csv
(!) Данные с nasdaq формируются целиком за всё время, поэтому их нужно запускать с параметром —clear чтобы очистить предыдущие данные в values.csv
Ежедневное обновление по крону
Каждый день по крону запускается цель cron в Makefile, которая за предыдущий полный день скачивает данные и строит графики для бумаг с MOEX и NASDAQ
Артефакты (сырые данные и подготовленные для графиков) коммитятся под пользователем «Travis CI» и отправляются в гитхаб репозиторий в ветку master благодаря github personal access tokens. Ветка master единственная в проекте и Github Pages в проекте строятся по этой ветке.
Скрипты запускаются в окружении MiniConda с python 3.6, которое настраивается в .travis.yml
Также в Makefile можно передать параметр DAY , чтобы, например, скачать данные и построить графики за определённый день, например:
Добавить новый график
- Скопипастить папку любого графика из graph_data/, оставив graph.py и index.html
- Настроить в graph.py :
- Для московской биржи: в функциях market_filter и quote_filter задать рынок и код ценной бумаги (название или ISIN)
- Для NASDAQ: в функции market_filter задать тикер ценной бумаги
- В index.html придумать название графика и указать в
- Запустить main.py download для скачивания сырых данных с параметрами, описанными выше
- если нужно, то задать диапазон дат для скачивания в прошлое
- Запустить main.py graph для извлечения данных для графика с параметрами, описанными выше
- задать диапазон дат для обработки данных за большой период
- Закоммитить и запушить на гитхаб → график будет доступен по адресу https://nerevar.github.io/stock_prices/graph_data/ /
- Если нужно автообновление по крону — то добавить команды из #4 и #5 в Makefile в соответствующие цели
- формат (csv) и структура папок для хранения данных
- crawler + paginator
- запись логов
- аргументы cli для запуска за любой день
- исторические данные с биржи
- графики, визуализация
- расчёт индексов
- gh-pages
- другие источники данных:
- nasdaq
- btc
- индекс ВДО http://angrybonds.ru/
- автообновление графиков по крону
- Makefile со списком тикеров, которые будут скачиваться и пушится на гитхаб
- travis ci: download data, commit, push to github
- в кроне за день N для nasdaq, сохранять реально только день N, а не всё, что позже => поддержать —date, —dateend
- datetime в tz Moscow в graph_data
- python тесты
- js тесты
- дополнительная информация про каждого эмитента:
- по облигациям: даты погашения/оферты, купоны для расчёта доходности
- приклеить рейтинг (s&p?), срез по эшелонам
- сделать доходности облигаций
- поддерка нескольких линий на одном графике,
- например ОФЗ vs корпораты, сравнению дюрации
- рисовать сразу данные об обороте
About
Графики котировок ценных бумаг с Мосбиржи и NASDAQ
Источник
Как я слежу за акциями в гугл-таблице: три простых способа
Я использую гугл-таблицы для портфеля инвестиций, потому что с ними проще вести учет.
Михаил Шардин кандидат технических наук Профиль автора
Упрощение связано с тем, что можно в автоматическом режиме получать данные о текущих ценах и других параметрах активов, которые публикуются открыто.
Для этого я комбинирую три бесплатных сервиса, которые подтягивают данные с разных бирж с помощью API. В статье расскажу, как настроить их под свои нужды.
Что за АПИ
В большинстве случаев данные с бирж передаются через программный интерфейс, называемый API — application programming interface. Грубо говоря, это инструмент, благодаря которому одна программа начинает говорить на одном языке с другой. В нашем случае мы используем API финансовых бирж для «дружбы» с гугл-таблицами.
API Московской биржи
Для чего. Получить информацию о российских акциях и облигациях.
Как это работает. У Московской биржи есть API, который позволяет видеть любую информацию с российской биржи внутри гугл-таблиц. Например, можно получать имена инструментов, цены закрытий, даты оферт и другие параметры.
Работа этой функции полностью зависит от сервера Московской биржи. Если биржа поменяет формат выдачи, организует какие-то другие режимы торгов или изменит что-то в существующей системе, то для корректной работы формул потребуется их доработка.
Такая выборочная информация с биржи пригодится для разных целей. Можно создать гугл-таблицу, чтобы покупать облигации с хорошей ликвидностью, — об этом я уже рассказывал. А можно следить за параметрами бумаг в собственном портфеле — например, за датами оферт. Это поможет не пропустить важную дату, если хотите принять участие в досрочном погашении.
Еще таблица пригодится, если вас не устраивают существующие сервисы учета — Intelinvest и Investing.com.
В таблице-примере к этой статье я привел несколько полезных параметров ценных бумаг. Вот что она умеет:
- подтягивать название бумаги по идентификатору — столбец «Названия акций и облигаций»;
- показывать текущие курсы — столбец «Цены акций и облигаций»;
- получать даты выплат облигаций — столбец «Даты купона и значения для облигаций»;
- получать дивиденды — столбец «Даты и значения дивиденда для акций»;
- видеть возможность досрочного погашения облигаций — столбец «Даты оферт».
Что делать? 30.06.17
Список далеко не полный, ведь на Мосбирже огромное количество параметров, включая срочный рынок и валюты.
Источник