Оптимальный способ ведения личных финансов. Строим дашборд в Power BI

Описание метода

Я веду учёт личных финансов уже около четырёх лет. Я постоянно записываю все свои доходы и расходы, а затем периодически анализирую их.

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

Я пробовал вести учёт в таблицах Google и Excel, а также в различных приложениях, но так и не смог найти оптимальный метод. Однако в последнее время я, кажется, нащупал подходящий способ и хочу поделиться им с вами.

Способ следующий - мы ведем расходы в приложении, из которого можем достать csv с историей транзакций. Этот csv - источник данных для дашборда, который вы сделаете под свои запросы. Я буду рассказывать о конкретном примере - связке приложений ДзенМани и power bi. Вы можете заменить приложение на то, которое вам удобно - лишь бы из него можно было достать csv со всей историей ваших записей. Изучать csv и строить диаграммы и графики также не обязательно нужно в power bi - можете делать это в excel / data lens/ google looker.

Плюсы метода:

- Дешевизна. Дзен мани стоит 30$ навсегда. За эти деньги приложение может синхронизироваться с банками, у нее отзывчивый саппорт. Команда фиксит баги, добавляет новые фичи. Имеет вполне удобный дизайн, дружит с банками РФ и СНГ. Самое главное - имеет возможность выгрузки всех транзакций в csv. Альтернативное приложение YNAB за 100$ в год выглядит на фоне ДМ не так ярко.

- Анализ на любой вкус. Имея csv файл с историей трат с помощью обычной сводной таблицы в эксель вы сможете ответить практически на любой вопрос о своих финансах. Ни одно приложение ни с какими виджетами не сравнится. Да, это немного труднее сделать, но настроив дашборд один раз, вы потом просто подгружаете обновленную историю трат на вход и обновляете данные.

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

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

На выходе вы можете построить что-то похожее на дашборд ниже. Он позволит легко видеть как растут доходы/расходы, их соотношение, количество сбереженных денег, норму сбережений, оценить как растет расход по каждой из категорий и тд. Отчет интерактивен - при клике на нужную дату, категорию - все визуальные элементы фильтруются. Самое главное - вы можете в красиво визуализировать любой из ответов на свой вопрос о личных финансах.

Оптимальный способ ведения личных финансов. Строим дашборд в Power BI

Лайфхаки при работе с дзен мани.

Не буду рассказывать о том, как пользоваться приложением - оно интуитивно понятно + есть куча инфы на сайте самого дзен мани. Дам лишь пару советов, если вы только начинаете вести расходы/доходы.

Делайте структуру трат и доходов более подробной.

Каждая запись дохода/расхода в дзен мани имеет категорию и подкатегорию. Вначале я вел расходы , используя слишком обобщенные категории, без подкатегорий - например - еда, вещи. Потом, при анализе, я столкнулся с тем, что недостаточно хорошо могу оценить - какие конкретно из расходов как изменяются и стал использовать подкатегории. Структура расходов стала выглядеть более подробно - например: Еда/Продукты, Еда/Кафе, Еда/Доставка еды, Вещи/Одежда, Вещи/Электроника, Вещи/Вещи для дома и тд. Такой подход оказался куда лучше, теперь легко оценить как меняется ваш расход на каждую из подкатегорий отдельно и на каждую из категорий в общем. Тоже самое и с доходами, не стоит помечать все как "зарплата", если зарплаты приходят с разных работ. Совет будет особенно важным тем, кто решит только начать вести траты - так вы сразу начнёте вести их правильно.

Вносите траты регулярно.

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

Создаем дашборд в power bi

Для создания дашборда выгружаем данные из Дзен Мани:

Оптимальный способ ведения личных финансов. Строим дашборд в Power BI

CSV файлик, который вы скачаете будет выглядеть примерно вот так.

Оптимальный способ ведения личных финансов. Строим дашборд в Power BI

В дальнейшем анализе нам нужны будут лишь следующие столбцы - дата операции, сумма операции, валюта операции и категория. Также удалим ненужные строки - те, где поле "Категория" пусто. Это долги, операции корректировки и тд.

После удаления у нас таблица с только необходимыми категориями:

Оптимальный способ ведения личных финансов. Строим дашборд в Power BI

Добавляем курсы валют.

В дзен мани транзакция записывается ровно в той валюте, в которой она была сделана. Знак валюты указан в соседней ячейке. Такой способ записи не позволяет построить график корректно.

Нам нужно создать новые столбцы для каждой из валют, в которых мы хотим делать анализ.

Для этого нужно узнать, какие валюты у вас использовались в истории транзакций. У меня это были 3 валюты rub, kzt, usd.

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

Для этого создадим Гугл таблицу, в которой с помощью формул расставим курсы валют. По ссылке - пример таблицы - для генерации курса другой валюты нужно просто изменить ее символ в формуле. Скопируйте себе эту таблицу и рассмотрите формулы, которые я использовал. Также вы можете попросить чатгпт объяснить их, если они не понятны. https://docs.google.com/spreadsheets/d/1WFmeyNHzbrseueW-rPclWKs9fbul0ksMRqPcI0V0u7Q/edit#gid=121773737

Оптимальный способ ведения личных финансов. Строим дашборд в Power BI

Теперь с помощью функции объединения таблиц в power query мы перенесем эти курсы валют в таблицу с транзакциями.

Теперь у нас есть новые столбцы с курсами валют, меняющимися в зависимости от даты.

Оптимальный способ ведения личных финансов. Строим дашборд в Power BI

Создаём кастомные столбцы с расходом и доходом для каждой валюты. Логика расчета следующая: если в столбце x - значение USD, то столбец income нужно умножить/разделить на значение в столбце курс валют. Аналогично для всех необходимых валют.

Оптимальный способ ведения личных финансов. Строим дашборд в Power BI

Аналогично создаются столбцы и для остальных валют.

Теперь в нашей таблице есть все необходимое - дата операции, сумма операции в разной валюте и ее категории.

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

Чтобы обновлять отчёт, вам нужно просто обновлять выгрузку из Дзен Мани.

Оптимальный способ ведения личных финансов. Строим дашборд в Power BI

Заключение

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

Моя цель — показать возможный подход к ведению личных финансов, а не дать исчерпывающие ответы на все вопросы «как?». Буду благодарен за обсуждение и предложения от тех, кто знает, как можно улучшить этот подход.

22
6 комментариев

Было бы интересно увидеть, как построить сценарный анализ (оптимистичный-пессимистичный) на 1-3 года вперед на основе прогнозов в Power BI

1
Автор

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

Если научитесь обращаться к API Дзенмани из powerquery или через VBA буду признателен за помощь. Пока нашел только экспорт данных в Google SpreadSheets (если вам нужно - гуглится по запросу "Ryadnov / zm2gspread")

let
// Define the URL for the request
SourceUrl = "https://api.zenmoney.ru/v8/diff/",

// Create the data payload for the POST request. currentClientTimestamp задать текущему UnixTime, отбросив последние 3 знака, как сказано в https://github.com/zenmoney/ZenPlugins/wiki/ZenMoney-API#diff
// Суть тут в том, чтобы передать хоть какие-нибудь данные в запрос. Тогда PowerQuery сделает POST запрос, а не GET
Data = Json.FromValue([lastServerTimestamp = 0, currentClientTimestamp = 1730387544]),

// Set up headers, including the Authorization header. XXXX - ваш токен. можно взять в Zerro.app
Headers = [
#"Authorization" = "Bearer XXXXXXXX",
#"Content-Type" = "application/json"
],

// Configure the request to use the POST method, pass headers, and include the JSON payload
Response = Web.Contents(
SourceUrl,
[
Headers = Headers,
Content = Data,
ManualStatusHandling = {400, 404, 500} // Optional: to handle specific status codes manually
]
),

// Parse the response JSON
JsonResponse = Json.Document(Response)
in
JsonResponse

1

нейропостам большой привет