中产家庭“可投资金额”计算器:一个基于分层资金池的决策模型
·
不敢投资,不是胆量问题,是你没定义好
risk_budget这个函数
01 问题描述
朋友家庭:年税后收入≈80w,房贷余额60w,有100w闲钱。想投资但怕亏损,核心问题:
给定总闲钱 CC,如何确定可承受最大回撤下的合理投资额度 II?
02 数据采集:资产与负债
python
# 资产端 (单位: 万元)
assets = {
"current": 20, # 活期
"time_deposit": 80, # 定期
"house_self": 550, # 自住房
"car": 20,
"provident_fund": 25 # 公积金(流动性差)
}
# 负债端
liabilities = {
"mortgage": 60,
"credit_card": 2
}
net_worth = sum(assets.values()) - sum(liabilities.values())
print(f"净资产: {net_worth}") # 633
净资产633万,但自住房和公积金占比高,实际可支配资金仅为100万闲钱。
03 分层资金池模型(Three-Tier Liquidity Model)
借鉴存储分层思想,将100万闲钱划分为三个池子:
| 层级 | 名称 | 用途 | 流动性 | 最大回撤容忍 | 金额(万) |
|---|---|---|---|---|---|
| L1 | 保命钱 | 6个月生活费 | 高 | 0% | 12 |
| L2 | 保底钱 | 3年内大额支出 | 中 | <2% | 20 |
| L3 | 生钱的钱 | 长期投资 | 中低 | 20% | 68 |
python
class CapitalTier:
def __init__(self, name, amount, max_drawdown):
self.name = name
self.amount = amount
self.max_drawdown = max_drawdown
tiers = {
"safety": CapitalTier("保命钱", 12, 0.00),
"stable": CapitalTier("保底钱", 20, 0.02),
"growth": CapitalTier("生钱的钱", 68, 0.20)
}
investable = tiers["growth"].amount
print(f"可投资金额: {investable} 万") # 68
04 风险预算函数
主观风险承受力应转化为绝对亏损容忍额:
python
def risk_budget(total_idle, max_loss_acceptable, expected_max_drawdown):
"""
total_idle: 总闲钱 (万元)
max_loss_acceptable: 能接受的绝对亏损上限 (万元)
expected_max_drawdown: 投资策略预期最大回撤 (%)
return: 建议投资金额 (万元)
"""
raw = max_loss_acceptable / expected_max_drawdown
return min(total_idle, raw)
# 若用户能接受最多亏损15万元,预期最大回撤20%
suggested = risk_budget(100, 15, 0.20)
print(f"理论建议投资额: {suggested} 万") # 75万
# 但受限于分层结构,实际可投68万(流动性约束)
关键结论:可投资额 = min(风险预算结果, 分层后的L3金额)。
05 二次风险分配:投资组合金字塔
对68万L3资金,采用风险金字塔分配:
python
allocation = {
"core_index": 0.40, # 宽基指数基金 (沪深300/标普500)
"bond_income": 0.30, # 债券/高分红资产
"satellite": 0.30 # 行业基金/主动管理/股票
}
amounts = {k: investable * v for k, v in allocation.items()}
print(amounts)
# {'core_index': 27.2, 'bond_income': 20.4, 'satellite': 20.4}
06 月度快照与偏离监控
建立每月数据快照,实现可视化追踪:
sql
CREATE TABLE monthly_finance (
snapshot_date DATE PRIMARY KEY,
tier_safety DECIMAL,
tier_stable DECIMAL,
tier_growth DECIMAL,
actual_core_ratio DECIMAL,
actual_bond_ratio DECIMAL,
actual_sat_ratio DECIMAL
);
-- 检查配置偏离(目标:40/30/30)
SELECT snapshot_date,
actual_core_ratio - 0.40 AS core_deviation
FROM monthly_finance
WHERE ABS(actual_core_ratio - 0.40) > 0.05;
若偏离超过5%,触发再平衡信号。
07 运行结果与反馈
执行DCA(定期定额)策略,每月定投指数基金。后遇市场下跌8%,用户未恐慌,因为:
-
亏损仅发生在L3层(68×0.08=5.4468×0.08=5.44万)
-
绝对亏损远低于其心理阈值(15万)
08 工具实现:ReFi理财小程序
不想手搓代码?微信搜索「ReFi理财」小程序,其“家庭资产负债表”即为此模型的落地实现:
-
自动计算净资产、分层资金池
-
手动定义L1、L2金额 → 输出L3可投资额
-
每月更新,自动对比净值变化与配置偏离
👉 微信搜索「ReFi理财」→ 家庭资产负债表 → 获取你的投资额度
09 总结
| 概念 | 技术类比 | 作用 |
|---|---|---|
| 记账 | transaction log |
记录收支流水 |
| 资产负债表 | snapshot |
记录时点净资产 |
| 分层资金池 | storage tiering |
区分流动性等级 |
| 可投资金额 | risk_budget() |
计算风险预算下的投资额 |
用工程师的思维打理家庭财务:建模 → 分层 → 预算 → 监控。
本文为真实经历改编,不构成投资建议。欢迎评论区讨论你的资金分层模型。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)