# C3-50-v1：12期合成组合再平衡账本规格

2026-10-29建立。全部为原创合成机制输入，无真实ETF、券商、家庭或市场业绩；不替换C8三户家庭、G47 C3-47或G49 C3-49。仅本目录为本版资料包。

## 固定输入与边界

- 美元，12个等长教学月M1—M12，不绑定真实日历日期或真实交易日。可把t=0、6、12理解为等长月序号；不得擅自标真实XIRR日期。
- t0初始存量股票6000、债券3000、现金1000，合计10000。已给初始持有快照，不另扣初始建仓费。资产袖套为连续可分割、只多、无杠杆的理想组合份额，省略真实份额最小单位和价格表。
- inputs.csv三列为各袖套当月总回报，已含分配再投资，不另记分红。现金收益0是简化，不称真实现金利率。
- 唯一外部现金流：M7开始向现金入金1000，位置在M6/W6结束之后、M7收益之前；边界估值分别保留ledger中M6结束权益及M7 opening_equity_before_flow/start_equity_after_flow。不是投资收益，无提款，不收费。
- 每月路径：前期执行后余额→记录当月外部入金前权益→现金加本期外部流→各资产实现本期回报→月末估值决定→下一独立可执行窗口Wm成交并扣费→余额承接下月。
- Wm是完整月末估值之后的独立执行时点，教学明确给定各资产在该窗口与决策估值之间没有额外价格变化、充分流动并完整成交。不是声称可在已知完整收盘数据后用同一收盘价真实成交。W12也执行，终值为W12后净权益，不强制清仓。
- W6后与M7入金之间无额外价格或收益；外部流仅在下一期开始加入。入金本身不自动触发即时调仓，只按预定月末检查。

## 两个预定规则

目标股票60%、债券30%、现金10%，仅教学比例。quarterly在M3/6/9/12估值后执行，无论偏离大小（零差额不成交）；threshold_5pp每个M月末检查任一资产绝对权重偏离目标>=0.05即执行，三类均检查，恰等于也触发。偏差是5个百分点，不是相对目标5%。

一次触发：先锁定本次交易前权益E；股票目标金额0.6E、债券0.3E；有符号成交额delta=目标−交易前市值，正买负卖。两项均按同一E计算，不先扣一项费用后重算另一目标。总成交额G=abs(delta_stock)+abs(delta_bond)，每笔按其绝对金额收5bp，即总费0.0005G。无最低佣金、价差、滑点、税、持续管理费等额外项；真实产品须另核，费用已在输入收益中的部分不能重复扣。

现金交易后=原现金−delta_stock−delta_bond−总费；股票、债券恰到本次费前E目标，现金吸收费用，费后E_post=E−费，因此最终权重略偏离60/30/10，不循环追求精确费后目标。执行次序在理想同时成交金额模型中为先完成卖出再买入，两边费用均入现金；先预审最终现金非负，本包所有期均满足。真实结算、融资或买卖先后不能由这个理想模型证明可行。

连续份额只以市值递推，无离散份额取整。Python Decimal28位有效数字，不逐笔舍入至美分；导出全部内部数值，显示约数不回写。现金/权益审计误差容忍1e-18美元；真实股票份额精度必须另建版本。

## 字段与复现

- inputs.csv：12期固定总回报和期初外部流，收益以小数表示。
- generate.py：仅用Python标准库Decimal生成本目录ledger.csv、trades.csv、summary.csv和checks.json，不联网、不交易。
- ledger.csv：每规则每期一行，共24行。opening_equity_before_flow是前期净终值；start_equity_after_flow加外部流，三项start为收益开始资产额；pre为收益后/交易前市值；weight_pre是阈值依据；trade_amount为签名金额；post是执行费后；period_pnl_net=期末净权益−入金前期初权益−本期外部流。
- trades.csv：只存非零股票/债券订单，按Wm时点，signed_amount正买负卖；absolute_amount为佣金基数，fee为本单费用。
- summary.csv：交易窗口数、资产成交笔数、总成交金额、费用、初始/外部流/终值/投资损益、末资产额及最大末偏差。gross_traded不是收益，也不是除以任意分母后的换手率。
- verify.py：另用有理数Fraction从原inputs独立复算两规则，与Decimal账本/交易/摘要核对，不复用generate.py逻辑或生成输出。结果写verification.json。

复现命令在仓库根运行：

```text
python docs/education/investment-research-book/articles/cases/c3-50/generate.py
python docs/education/investment-research-book/articles/cases/c3-50/verify.py
```

G93应引用同一流边界、终值与费用。t6资金流在W6之后：TWR分两段且费用归实际期间；MWR如用等长月IRR应注明月序号约定，不冒充实际日历XIRR。G51若把一个规则作教学对照，须沿用相同1000外部流、资产收益、初始持仓和费用政策；不自行拼接另一个账户账本或单期归因冒充多年加总。

## 验收与未完成

必须核对每月现金非负，期初+外部流+净投资损益=净期末，交易前权益−费=费后权益，初始+累计外部流+累计净损益=终值；阈值/季度决策及逐笔费用匹配。没有真实ETF数据、份额/结算实现、许可验证或完整C3所有压力场景通过。整股、现金底线和其他变式若出现仅另标练习，不覆盖本账本。

生成JSON后可在仓库格式规范下运行：

```text
pnpm exec biome format --write docs/education/investment-research-book/articles/cases/c3-50/checks.json docs/education/investment-research-book/articles/cases/c3-50/verification.json
```
