В какой-то момент я переведу текст ниже на английский язык и он будет в этом месте.
Еще с 11 класса политехнической гимназии я загорелся желанием создать бота для торговли на бирже различными валютами, акциями и другими видами ценных бумаг. Несколько раз участвовал в хакатонах по этой теме, набираясь опыта. Но не получалось создать из этого полноценную систему, которая устраивала бы меня.
И вот, наконец, я готов представить свой PET-project, который планирую в дальнешем дорабатывать по мере возможностей. Как только бот будет готов, его можно будет найти в Telegram.
Скоро здесь появится краткое описание алгоритма.
С подробной информацией можете ознакомиться в файле /model/tinkoff-prediction.ipynb
.
Проект разделен на 4 логических части:
/model
- Описание модели, сама модель, скрипт для ее обучения, датасет и сервер на FastAPI, который позволяет обращаться к модели./server
- Сервер на базе фреймворка FastAPImain.py
, к которому подключена база данных SQLite. Планировщикscheduler.py
периодически обновляет текущую стоимость акций и позволяет получать их другим компонентам системы. Также, в дальнейшем планируется запускать раз в деньget_figi.py
, который будет получать актуальные значения figi, являющиеся уникальными идентификаторами ценных бумаг и валют на бирже Tinkoff, которые, по словам компании, могут периодически меняться./telegram_bot
- Асинхронный Telegram бот, созданный на основе фреймворка aiogram. Общается с сервером по протоколу http./web_app
- Frontend для системы, созданный на основе фреймворка React. С использованием библиотеки Tremor.
Для запуска, остановки системы и создания виртуального окружения я создал соответствующие bash скрипты: start.sh
, stop.sh
и setup.sh
. Также для успешного запуска необходимо получить и настроить токены Telegram бота и доступа к бирже в соответствующих местах кода.
Все python зависимости лежат в файле requirements.txt
.
Вы можете найти меня здесь:
Также можете ознакомиться с моим резюме.