194 lines
4.6 KiB
Markdown
194 lines
4.6 KiB
Markdown
# CashFlow Forecast
|
||
|
||
Простой open-source проект для построения и анализа личной финансовой модели с использованием Spreadsheet, Python и AI.
|
||
|
||
## Идея
|
||
|
||
Большинство приложений для учета финансов отвечают на вопрос:
|
||
|
||
> "Что произошло?"
|
||
|
||
Этот проект пытается ответить на другой вопрос:
|
||
|
||
> "Что произойдет дальше?"
|
||
|
||
Основная цель — построение прогнозной модели денежных потоков (Cash Flow Forecasting), позволяющей моделировать различные сценарии будущего.
|
||
|
||
## Принципы
|
||
|
||
- Spreadsheet используется как удобный визуальный редактор.
|
||
- Python является вычислительным ядром системы.
|
||
- JSON служит внутренним представлением модели данных.
|
||
- AI используется как инструмент анализа и взаимодействия с моделью.
|
||
- Все компоненты должны быть взаимозаменяемыми.
|
||
|
||
## Архитектура
|
||
|
||
```
|
||
User
|
||
│
|
||
▼
|
||
Spreadsheet (UI)
|
||
│
|
||
Synchronization Layer
|
||
(Python)
|
||
│
|
||
▼
|
||
Financial Model
|
||
(JSON)
|
||
│
|
||
┌───────────┴───────────┐
|
||
▼ ▼
|
||
Forecast Engine AI Assistant
|
||
Scenario Analysis Data Analysis
|
||
```
|
||
|
||
Spreadsheet рассматривается как пользовательский интерфейс, а не как источник бизнес-логики.
|
||
|
||
## Основные сущности
|
||
|
||
```
|
||
Accounts
|
||
Transactions
|
||
Assets
|
||
Liabilities
|
||
Recurring Cashflows
|
||
Forecast Scenarios
|
||
Parameters
|
||
```
|
||
|
||
### Account
|
||
|
||
```
|
||
id
|
||
name
|
||
currency
|
||
balance
|
||
```
|
||
|
||
### Transaction
|
||
|
||
```
|
||
id
|
||
date
|
||
account
|
||
category
|
||
amount
|
||
description
|
||
```
|
||
|
||
### Recurring Cashflow
|
||
|
||
```
|
||
id
|
||
start_date
|
||
end_date
|
||
frequency
|
||
amount
|
||
category
|
||
```
|
||
|
||
### Asset
|
||
|
||
```
|
||
id
|
||
name
|
||
value
|
||
growth_rate
|
||
```
|
||
|
||
### Liability
|
||
|
||
```
|
||
id
|
||
name
|
||
balance
|
||
interest
|
||
payment
|
||
```
|
||
|
||
## Основной цикл
|
||
|
||
```
|
||
Spreadsheet
|
||
│
|
||
▼
|
||
Python Import
|
||
│
|
||
▼
|
||
JSON Model
|
||
│
|
||
▼
|
||
Forecast Calculation
|
||
│
|
||
▼
|
||
Scenario Simulation
|
||
│
|
||
▼
|
||
AI Analysis
|
||
│
|
||
▼
|
||
Spreadsheet Export
|
||
```
|
||
|
||
## Возможности
|
||
|
||
- прогноз денежных потоков;
|
||
- моделирование бюджета;
|
||
- сценарный анализ;
|
||
- учет активов и обязательств;
|
||
- прогноз ликвидности;
|
||
- анализ финансовой устойчивости;
|
||
- моделирование достижения финансовых целей;
|
||
- анализ "что если" (What-if Analysis).
|
||
|
||
|
||
## Будущие возможности
|
||
|
||
- Monte-Carlo Simulation;
|
||
- FIRE Planning;
|
||
- инвестиционный прогноз;
|
||
- импорт банковских выписок;
|
||
- импорт брокерских отчетов;
|
||
- REST API;
|
||
- Web UI;
|
||
- Mobile App;
|
||
- AI Financial Assistant.
|
||
|
||
|
||
## Структура репозитория
|
||
|
||
```
|
||
cashflow-forecast/
|
||
|
||
├── README.md
|
||
├── spreadsheet/
|
||
│ model.xlsx
|
||
│
|
||
├── data/
|
||
│ model.json
|
||
│
|
||
├── sync/
|
||
│ excel_sync.py
|
||
│
|
||
├── engine/
|
||
│ forecast.py
|
||
│ scenarios.py
|
||
│
|
||
├── ai/
|
||
│ prompts.py
|
||
│ assistant.py
|
||
│
|
||
├── exports/
|
||
│
|
||
└── docs/
|
||
```
|
||
|
||
## Долгосрочная идея
|
||
|
||
На ранних этапах Spreadsheet используется как быстрый инструмент проектирования финансовой модели.
|
||
|
||
По мере развития проекта вычисления и логика постепенно переносятся в Python, а Spreadsheet превращается исключительно в средство отображения и редактирования данных.
|
||
|
||
Конечной целью является независимый интерактивный open-source инструмент для персонального финансового планирования и прогнозирования денежных потоков, в котором AI выступает естественным интерфейсом для анализа и построения сценариев.
|