# Household budgets and investment fees: reproducible examples

Publication: 28 October 2026. Currency: nominal EUR.

**Every household, income series, fee tariff and investment return in these files is hypothetical.** Dates in the annual-bill schedule and income series locate fictional transactions; they are not observations. Investment returns are before tax and inflation. No file predicts a crash or future investment result.

Reproduce the numerical files from the repository with:

```sh
python3 scripts/generate-seo-money.py
```

Python standard library only. The script writes only this directory, performs 1,192 arithmetic/invariant checks, and prints the observed check count. `calculations.json` records model summaries, additional worked comparisons and check names. `source-ledger.json` is the separately recorded source-verification receipt and is not overwritten by the generator.

| Files | Model and conventions |
| --- | --- |
| `jahreskosten.csv` | Four fictional annual bills, November 2026–October 2027. Starting balances zero. Contributions arrive before bill debits, including in the due month. Initial catch-up rates switch to annual amount/12 after the first payment. Each fund has its own opening/contribution/bill/closing ledger. |
| `schwankendes-einkommen.csv` | Fictional available net income, November 2025–October 2026. Monthly budget transfer €2,400, initial income reserve €600. All excess income stays in that reserve. This is separate from the €150 expense buffer inside the monthly budget. |
| `einkommen-stresstest.csv` | Separate four-month hypothetical stress test, initial reserve €900, budget €2,400. Not a continuation of the twelve-month income ledger. |
| `wochenbudget.csv` | €900 per month; actual February, November and October 2026 calendar lengths. Seven-day blocks start at the first of each month. First four blocks rounded to cents; final block receives exact residual. |
| `paar-kostenaufteilung.csv` | €2,100 joint monthly costs; income splits €3,200/€1,800, €3,200/€1,200 and a separately assumed half-month-transition basis €3,200/€1,500. One contribution rounded; the other is the exact residual. A half-month average is an explicit convention, not a payroll rule. |
| `budget-ueberzogen.csv` | €800 flex allocation, €690 spent, €110 remaining; separate expense buffer €200. Forecast remaining spending €160 prompts a €50 transfer, producing €850 flex and €150 buffer without new spending. |
| `releve-annuel-frais.csv` | One fictional year, €50,000 starting capital, no flows, €3,000 gross gain, €800 distinct costs, €52,200 closing capital. €300 of commissions are already inside product fees. The supplementary €12,000-flow example retains the same monetary gain solely to demonstrate the accounting identity; it does not establish an investment return. |
| `couches-frais.csv` | Fixed-base illustration on €60,000: 40% at 1.50% fund fees, 60% at 0.25%, wrapper 0.60%; €144 commission already included; optional €120 separately invoiced advice. Sequential, zero-return calculation is separately recorded in JSON and is not a claim about all insurance contracts. |
| `versements-mensuels-trajectoires.csv`, `versements-mensuels-synthese.csv` | Initial €10,000, €300 deposited at each month-end, 120/240/360 months. Artificial 5% gross effective annual growth; annual effective fee rates 0%, 0.5%, 2%. Monthly gross factor `1.05**(1/12)` and fee-retention factor `(1-f)**(1/12)`. Fee applies after growth, before each new contribution. Full internal precision; paths exported to eight decimals and summary to cents. |
| `frais-entree-point-mort.csv`, `frais-entree-sensibilite.csv` | Initial €20,000, no flows, artificial 4% annual gross growth. A: 3% entry and 0.5% annual; B: no entry and 1% annual. Annual fees apply to post-growth value. Threshold formula `ln(1/(1-entry))/ln((1-low_fee)/(1-high_fee))`. At exact equality, the first **strictly ahead** full year is the next year. Sensitivity changes entry and annual fees only. |
| `remuneration-conseil.csv` | Static €80,000 annual fee base, zero return, no other costs. Product fees €960, embedded commission €320. Non-independent: €300 external fee, commission retained. Independent: €1,200 external fee, all €320 monetary commission returned. Assumes the second service otherwise satisfies independence requirements; this arithmetic alone cannot establish legal status. |

Decimal arithmetic is used for household accounting. Investment paths use floating-point exponentiation, with an independent closed-form annuity comparison at all 1,080 monthly scenario points (absolute tolerance €0.000001). Model net growth multiplies growth and fee retention: 5% gross and 2% fee imply 2.9%, not the alternative subtractive convention of 3%.

Source dates, resolved URLs, response content types, SHA-256 hashes, legal scope and access failures are in `source-ledger.json`. Regulatory material was checked against AMF primary sources; direct ESMA access was blocked. The source receipt explicitly distinguishes the retained legacy 2023 parent rates from the newly computed hypothetical examples.

Research, article-to-parent mapping, search-intent hypotheses and limitations: `docs/research/seo-2026-10-28-money.md`.
