Финансовая аналитика в реальном времени с Fava и Beancount
Введение
Beancount — это система бухгалтерского учета с открытым исходным кодом, использующая текстовые файлы в качестве главной книги. Она подчеркивает простоту, прозрачность и гибкость в отслеживании финансов. Fava — это мощный веб-интерфейс для Beancount, предоставляющий интерактивный интерфейс для просмотра отчетов, визуализаций и управления вашей главной книгой. В этом отчете мы рассмотрим основные возможности Beancount и Fava и способы достижения финансовой аналитики в реальном времени или почти в реальном времени с помощью этих инструментов. Мы рассмотрим советы по настройке автоматизации и обновления данных, функции визуализации Fava (для мгновенного просмотра денежных потоков и выявления тенденций), интеграцию с внешними панелями мониторинга (Grafana, Metabase и т. д.), примеры пользовательских панелей мониторинга и плагинов, варианты использования в личных финансах и финансах малого бизнеса, сравнения с другими платформами (Power BI, QuickBooks), а также плюсы и минусы использования Fava + Beancount для получения аналитических данных.
Основные возможности Beancount и Fava
Beancount (механизм учета в виде простого текста)
- Главная книга с двойной записью в виде простого текста: Beancount хранит транзакции в одном текстовом файле
.beancount(или нескольких файлах, включенных вместе). Каждая транзакция должна быть сбалансирована (общая сумма дебетов = общей сумме кредитов) по счетам, обеспечивая целостность учета. Формат простого текста означает, что ваши данные удобочитаемы, контролируются версиями и не привязаны к какому-либо поставщику. - Гибкие, иерархические счета: Вы можете определять любые счета (например,
Assets:Bank:Checking,Expenses:Food:Coffee) в иерархии. Beancount не имеет собственного мнения о вашем плане счетов, поэтому он подходит для личных финансов, книг малого бизнеса, инвестиций и т. д. — он «гибкий: подходит для личных финансов, бухгалтерского учета малого бизнеса, криптовалюты, инвестиций в акции и многого другого». - Несколько валют и товаров: Beancount имеет первоклассную поддержку нескольких валют и товаров (например, акции, криптовалюта). Вы можете записывать транзакции в разных валютах, определять обменные курсы (ценовые директивы) и отслеживать себестоимость. Он может создавать отчеты «по себестоимости» или «по рыночной стоимости», если предоставлены данные о ценах. Это делает его подходящим для портфелей и международных финансов.
- Автоматизированные проверки и балансы: Система поддерживает утверждения баланса (вы можете объявить, каким должен быть бал анс счета на определенную дату, и Beancount выдаст ошибку, если он не совпадает) и балансовые транзакции для закрытия книг. Он также поддерживает операции открытия/закрытия собственного капитала и удержание расчета прибыли для закрытия периода. Это помогает обеспечить согласованность ваших книг и своевременно выявлять ошибки.
- Мощный механизм запросов и отчетов: Beancount поставляется с языком запросов BQL (Beancount Query Language) и инструментами командной строки, такими как
bean-balance,bean-registerиbean-queryдля создания отчетов. Вы можете запрашивать главную книгу для создания пользовательских отчетов (например, список расходов по получателю платежа, движение денежных средств за период) — по сути, рассматривая главную книгу как базу данных. Это быстро даже при тысячах транзакций и может выводиться в CSV или даже напрямую в Excel/LibreOffice (с дополнительными надстройками). - Расширяемость с помощью плагинов: Beancount написан на Python и позволяет использовать пользовательские плагины для расширения его функциональности. Плагины могут обеспечивать соблюдение дополни тельных правил или расчетов при обработке файла. (Например, существуют плагины для обработки налоговых лотов или для обеспечения того, чтобы ни одна покупка не осталась без стоимости.) Система плагинов и API Python позволяют опытным пользователям создавать собственные сценарии поведения или интегрировать Beancount с другими системами.
- Импортеры для внешних данных: Ключевой практической особенностью является платформа приема Beancount для импорта данных (например, из банковских выписок). Вы можете написать или использовать плагины импортера, которые анализируют CSV, OFX, выписки в формате PDF и т. д., и преобразуют их в записи Beancount. Это важно для автоматизации (подробнее об этом позже).
- Удобство аудита и контроля версий: Поскольку это простой текст, вы можете хранить свою главную книгу в Git или другой системе контроля версий. Каждое изменение прозрачно, и у вас есть полная история изменений. Это упрощает аудит или просмотр изменений (многие пользователи фиксируют изменения за каждый день в репозитории Git, предоставляя защищенный от несанкционированного доступа журнал всех финансовых за писей). Этот уровень прозрачности является основным отличием от закрытого бухгалтерского программного обеспечения — «отсутствие привязки к SaaS — только чистый, прозрачный учет с мощной отчетностью».
Fava (веб-интерфейс для Beancount)
- Интерактивный веб-интерфейс: Fava предоставляет локальный веб-сервер, который преобразует вашу главную книгу Beancount в многофункциональный пользовательский интерфейс. Он отображает основные отчеты (Отчет о прибылях и убытках, Бухгалтерский баланс и т. д.), регистры счетов и журналы в браузере с интерактивными элементами управления. Пользовательский интерфейс динамичен и удобен для пользователя по сравнению с командной строкой. Вы запускаете его простой командой
fava yourfile.beancountи получаете веб-приложение для своих книг. - Встроенные графики и диаграммы: Fava генерирует графики, помогающие визуализировать ваши данные. Например, он включает линейную диаграмму Чистая стоимость с течением времени, столбчатые диаграммы для доходов и расходов за месяц, а также круговые диаграммы/диаграммы-деревья для разбивки расходов. Эти визуальные элементы обновляются вместе с вашими данными и поддерживают различные представления (например, «по себестоимости» и «по рыночной стоимости» для инвестиций). Мы подробно рассмотрим эти возможности визуализации позже.
- Фильтрация и поиск: В верхней части страниц Fava панель фильтров позволяет в режиме реального времени разбивать ваши данные на части. Вы можете фильтровать по времени (например, год, квартал, месяц), по регулярному выражению счета, по получателю платежа, по повествованию или по тегам/ссылкам. Это упрощает выполнение проверки данных в реальном времени — например, быстро отфильтровать по «Tag=Travel» и «Year=2025», чтобы увидеть все расходы на поездки в 2025 году с итогами. Интерфейс поддерживает сложные запросы через эту панель фильтров или через страницу запросов (где вы можете напрямую выполнять запросы BQL).
- Поддержка нескольких файлов и консолидация: Fava может загружать несколько файлов Beancount одновременно (полезно, если вы разделяете главные книги) и переключаться между ними. При необходимости он также может консолидировать их (например, личные и деловые книги, просматриваемые вместе).
- Ввод и редактирование данных: Уникальным является то, что Fava не предназначен только для чтения — у него есть редактор и форма ввода транзакций. Вы можете добавлять новые транзакции через веб-форму (она вставит запись в ваш файл .beancount). Вы также можете открыть исходный файл во внешнем редакторе из Fava. Fava даже поддерживает «горячие клавиши в стиле Gmail» (нажмите
?в пользовательском интерфейсе, чтобы увидеть их) для опытных пользователей. Это превращает Fava в облегченную систему бухгалтерского учета, где вы можете вводить и просматривать данные из одного и того же интерфейса. - Отчеты и детализация счетов: Fava предоставляет стандартные бухгалтерские отчеты: Отчет о прибылях и убытках, Бухгалтерский баланс, Оборотный баланс и список холдингов для инвестиций. Бухгалтерский баланс и Отчет о прибылях и убытках являются интерактивными — вы можете щелкнуть счет, чтобы детализировать его, или переключаться между просмотром по себестоимости и рыночной стоимости для активов. Fava также показывает «нерализованную прибыль» для инвестиций, если у вас есть данные о ценах. Он генерирует представление журнала всех записей и позволяет фильтровать этот журнал по различным критериям (отлично подходит для поиска конкретных транзакций).
- Управление документами: Если вы прикрепляете квитанции или выписки, Fava помогает их организовать. Beancount имеет понятие папки документов, и Fava позволяет перетаскивать файлы на счета или транзакции — он сохранит их и добавит запись документа в вашу главную книгу. Это полезно для хранения подтверждающих документов, связанных с данными вашей главной книги.
- Настройка с помощью расширений: Fava можно расширить с помощью плагинов (написанных на Python) для добавления новых отчетов или функциональности. Некоторые расширения поставляются в комплекте (например, отчет список портфелей для инвестиций). Мы обсудим пользовательские расширения позже, но, по сути, дизайн Fava позв оляет вставлять новые страницы и даже пользовательский JavaScript через свой API расширений. Это означает, что если определенный анализ или панель мониторинга не встроены, опытный пользователь может добавить их.
- Производительность: Fava эффективен — он перезагружает данные в память и быстро обслуживает страницы. Базовый синтаксический анализ Beancount довольно быстрый (оптимизированный C++ в последней версии), поэтому даже большие главные книги загружаются за секунду или две. На практике Fava может обрабатывать личные главные книги за многие годы, хотя чрезвычайно большие файлы (десятки тысяч транзакций) могут выиграть от некоторой оптимизации (например, архивирования старых записей).
- Веб-доступ и мобильность: Запустив Fava на сервере или даже на своем ноутбуке, вы можете получить доступ к своим финансам из любого браузера. Некоторые пользователи размещают Fava на частном сервере или Raspberry Pi, чтобы иметь возможность проверять свои финансы на ходу (возможно, защищая их паролем или VPN, поскольку Fava не имеет встроенной аутентификации). По сути, это дает вам собственное «веб-приложение» для ваших финансов, не передавая ваши данные третьей стороне.
В заключение, Beancount предоставляет надежную основу для прозрачного учета на основе текста со строгими правилами двойной записи и поддержкой нескольких валют. Fava основывается на этом, предлагая доступный интерфейс с немедленной аналитикой (отчеты, диаграммы) и возможностью взаимодействия с вашими данными. Вместе они образуют очень гибкую систему учета и аналитики, которую вы контролируете от начала до конца.
Аналитика в реальном времени (или почти в реальном времени) с помощью Beancount и Fava
Достижение аналитики в реальном времени или почти в реальном времени с помощью Beancount и Fava включает в себя автоматизацию потока данных в вашу главную книгу и обеспечение отображения инструментов актуальной информации. По умолчанию Beancount является пакетным процессом (вы добавляете записи в файл, затем просматриваете отчеты), и Fava обнаружит изменения и потребует обновления. Однако при правильной настройке вы можете оптимизировать обновления, чтобы новые транзакции и изменения появлялись почти мгновенно.
Обнаружение изменений файлов: Fava отслеживает файл главной книги на предмет изменений. Если вы редактируете файл .beancount (или включаете файлы) в редакторе, Fava отобразит баннер «Обнаружены изменения — щелкните, чтобы перезагрузить». При нажатии (или нажатии перезагрузки) он перезагружает данные и обновляет представление. На практике эта перезагрузка происходит очень быстро (обычно менее секунды для типичных главных книг). Это означает, что Fava может служить живой панелью мониторинга, если ваш файл главной книги часто обновляется. (В режиме отладки Fava может даже автоматически перезагружать данные при изменении файла, хотя по умолчанию он ожидает подтверждения пользователя, чтобы не нарушить ваш просмотр.)
Конвейер непрерывного импорта/обновления: Чтобы получать данные в режиме реального времени, необходимо автоматизировать добавление транзакций в файл Beancount. Существует несколько распространенных стратегий:
-
Запланированные задания импорта (Cron): Многие пользователи настраивают задание cron (или запланированную задачу) для периодического получения новых транзакций из финансовых учреждений (скажем, каждую ночь или каждый час) и добавления их в главную книгу. Например, вы можете использовать плагины импортера Beancount, чтобы получить последние банковские транзакции через API или загрузку OFX. Один из пользователей Beancount построил конвейер автоматизации, чтобы его книги обновлялись сами: «видеть, как моя бухгалтерская книга обновляется сама, без моего участия, в открытом формате, доставляет мне чистую радость». Это было достигнуто путем подключения к банковским API и планирования регулярных обновлений. Такие инструменты, как
bean-fetch(для OFX) или пользовательские скрипты Python, использующие банковские API (например, Plaid), могут запускаться по расписанию и записывать новые записи в главную книгу. После каждого запланированного импорта, если у вас запущена Fava, вы можете просто обновить Fava, чтобы увидеть новые данные. -
Наблюдатели за файлами и триггеры: Вместо расписаний на основе времени вы можете использовать наблюдатели за файлами для реагирования на события. Например, если ваш банк может отправлять вам по электронной почте ежедневную выписку или вы помещаете CSV-файл в папку, скрипт может обнаружить этот файл (с помощью
inotifyв Linux или аналогичного) и немедленно запустить процедуру импорта, а затем сигнализировать Fava о перезагрузке. Хотя Fava еще не поддерживает отправку живой перезагрузки в браузер, по крайней мере, у вас будут обновлены данные, чтобы в следующий раз, когда вы проверите страницу или щелкните перезагрузку, они были актуальными. Некоторые проекты сообщества идут дальше: для ledger (родственника Beancount) один пользователь создал небольшой сервер, который предоставляет данные ledger в Grafana в режиме реального времени, показывая, что аналогичный подход можно применить и к Beancount — по сути, создать демон, который непрерывно передает данные на ваши панели мониторинга. -
Прямая интеграция с API: Вместо работы с файлами опытные пользователи могут подключаться напрямую к банковским API (например, Plaid или региональным API Open Banking), чтобы часто извлекать транзакции. Мотивированный человек может создать сценарий «живого» импорта в цикле (с соответствующим ограничением скорости) — фактически опрашивая банк на предмет новых данных каждые несколько минут. Ничто не мешает вам «зарегистрироваться в Plaid API и сделать то же самое [автоматизацию] локально». Каждая новая транзакция может быть добавлена в файл Beancount по мере ее поступления. При таком подходе Fava действительно становится панелью мониторинга для ваших счетов в режиме реального времени, конкурируя с актуальной лентой в коммерческих приложениях.
Обновление данных в Fava: Как только ваши данные будут обновлены, заставить Fava отобразить их будет несложно: обновление браузера (F5) или щелчок по баннеру перезагрузки загрузят последнее состояние главной книги. Если вы предпочитаете даже не щелкать, запуск Fava с помощью --debug включает автоматическую перезагрузку для ра зработки расширений, которую некоторые использовали для принудительной немедленной перезагрузки страницы при изменениях. В качестве альтернативы, если вы создаете пользовательский интерфейс, вы можете заставить его опрашивать небольшой API, который возвращает последний баланс или около того из главной книги по расписанию.
Мгновенные расчеты: Быстрый синтаксический анализ Beancount означает, что даже если вы обновляете файл главной книги каждые несколько минут, оборот от получения данных → обновления файла → перезагрузки Fava происходит быстро. Например, один пользователь отмечает, что перезагрузка Fava после редактирования файла «практически незаметна… определенно менее секунды» для главных книг разумного размера. Таким образом, вы можете держать окно Fava открытым и периодически нажимать клавишу обновления, чтобы имитировать живую панель мониторинга. (Для действительно живого опыта можно создать небольшой скрипт для автоматического обновления браузера или использовать функцию обновления браузера каждые N секунд.)
Выверка и оповещения: Чтобы доверять данным в реальном времени, вам также необходимо часто выверять балансы. Beancount упрощает эту задачу с помощью утверждений баланса и индикатора «актуальности». Фактически, Fava предлагает цветные индикаторы рядом со счетами, если вы отмечаете их определенными метаданными (например, вы можете отметить счет метаданными fava-uptodate, и Fava окрасит его в красный/желтый/зеленый цвет в зависимости от того, является ли последняя запись недавней проверкой баланса). Это можно использовать для быстрой проверки того, соответствует ли баланс счета в главной книге последней выписке из банка. При настройке в режиме, близком к реальному времени, вы можете автоматизировать ежедневные проверки баланса (чтобы каждое утро в главной книге был указан вчерашний заключительный баланс из банка для каждого счета). Индикатор Fava покажет вам, пропустил ли ваш автоматический импорт что-то или есть расхождение, обеспечивая уверенность в том, что «живые» данные, которые вы видите, являются точными.
Пример автоматизации: Предположим, вам нужны ежедневные обновле ния движения денежных средств. Вы можете настроить задание cron для запуска в 3 часа ночи каждую ночь: оно выполняет скрипт Python, который использует API вашего банка для получения транзакций за последний день, записывает их в import_today.beancount, а затем добавляет этот файл в вашу основную главную книгу. Он также записывает утверждение баланса на конец дня. Когда вы просыпаетесь, вы открываете Fava — он показывает все транзакции за вчерашний день, и вы видите обновленные доходы/расходы за текущий месяц. Если вы совершаете трату в течение дня, вы можете добавить ее вручную (например, через новую форму транзакции Fava на вашем телефоне) или дождаться ночного импорта. Этот гибридный подход (в основном автоматизированный, с возможностью ручного добавления специальных) дает картину, близкую к реальному времени. Другой подход — оставить страницу Журнал Fava открытой и использовать ее в качестве регистра: по мере того, как вы тратите деньги, вы быстро записываете транзакцию (как при вводе в чековую книжку) — тогда вы являетесь лентой в реальном времени. Это более ручной способ, но некоторым пользователям нравится осознанность, которую он приносит. Для действительно потоковых обновлений без ручных шагов вам нужно будет инвестировать в написание скриптов и, возможно, использовать API сторонних производителей, как обсуждалось.
В заключение, объединив автоматизацию импорта Beancount с быстрым обновлением Fava, вы можете получить финансовые данные, близкие к реальному времени. Возможно, не будет «просто нажать кнопку», чтобы достичь того же уровня живой ленты, что и в сервисе, таком как QuickBooks (который автоматически извлекает банковские ленты), но это возможно — и, что важно, вы сохраняете полный контроль и прозрачность процесса. Как отметил один из сторонников бухгалтерского учета в виде простого текста, небольшие усилия, предпринятые заранее, могут привести к созданию автоматизированной системы, которая «намного лучше коммерческих решений и гораздо более гибкая и расширяемая». В следующем разделе мы увидим, как возможности визуализации Fava позволяют вам немедленно понять эти актуальные данные, превращая необработанные транзакции в аналитические данные.
Возможности визуализации в Fava (движение денежных средств, тенденции, проверка в реальном времени)
(GitHub - beancount/fava: Fava - веб-интерфейс для Beancount) Отчет Fava о прибылях и убытках (в веб-интерфейсе) поддерживает расширенные визуализации, такие как диаграммы-деревья (на рисунке) и солнечные диаграммы, для быстрого понимания структуры доходов и расходов. На этой диаграмме-дереве каждый прямоугольник представляет категорию расходов, размер которой определяется ее суммой — вы можете сразу увидеть, что Аренда (большой зеленый блок) доминирует в расходах. Верхняя панель фильтров и элементы управления (вверху справа) позволяют изменять валюту, тип диаграммы и период времени (например, просмотр ежемесячных данных). Fava также предоставляет линейные диаграммы (например, чистая стоимость с течением времени) и столбчатые диаграммы (например, доходы и расходы по месяцам), чтобы помочь выявить тенденции в ваших финансовых данных.
Одной из самых сильных сторон Fava является мгновенное преобразование данных главной книги в визуальные, интерактивные отчеты. Как только главная книга загружена, Fava генерирует диаграммы, которые упрощают понимание денежных потоков и тенденций:
-
Диаграмма-дерево/солнечная диаграмма доходов и расходов: На странице отчета о прибылях и убытках Fava может отображать ваши доходы и расходы в виде диаграммы-дерева или солнечной диаграммы. Они отлично подходят для визуализации движения денежных средств «с первого взгляда». Например, если ваши ежемесячные расходы отображаются в виде диаграммы-дерева, площадь каждого прямоугольника соответствует величине каждой категории расходов. Большие блоки сразу показывают, куда ушла большая часть ваших денег (н апример, аренда или ипотека, налоги и т. д.), в то время как меньшие блоки показывают незначительные расходы. Это чрезвычайно полезно для выявления тенденций в расходах — если блок «Обеды вне дома» рос каждый месяц, вы заметите это визуально. Вы можете переключиться на солнечную диаграмму, чтобы увидеть иерархическую разбивку (например, внешнее кольцо может показывать подкатегории, такие как продукты против ресторанов в категории «Еда»). Эти диаграммы обновляются для любого периода, который вы отфильтровали (один месяц, с начала года и т. д.), предоставляя вам мгновенную визуализацию движения денежных средств за этот период. Пользователь на форуме бухгалтерского учета в виде простого текста отметил: «Я много использую диаграммы-деревья доходов и расходов. Они дают отличное визуальное представление о наших финансовых движениях» — такое немедленное понимание — именно то, к чему стремятся диаграммы Fava.
-
Чистая стоимость и баланс с течением времени: Fava предоставляет линейную диаграмму для чистой стоимости с течением времени (на странице «Бухгалтерский баланс» или «Статистика»). На этой диаграмме отображается сумма ваших активов за вычетом обязательств в каждый момент времени (по дням, неделям или месяцам). Это неоценимо для выявления тенденций — вы можете увидеть траекторию ваших финансов (например, неуклонно вверх или падения в определенное время). Если у вас есть инвестиции, вы можете переключаться между отображением стоимости по себестоимости и рыночной стоимости (если записаны данные о ценах) — например, вы можете увидеть, что ваша чистая стоимость по рыночной стоимости колеблется в зависимости от цен на акции, в то время как по себестоимости она более плавная. Fava также может отображать остатки на счетах с течением времени. Если вы щелкните счет (например, Assets:Bank:Checking), на странице счета отобразится график истории баланса этого счета. Вы можете мгновенно проверить, как движется ваш денежный счет — что фактически является графиком движения денежных средств (наклон линии баланса указывает на чистое движение денежных средств). Если он имеет тенденцию к снижению, вы знаете, что тратите больше, чем зарабатываете в этот период. Изучая эти тенденции, вы можете выявить такие закономерности, как «каждый декабрь мои сбережения падают (праздничные расходы)» или «мои инвестиции резко выросли в этом квартале».
-
Столбчатые диаграммы для периодического сравнения: В представлении отчета о прибылях и убытках в Fava есть вкладки «Ежемесячная прибыль», «Ежемесячный доход», «Ежемесячные расходы» и т. д. Выбрав их, вы увидите столбчатые диаграммы по месяцам. Например, Ежемесячная чистая прибыль будет показывать излишек/дефицит каждого месяца в виде столбца, что упрощает сравнение производительности по месяцам. Вы можете быстро определить выбросы (например, большой отрицательный столбец в апреле означает, что в этом месяце были необычные убытки/расходы). Аналогичным образом, столбчатая диаграмма «Ежемесячные расходы» суммирует или группирует расходы по категориям за месяц, поэтому вы можете видеть, какие категории колеблются. Это отлично подходит для выявления тенденций с течением времени — например, вы можете заметить, что ваши расходы на «Путешествия» резко возрастают каждое лето, или счета за «Коммунальные услуги» выше зимой. Fava по сути предоставляет вам некоторые возможности приложения для составления бюджета (отслеживание тенденций), но с полной настраиваемостью (поскольку вы определяете категории и то, как они суммируются).
-
Фильтрация и проверка данных в реальном времени: Визуализации в Fava не являются статичными; они работают в тандеме с фильтрацией Fava. Предположим, вы хотите проверить конкретный сценарий: «Как выглядит мое ежеквартальное движение денежных средств только для моих бизнес-счетов?» Вы можете установить временной фильтр на Q1 2025 и отфильтровать счета до вашей бизнес-иерархии — Fava мгновенно обновит диаграммы, чтобы показать чистую прибыль, диаграмму-дерево расходов и т. д., но только для этого подмножества. Эта интерактивная нарезка означает, что вы можете очень быстро выполнять специальный анализ, не записывая запросы. Представление Журнал также поддерживает живую фильтрацию: вы можете искать по получателю платежа или подстроке повествования и сразу же увидеть отфильтрованный список транзакций. Если вы просматриваете данные в реальном времени (скажем, вы только что импортировали транзакции за последнюю неделю), вы можете отфильтровать их по тегу, например
#uncategorized, чтобы увидеть новые транзакции, которые, возможно, необходимо классифицировать, или по@pending(если вы отмечаете ожидающие записи), чтобы увидеть, что еще не очищено. Эта возможность проверки в реальном времени также помогает обеспечить качество данных, поскольку вы можете изолировать и устранять аномалии на лету. -
Отчет о движении денежных средств (косвенный): Хотя Beancount/Fava не создает формальный отчет о движении денежных средств (разбивка на операционную/инвестиционную/финансовую деятельность) «из коробки», вы можете имитировать его с помощью пользовательских запросов или структурирования счетов. Например, вы можете пометить определенные транзакции или использовать определенные счета для инвестиционной и финансовой деятельности, а затем запросить итоги. Интерфейс запросов Fava позволяет выполнять запрос BQL, например:
SELECT sum(amount) WHERE account ~ "Assets:Bank" AND year = 2025, чтобы получить движение денежных средств за год и т. д. Тем не менее, большинство личных пользователей считают сочетание тенденций баланса и диаграмм доходов/расходов достаточным для понимания движения денежных средств. -
Визуализация холдингов и портфелей: На странице Холдинги Fava перечисляет ваши текущие холдинги товаров (например, акции, облигации, криптовалюта) с количествами, стоимостью, рыночной стоимостью и нереализованной прибылью. Хотя это таблица, а не диаграмма, она очень полезна для проверки состояния вашего портфеля в режиме реального времени. Некоторые расширения (например, fava-investor, обсуждаемые позже) добавляют больше визуальных элементов для портфелей, таких как круговые диаграммы распределения или графики производительности. Даже без расширений вы можете увидеть, например, как меняется стоимость вашего портфеля акций по последним ценам — если вы регулярно обновляете котировки цен (что можно автоматизировать ежедневно), диаграммы Fava будут отражать самую последнюю рыночную стоимость ваших инвестиций.
На практике визуальные отчеты Fava обновляются так же быстро, как и базовые данные. В тот момент, когда добавляется новая транзакция и страница перезагружается, диаграммы пересчитываются. Никакой длительной повторной обработки не требуется. Это означает, что если у вас есть полуавтоматизированный конвейер, передающий данные в течение дня, вы можете держать Fava открытым и периодически нажимать клавишу обновления, чтобы получать обновленные диаграммы — фактически финансовый мониторинг в реальном времени.
Например, представьте, что вы ведете малый бизнес и хотите отслеживать денежные средства в наличии и ежедневные расходы. Вы можете открыть Fava на пользовательской панели мониторинга (возможно, с использованием расширения или экрана запросов), которая показывает «Остаток денежных средств на счете сегодня» и «Расходы — сегодня против вчера». Каждый раз, когда вы обновляете данные после поступления новых данных, вы видите, как эти цифры обновляются. Это похоже на то, что предоставляют дорогие панели мониторинга в реальном времени, но с использованием инструментов с открытым исходным кодом. Разница в том, что вам может потребоваться вручную обновить или запланировать обновления, в то время как эти инструменты отправляют обновления автоматически. Но функционально аналитические данные, которые вы получаете, одинаковы, с добавленным преимуществом, заключающимся в том, что вы можете детализировать любое число в Fava (щелкните его, чтобы увидеть базовые транзакции) — чего не хватает многим панелям мониторинга BI.
В заключение, Fava превращает ваши учетные данные в немедленные визуальные аналитические данные: разбивка движения денежных средств, линии тренда, сравнения с течением времени и интерактивная фильтрация — все это помогает вам увидеть историю, стоящую за цифрами. Независимо от того, проверяете ли вы расходы прошлой недели на наличие аномалий или просматриваете многолетние тенденции в чистой стоимости, диаграммы и отчеты Fava обеспечивают ясность в режиме реального времени (как только ваши данные появятся). Далее мы увидим, как вы можете расширить эти возможности или интегрировать их с внешними инструментами, если вам требуется еще более настраиваемая аналитика.