docs: add module design doc based on Ghostfolio & Maybe analysis
- maps gaps in current app vs reference projects - redefines 4 tabs: 总览/账本/投资/测算 - redesigns checkin: 3 daily habits + 1 monthly task - adds 3-scenario FIRE projection design - documents data flow between modules Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,194 @@
|
||||
# 07 · 模块功能设计(参考 Ghostfolio & Maybe 梳理)
|
||||
|
||||
> 基于对 [Ghostfolio](https://github.com/ghostfolio/ghostfolio) 和 [Maybe](https://github.com/maybe-finance/maybe) 两款开源 FIRE/理财 App 的分析,对原 PRD 四大模块进行功能细化与重新组织。
|
||||
> 本文是 `01-需求文档-PRD.md` 的功能细化版,以此为准开发。
|
||||
|
||||
---
|
||||
|
||||
## 一、参考项目核心设计逻辑
|
||||
|
||||
### Ghostfolio
|
||||
- **净资产曲线是中心**,所有功能围绕它展开
|
||||
- 每笔买卖/股息/转账都是"活动记录",由此自动算出收益率、配置比例
|
||||
- FIRE 独立模块:配置安全提取率 → 自动算退休日期
|
||||
- X-Ray 功能:透视持仓底层,发现重叠和失衡
|
||||
|
||||
### Maybe
|
||||
- **净值追踪 + 负债管理**(净资产 = 资产 − 负债,两侧都要记)
|
||||
- 收支交易记录 → 才能算出真实储蓄率
|
||||
- 退休预测 + 投资收益情景模拟
|
||||
|
||||
### 两者共同揭示的现有 App 缺口
|
||||
|
||||
| 缺口 | 影响 |
|
||||
|---|---|
|
||||
| 无负债字段 | 净资产 = 资产 − 0,实际高估 |
|
||||
| "记账"只是勾选,无金额 | 储蓄率无法自动计算,只能手填 |
|
||||
| 持仓无资产类别分类 | 无法看配置比例 |
|
||||
| 进度页无曲线图 | 只有列表,趋势不直观 |
|
||||
| 测算只有单一情景 | 无法感知收益率/定投额的敏感度 |
|
||||
|
||||
---
|
||||
|
||||
## 二、Tab 结构调整
|
||||
|
||||
原 4 Tab:**打卡 / 进度 / 测算 / 持仓**
|
||||
|
||||
调整为:**总览 / 账本 / 投资 / 测算**
|
||||
|
||||
> 打卡从独立 Tab 缩小为「总览」页内的嵌入卡片,降低视觉权重;
|
||||
> 新增「账本」Tab,承接真实收支记录功能。
|
||||
|
||||
---
|
||||
|
||||
## 三、各模块详细功能
|
||||
|
||||
### Tab 1:总览(Dashboard)
|
||||
> 参考:Ghostfolio Overview + 原打卡页
|
||||
|
||||
**净资产概览区**
|
||||
- 当前净资产数字(资产 − 负债)
|
||||
- 与上月对比的变化额和变化率(↑ ¥2,300 / +3.2%)
|
||||
- FIRE 进度条 + 百分比 + 预计达成年月
|
||||
|
||||
**净值曲线**
|
||||
- 折线图,按月展示历史净资产(qiun-data-charts)
|
||||
- 后续可叠加「目标线」辅助判断偏离
|
||||
|
||||
**关键指标卡片**
|
||||
- 本月储蓄率(来自账本模块)
|
||||
- 距 FIRE 剩余月数(来自测算模块)
|
||||
- 本月定投执行状态
|
||||
|
||||
**今日打卡(嵌入卡片)**
|
||||
- 见下方「打卡重新设计」章节
|
||||
|
||||
---
|
||||
|
||||
### Tab 2:账本(Ledger)
|
||||
> 参考:Maybe 的 Transaction History + Budgeting
|
||||
> 让「记账」从勾选行为变成真实数据
|
||||
|
||||
**快速记账**
|
||||
- 金额 + 日期 + 类别 + 备注
|
||||
- 类别:收入 / 必要支出 / 可选支出 / 冲动消费
|
||||
|
||||
**月度汇总**
|
||||
- 总收入、总支出、净储蓄额
|
||||
- 储蓄率 = (收入 − 支出)/ 收入 × 100%(自动计算,不再手填)
|
||||
|
||||
**净资产快照录入**(从进度页移入)
|
||||
- 录入当前总资产(元)
|
||||
- 录入当前负债(元,可选)
|
||||
- 净资产 = 资产 − 负债,自动写入进度曲线
|
||||
|
||||
**历史收支列表**
|
||||
- 按月筛选,支持删除
|
||||
|
||||
---
|
||||
|
||||
### Tab 3:投资(Portfolio)
|
||||
> 参考:Ghostfolio Portfolio + X-Ray
|
||||
|
||||
**持仓列表**
|
||||
- 手动录入:名称、当前市值、买入成本
|
||||
- 显示:浮盈金额、浮盈百分比
|
||||
- 支持编辑 / 删除
|
||||
|
||||
**资产配置**
|
||||
- 录入时选择资产类别:A 股 / 美股ETF / 基金 / 债券 / 现金等价物 / 其他
|
||||
- 配置饼图(各类别占比)
|
||||
- 总市值、总成本、总浮盈
|
||||
|
||||
**与净资产的关联**
|
||||
- 投资资产占净资产比例(投资化程度)
|
||||
- 现金/投资比例参考
|
||||
|
||||
> ⚠️ 本期不接实时行情,全部手动更新市值(见风险文档)。
|
||||
|
||||
---
|
||||
|
||||
### Tab 4:测算(FIRE Calculator)
|
||||
> 参考:Ghostfolio FIRE Section + cFIREsim 情景模拟
|
||||
|
||||
**Barista FIRE 逻辑展示**
|
||||
- 年支出 − 兼职年收入 = 投资需覆盖金额
|
||||
- ÷ 安全提取率 = 目标本金
|
||||
- 公式透明展示,参数可调
|
||||
|
||||
**达成时间线**
|
||||
- 预计达成日期(年 + 月)
|
||||
- 剩余年数和月数
|
||||
- 基于复利公式:FV = PV·(1+r)ⁿ + PMT·[(1+r)ⁿ−1]/r
|
||||
|
||||
**三档情景对比**
|
||||
|
||||
| 情景 | 年化收益率 | 预计达成 |
|
||||
|---|---|---|
|
||||
| 保守 | 4% | 自动计算 |
|
||||
| 基准 | 6% | 自动计算 |
|
||||
| 乐观 | 8% | 自动计算 |
|
||||
|
||||
**可调参数**(持久化到 settings store)
|
||||
- 每月定投额
|
||||
- 年化收益率(基准档)
|
||||
- 年支出
|
||||
- 兼职年收入
|
||||
- 安全提取率
|
||||
- 目标本金(可手动覆盖)
|
||||
|
||||
---
|
||||
|
||||
## 四、打卡重新设计
|
||||
|
||||
### 问题
|
||||
原 4 项中「定投到账」不适合每日打卡(定投按月执行),导致每天随便勾。
|
||||
|
||||
### 新方案:分频率打卡
|
||||
|
||||
**每日习惯(3 项,天天可勾)**
|
||||
|
||||
| 项目 | 说明 |
|
||||
|---|---|
|
||||
| 今日收支已记录 | 触发去账本模块记一笔 |
|
||||
| 无计划外支出 > 200 元 | 冲动消费自查 |
|
||||
| 看了今日净值/进度 | 保持目标感 |
|
||||
|
||||
**月度任务(1 项,每月 1 日出现,勾一次完成)**
|
||||
|
||||
| 项目 | 说明 |
|
||||
|---|---|
|
||||
| 本月定投已执行 | 记录当月定投是否到账 |
|
||||
|
||||
### 完成规则
|
||||
- **今日打卡**:3 项全勾 = allDone,参与连续天数和月完成率统计
|
||||
- **月度任务**:独立显示,不影响每日 allDone
|
||||
|
||||
---
|
||||
|
||||
## 五、数据流关系
|
||||
|
||||
```
|
||||
账本(收支记录)
|
||||
└─→ 月储蓄率 ──→ 总览关键指标
|
||||
└─→ 净资产快照 ──→ 净值曲线 ──→ 总览图表
|
||||
|
||||
投资(持仓)
|
||||
└─→ 总市值 ──→ 净资产参考(手动对齐)
|
||||
|
||||
设置(settings store)
|
||||
└─→ 测算参数 ──→ FIRE 测算 ──→ 预计达成日期 ──→ 总览展示
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 六、开发优先级(接续阶段 2 之后)
|
||||
|
||||
| 优先级 | 内容 | 所在阶段 |
|
||||
|---|---|---|
|
||||
| P0 | 打卡 3 项重构 + 月度任务 | 立即 |
|
||||
| P0 | 测算页三档情景对比 | 阶段 2 补充 |
|
||||
| P1 | 投资页资产类别 + 配置饼图 | 阶段 2 补充 |
|
||||
| P1 | 账本模块(快速记账 + 月汇总) | 阶段 3 |
|
||||
| P2 | 总览 Dashboard + 净值曲线图 | 阶段 3 |
|
||||
| P3 | 负债字段 | 阶段 3 |
|
||||
Reference in New Issue
Block a user