Слогер Создать блог
Разработка

Как собрать личный финансовый дашборд на Python: от счетов до деплоя

Пошаговый разбор: как подтянуть данные о счетах, расходах и инвестициях в один экран на Python, собрать графики и задеплоить дашборд.

Разбираться в финансах по выпискам из трёх банков — то ещё удовольствие. Дашборд собирает балансы, транзакции и инвестиции на один экран. Python подходит для этого почти идеально: библиотек много, порог входа низкий.

С чего начать: источники данных

Первый вопрос — откуда брать данные. В типичной схеме три типа источников: банковский API, биржевые котировки и криптобиржа. За банковский счёт отвечает библиотека pybank, за котировки — yfinance, за биржу Binance — python-binance. Если банк не даёт открытого API, выписки можно тянуть через requests и собирать в pandas.

В примере банк — вымышленный, но схема универсальная: ключ, эндпоинт, GET-запрос, затем json_normalize и DataFrame. Все финансовые данные лучше складывать в одном месте и в одном формате.

ИсточникБиблиотекаЧто отдаёт
Банковский APIpybank, 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.
  • Ждать, что дашборд сам наведёт порядок. Он лишь показывает, что уже есть.

Итог

Личный финансовый дашборд — это не волшебная таблетка, а инструмент. Он не сэкономит деньги сам, но снимает главную боль: не надо раскладывать по полу десять выписок. Собрали данные, нарисовали линию, задеплоили. Остальное — дело привычки.

По материалам: finance. Текст переработан редакцией Слогера.

← На главную

Рекламное место — Конец поста
Реклама · Слогер

Комментарии (0)

Войдите, чтобы комментировать.

Пока нет комментариев. Будьте первым.