bgdn.me

A personal blog.

Визуализация личных расходов


  • Fri 13 December 2019
  • Blog
  • en

Проблема

Приложений и сервисов, помогающих вести учет и анализ личных финансов, чрезвычайное множество. Одним из таких и я пользовался несколько лет подряд, прилежно заполняя все транзакции вручную на смартфоне. Потом перестал.

Я был по-прежнему убежден в необходимости учета расходов. Но в один момент, осознав, что большинство моих трат осуществлялись через карту, продолжать вручную вносить данные потеряло смысл. Выписки проще скачать из интернет-банкинга и затем проанализировать.

Разумеется, некоторые современные приложения из категории личных финансов умеют синхронизироваться с банковскими счетами. Правда, не многие из них работают с украинскими банками, но еще меньше делают это стабильно и быстро (иногда синхронизация обрывалась после десятков минут ожидания).

Но более того, еще со времен ручного ввода мне не хватало целостной картины, общего понимания трендов моих затрат. Мне захотелось иметь информационную панель (dashboard), которая бы с одного взгляда давала мне общее видение расходов в этом месяце и сравнение с предыдущими. Те приложения и сервисы, которые я успел рассмотреть, предоставляли довольно скудные средства для подобной визуализации1.

Так у меня появилась затея самостоятельно реализовать решение, чтобы визуализировать личные расходы.

Решение

1 - Электронные таблицы

Я не стал придумывать велосипед, а взял за основу электронные таблицы, именно: Google Sheets. Там я начал сохранять транзакции по моим картам Приватбанка, экспортируя из Приват24.

Ниже приведена копия такой таблицы с фиктивными транзакциями в качестве примера:

Вкладка с транзакциями в Google Sheets

Сама таблица доступна по этой ссылке

2 - Автоматизация

Выгружать выписки каждый месяц вручную, конечно, вскоре мне наскучило. К тому же, хотелось более частого обновления данных. Поэтому я написал python-скрипт, который выгружает транзакции за меня ежедневно и затем записывает в Google Sheets. В этом мне помогают API Приватбанка и python-библиотека для работы с Гугл Таблицами gspread.

Еще скрипт присваивает категории всем записям по заранее определенным правилам, что очень удобно.

Скрипт запускается с помощью cron автоматически ежедневно в 2 часа ночи, выгружая транзакции за предыдущий день.

Код опубликован на Гитхабе здесь.

3 - Визуализация

Наконец, чтобы реализовать мою затею с панелью, я воспользовался Google Data Studio, подключив к моей таблице с транзакциями. Здесь видна суммарная информация по категориям расходов в текущем месяце; сколько потрачено в целом, сколько предстоит и сколько сейчас на балансе; а также тренд помесячно в общем и по нужной мне категории. Также я добавил бюджеты и кривую накопления по месяцам.

Вот что из этого получилось:

Панель персональных расходов в Google Data Studio

Панель доступна по ссылке.

Выводы

После нескольких месяцев пользования у меня только положительные впечатления. От меня не требуется фиксировать транзакции - все сохраняется автоматически. У меня всегда есть свежая информация, чтобы сделать более точное планирование будущих трат. Благодаря визуализации я понимаю структуру моих расходов более целостно; более часто чем нет, удается вписываться в бюджет.

На мой взгляд, главные преимущества этой системы — в следующих особенностях.

Гибкость. Электронные таблицы предоставляют значительную гибкость в работе с транзакциями, включая редактирование данных, сравнение расходов с предыдущими периодами, и расчет бюджетов.

Визуализация. Такой инструмент как Google Data Studio предоставляет большие возможности в визуализации данных. Можно построить отчет, используя различные графики, чтобы сфокусировать внимание на нужных вещах и сделать корректировку в дальнейших планах. GDS имеет функцию рассылки на емейл по заданному интервалу, если хотите получать на почту свежий отчет о ваших затратах.

Контроль. Данные о моих расходах принадлежат мне (ну хорошо, на пару с Google :), а не третьей стороне.

Интеграция. Помимо Google Data Studio, Google Sheets интегрируется с другими популярными сервисами по визуализации и автоматизации данных. Свобода решений, которой нет, когда используешь готовое приложение.

Если будут вопросы или отзывы, пишите мне на почту bogdan19@protonmail.com. Буду рад пообщаться.


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