Уведомления при изменении цены акций в Тинькофф Инвестициях

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

История

В момент всеобщего интереса к теме инвестиций, этим начал заниматься и я. А так как я автоматизирую всё, что попадается мне под руки, эту тему также не обошёл стороной.

Для инвестиций выбрал Тинькофф, как один из наиболее популярных и функциональных сервисов. Очень быстро появилась потребность отслеживать цену акций, чтобы держать руку на пульсе. В Тинькофф Инвестициях есть инструмент для этого: уведомления по достижении некоего уровня цены. Но это уведомление срабатывает один раз и его приходится ставить заново, что неудобно. Подходящий для меня функционал обнаружил в приложении Investing.com: уведомление придёт, если цена акции изменится на заданную в процентах величину. После уведомления счётчик сбрасывается и уведомление придёт снова, если это повторится. Установил приложение и добавил для отслеживания свои акции - то что нужно!

Но со временем, когда я продал несколько акций и купил другие, стало понятно, что вносить те же изменения в приложении Investing.com мне лень + раздражало лишнее приложение на телефоне. Благо, у Tinkoff Investing есть API. Решил реализовать тот же функционал с уведомлениями, но непосредственно для моих акций, а уведомления получать в Telegram. Так родился проект https://github.com/DiTsi/tinkoff_investing_notifier.

Конфигурация

Telegram

Необходимо создать бота в Telegram (инструкция) и получить его Токен и ID группы или пользователя, которому бот должен посылать уведомления.

Tinkoff Investing Токен

ВНИМАНИЕ! Токен даёт доступ к вашему портфелю. Обеспечьте его безопасное хранение.

Для работы приложения необходимо получить токен для Тинькофф Инвестиций здесь.

.env file

Рядом с docker-compose.yml файлом создаём файл .env с переменными окружения, где прописываем все поля:

TIMEZONE=Europe/Moscow
TOKEN= # Токен для Tinkoff Investing API
TELEGRAM_GROUP= # ID группы или пользователя Telegram, 
                # куда бот будет отправлять сообщения
TELEGRAM_TOKEN= # bot token

MARIADB_HOST=
MARIADB_PORT=3306
MARIADB_DB=
MARIADB_USER=
MARIADB_PASSWORD=

docker-compose.yml

В docker-compose.yml необходимо поправить environment.

config.yml

notifications:
  stock_change:
    percent: 2.0 # на какую величину должна измениться цена на акцию
                 # для получения уведомления

На этом конфигурация завершена, можно запускать через

docker-compose up -d

Скриншоты

Так выглядят уведомления. При нажатии на название акции вас перебросит в портфель на соответствующую акцию.

Также поддерживаются уведомления о покупке / продаже акций:

Заключение

В коде есть что поправить, есть функционал, который хотелось бы нарастить, но, к сожалению, нет времени + интерес сместился в другую плоскость. Чувствую, что нескоро вернусь к проекту, чтобы исправить его недостатки, поэтому публикую как есть - надеюсь, не только мне будет полезен функционал. У меня уже несколько месяцев проложение работает и помогает мне следить за курсом.

Источник: https://habr.com/ru/post/577416/


Интересные статьи

Интересные статьи

Привет, Хабр! Ты, наверняка, знаешь, что большинство крупных бизнесов с более 100% дохода находятся по ту сторону закона. В конце 2020 года такие прибыли стали повседневной реальностью для продавцов в...
Все комьюнити разработчиков торговых роботов, варится вокруг Python и C#, на вопрос почему именно эти языки, они начинают неразборчиво бурчать про многопоточность, количе...
Адриан Ханнеман. Два мальчика, выдувающие пузыри. ок. 1630 г. Музей искусств Нортона, Уэст-Палм-Бич. Пару месяцев назад на Хабре вышла статья «На фондовом рынке США сформировался пузыр...
Всем привет. Когда я искал информацию о журналировании (аудите событий) в Bitrix, на Хабре не было ни чего, в остальном рунете кое что было, но кто же там найдёт? Для пополнения базы знаний...
«Битрикс» — кошмар на костылях. Эта популярная характеристика системы среди разработчиков и продвиженцев ныне утратила свою актуальность.