Загружаем курсы криптовалют с помощью api и Power Query

Курсы валют через Power Query

Добрый день, уважаемые читатели блога! Сегодня речь пойдёт снова о загрузке курсов валют, только теперь мы обратимся к криптовалютам. 

Основным источником данных о котировках будут служить биржи - Kraken, Binance, Poliniex, Bitterex и прочие. Что их объединяет? Ответ прост - API (application programming interface, программный интерфейс приложения, если по-русски).

Самое забавное, что к этому интерфейсу нельзя обратиться с помощью простого web запроса в Excel. Как мы это делали раньше. Выход есть - использовать Power Query.

Power Query - это специальная технология получения и анализа данных от компании Microsoft. Для Excel 2016 её отдельная установка не требуется (пакет уже включён в программу), для всех остальных версий придётся качать отдельно, также нужно обратить внимание на разрядность вашего офиса (х32, х64). 

ССЫЛКА

Скачали, установили и теперь в Excel появится новая вкладка - POWER QUERY.

курсы валют через Power Query

 

Вкладка выглядит следующим образом:

курсы валют через Power Query

В принципе можно рассматривать Power Query как надстройку над вкладкой "Данные", так как у нас расширяется выбор источников получения данных.

Ну что ж, теперь перейдём непосредственно к загрузке. Цель - получить соотношение покупки продажи криптвалютных пар (ETH/BTC). К примеру, нужно загрузить курс с биржи Binance. 

Весь труд будет в следующем - найти API биржи и его "руководство пользователя". Для нашей биржи оно находится по адресу:

https://github.com/binance-exchange/binance-official-api-docs/blob/master/rest-api.md

Базовой точкой входа будет:

https://api.binance.com/

И далее идёт пространное описание возможностей синтаксиса. Экспериментальным путём и опираясь на это руководство пользователя, выяснилось следующее: для получения данных по конкретной паре валют необходимо указать путь до "бегущей строки" биржи и прописать символьное обозначение пары.

Вот так:

https://api.binance.com/api/v3/ticker/price?symbol=ETHBTC

  • v3 - версия api биржи;
  • ticker - "бегущая строка" котировок;
  • price?symbol=ETHBTC - текущая стоимость продажи.

Воспользуемся полученной ссылкой. Переходим на вкладку "Power Query" и нажимаем кнопку "Из интернета" (она самая первая). Перед нами появится окно с запросом источника загрузки данных, в поле "URL адрес" записываем адрес интересующей  пары. Для загрузки остальных нужно просто поменять краткие названия криптовалют в конце строки.

курсы валют через Power Query

Нажимаем "ОК" и попадаем в редактор запроса и представления на листе Excel.

курсы валют через Power Query

 

Видим, появился редактор, данные и параметры запроса. Мы находимся на вкладке "Конвертировать". Перейдём на вкладку "Просмотр" и поставим галку "Строка формул", чтобы видеть запрос в привычном представлении.

курсы валют через Power Query

 

Возвращаемся на вкладку "Конвертировать" и нажимаем кнопку "В таблицу".

курсы валют через Power Query

 

Поскольку нам ничего пока больше не нужно, в появившемся окне нажимаем "Закрыть и загрузить", чтобы данный запрос появился на листе.

курсы валют через Power Query

В результате получим вот такую картину.

курсы валют через Power Query

Цель достигнута, курсы подгрузились. Теперь нужно настроить их на автоматическое обновление. Справа у нас есть столбец "Параметры запроса", щелкаем правой кнопкой мышки по нашем запросу и выбираем "Свойства", ставим галку "Быстрая загрузка" -> Ок.

курсы валют через Power Query

Далее мы оказываемся на вкладке "Конструктор", в блоке кнопок "Данные из внешней таблицы" щёлкаем по треугольнику после кнопки "Обновить", затем выбираем пункт "Свойства подключения". В следующем окне нужно настроить время обновления нашего запроса.

курсы валют через Power Query

Проставляем галки как на рисунке. Тем самым мы добиваемся автоматического обновления котировок в течение одной минуты, а если нам нужно - можем обновить сами по нажатию кнопки. Нажимаем "ОК".

Готово! Ждём минуту, курс обновляется сам. Теперь котировки будут подгружаться автоматически.

Единственный минус - для большого количества запросов придётся всё создавать ручками, что в свою очередь будет сильно нагружать программу Excel при обновлении курсов криптовалют.

Автор записи: Иван

Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.