Разбираться в финансах по выпискам из трёх банков — то ещё удовольствие. Дашборд собирает балансы, транзакции и инвестиции на один экран. Python подходит для этого почти идеально: библиотек много, порог входа низкий.
С чего начать: источники данных
Первый вопрос — откуда брать данные. В типичной схеме три типа источников: банковский API, биржевые котировки и криптобиржа. За банковский счёт отвечает библиотека pybank, за котировки — yfinance, за биржу Binance — python-binance. Если банк не даёт открытого API, выписки можно тянуть через requests и собирать в pandas.
В примере банк — вымышленный, но схема универсальная: ключ, эндпоинт, GET-запрос, затем json_normalize и DataFrame. Все финансовые данные лучше складывать в одном месте и в одном формате.
| Источник | Библиотека | Что отдаёт |
|---|---|---|
| Банковский API | pybank, requests | Балансы, история транзакций |
| Биржевые котировки | yfinance | Данные по акциям с Yahoo Finance |
| Криптобиржа | python-binance | Доступ к аккаунту Binance |
Переносим данные в pandas
Самые частые грабли — смешивать разные источники в одной таблице. У банка даты в одном формате, у биржи в другом, у Binance валюты вообще в третьем. Первым делом приведи всё к единому виду: datetime, одинаковое количество знаков после запятой, одна валюта. Иначе график построится, но будет врать.
Данные без единого формата — источник багов, которые видны не сразу.
Визуализация: matplotlib и seaborn
Дашборд рисуют с помощью matplotlib и seaborn. Это простой путь: одна фигура, один график баланса по датам. Для старта этого достаточно. Когда привыкнешь, можно разбить на подграфики: балансы, расходы по категориям, доходность портфеля. Главное — начать с одной линии, чтобы не утонуть в деталях.
Бюджет по категориям
Бюджет удобно декомпозировать. В примере четыре категории: жильё, еда, транспорт, развлечения. Для базового контроля хватает, но в жизни обычно добавляются здоровье, связь, подписки. Принцип не меняется: категория — сумма, потом сводишь в DataFrame и смотришь перекосы.
Деплой: как сделать дашборд доступным
Когда дашборд готов, хочется открывать его с любого устройства. Самый беспроблемный вариант — Heroku. Команды простые: создать приложение, задать Python buildpack, закоммитить и запушить. Через пару минут получаешь готовый URL.
| Способ | Где работает | Сложность |
|---|---|---|
| Heroku | Облачная платформа | Низкая: create, push, open |
| AWS Lambda | Функция в облаке | Выше: нужно настраивать триггеры и роли |
| Локальный сервер | Ваша машина в virtualenv | Просто, но доступ только из вашей сети |
Типичные ошибки
- Не приводить даты к единому формату — первый кандидат на странные графики.
- Пытаться сделать всё сразу: пять графиков, три источника, алерты на почту. Начни с одного графика.
- Игнорировать лимиты API. Если данных много, кэшируй ответы.
- Хранить ключи в коде. Это самая опасная из ошибок, особенно при деплое на GitHub.
- Ждать, что дашборд сам наведёт порядок. Он лишь показывает, что уже есть.
Итог
Личный финансовый дашборд — это не волшебная таблетка, а инструмент. Он не сэкономит деньги сам, но снимает главную боль: не надо раскладывать по полу десять выписок. Собрали данные, нарисовали линию, задеплоили. Остальное — дело привычки.
Комментарии (0)
Войдите, чтобы комментировать.
Пока нет комментариев. Будьте первым.