Ввиду того, что США и Россия находятся в разных часовых поясах, часы работы Американских и Российских фондовых бирж отличаются. Так, если Американские фондовые биржи (NASDAQ, NYSE) открываются в 17-30 по Московскому времени, то Российские фондовые биржи (MOEX, SPBEX) открываются в 9-30. Иногда выходит так, что новости по американским компаниям, которые могут повлиять на котировки, выходят вне времени работы Американских бирж. Однако Российские биржи могут быть уже открыты. Потенциально, отслеживая важные новости, и входя в позиции этих компаний на Российских биржах, можно успеть на Американском пре-маркете получить прибыль.
Приложение состоит из web-приложения на Flask и телеграм-бота.
Сайт имеет три вкладки:
- Все новости
- Новости по акциям, торующимися на СПБ бирже
- Тикеры всех акций, торгующихся на СПБ бирже
Новости парсятся автоматически по заданному интервалу. Со второй и третьей вкладки можно перейти на отдельную страницу по каждой акции. На странице отображается:
-
Диаграмма перспективности компаний (за основу расчета взят алгоритм построения подобной диаграммы в приложении Simply Wall Street
В footer есть ссылка на бот рассылки.
Бот позволяет пользователю подписаться на рассылку. Если пользователь подписан, ему приходят новости по компаниям,
торгующимся на СПб бирже. Также через бот он может посмотреть рейтинг аналитиков, диаграмму перспективности и график
цены.
Скачайте проект с github.
git clone https://github.com/balancy/ProjectStocksNews.git
Создайте виртуальное окружение и установите зависимости:
pip install -r requirements.txt
Переименуйте файл example.config.py в config.py. Присвойте значения константам:
SQLALCHEMY_DATABASE_URI - Ссылка на Вашу базу данных
BOT_API_KEY - API ключ Вашего телеграм бота
BOT_API_LINK - Ссылка на Ваш бот
FINANCIAL_API_KEY - Ваш ключ на сайте FINANCIAL_BASE_URL
HOST_NAME - Имя Вашего хостинга
SENTRY_DSN_FLASK - DSN для Flask-приложения с Вашего sentry аккаунта
SENTRY_DSN_BOT - DSN для бота с Вашего sentry аккаунта
Создайте Базу данных:
python create_db.py
Для старта web-приложения запустите flaskr app. Для старта бота запустите reading_bot.py.






