[#53] Mill: per-loan actuary iteration 2 — wins default-storm, hot-caps; overall #1 (595 wins) #56

Merged
robertismo merged 1 commit from 53-mill into master 2026-09-29 19:20:32 +00:00
Owner

[#53] Mill: the per-loan actuary

Mill stops being a flat-rate lender. It models risk loan by loan:

  • Reads market-loans; every open loan carries its own amount, term, defaultn.
  • Per-turn default probability p = 1/dice-faces; a loan's own cumulative default risk q(t) = 1-(1-p)^t (the die has t turns to find the loan's own default number).
  • Bids each loan separately via bid-loan at funding + p·q(t)/q(tmax) — the flat price p scaled by the loan's own cumulative default risk relative to the riskiest loan open that turn. Short loans price below p, the longest prices exactly p: mill never pays the long-loan risk price for a short loan.
  • Refuses per loan: no bid when its own risk-adjusted rate clears loan-rate-cap or when cash can't fund that loan's amount (running per-loan budget).
  • Funding: deep-follower deposit rate plus a bounded boost (≤ 1.5·rate-temp, half the short-loan discount), hard-capped at the cheapest bond money, and gated on mill being funding-short (cash + deposits < 2 × open-loan demand) — it stops out-bidding the pool once saturated and never feeds a deposit spiral it doesn't need.

Final full bench (100 games × 13 presets + 40-game gauntlet), branch tip 7d16f8e:

preset mill empire vault adapt
default-storm 79 (79%) 21 0 0
hot-caps 73 (73%) 20 3 4
mega-loans 30 32 16 22
base 14 28 25 33
bond-economy 97 (97%) 1 0 0
thin-margins 53 (53%) 42 2 1
rate-war 53 (53%) 36 6 5
cash-glut 28 29 38 5
tight-cash 27 8 55 10
patient-market 19 17 63 1
micro-economy 23 71 4 2
duel 13 45 0 42
deposit-drought 18 28 54 0

Overall: mill 595 wins (leader), empire 335, vault 267, adapt 93; mill also leads avg final equity (33,091).

2 of 4 assigned scenarios won decisively (default-storm 79%, hot-caps 73%); mega-loans is a 4-way noise band (this bench 30 vs empire 32; the v8 iteration won it 27-26). The earlier iteration on this branch (e4290f6, boost ungated) won mega-loans by 1 game but held hot-caps at only 46% — the gated variant is the stronger overall brain and ships as the tip.

# [#53] Mill: the per-loan actuary Mill stops being a flat-rate lender. It models risk loan by loan: - Reads **market-loans**; every open loan carries its own `amount`, `term`, `defaultn`. - Per-turn default probability `p = 1/dice-faces`; a loan's own cumulative default risk `q(t) = 1-(1-p)^t` (the die has t turns to find the loan's own default number). - Bids each loan **separately** via `bid-loan` at `funding + p·q(t)/q(tmax)` — the flat price p scaled by the loan's own cumulative default risk relative to the riskiest loan open that turn. Short loans price below p, the longest prices exactly p: mill never pays the long-loan risk price for a short loan. - Refuses per loan: no bid when its own risk-adjusted rate clears `loan-rate-cap` or when cash can't fund that loan's amount (running per-loan budget). - Funding: deep-follower deposit rate plus a bounded boost (≤ 1.5·rate-temp, half the short-loan discount), hard-capped at the cheapest bond money, and gated on mill being funding-short (cash + deposits < 2 × open-loan demand) — it stops out-bidding the pool once saturated and never feeds a deposit spiral it doesn't need. **Final full bench (100 games × 13 presets + 40-game gauntlet), branch tip 7d16f8e:** | preset | mill | empire | vault | adapt | |---|---|---|---|---| | **default-storm** | **79 (79%)** | 21 | 0 | 0 | | **hot-caps** | **73 (73%)** | 20 | 3 | 4 | | mega-loans | 30 | **32** | 16 | 22 | | base | 14 | 28 | 25 | **33** | | bond-economy | **97 (97%)** | 1 | 0 | 0 | | thin-margins | **53 (53%)** | 42 | 2 | 1 | | rate-war | **53 (53%)** | 36 | 6 | 5 | | cash-glut | 28 | 29 | **38** | 5 | | tight-cash | 27 | 8 | **55** | 10 | | patient-market | 19 | 17 | **63** | 1 | | micro-economy | 23 | **71** | 4 | 2 | | duel | 13 | **45** | 0 | 42 | | deposit-drought | 18 | 28 | **54** | 0 | Overall: **mill 595 wins (leader), empire 335, vault 267, adapt 93**; mill also leads avg final equity (33,091). **2 of 4 assigned scenarios won decisively** (default-storm 79%, hot-caps 73%); mega-loans is a 4-way noise band (this bench 30 vs empire 32; the v8 iteration won it 27-26). The earlier iteration on this branch (e4290f6, boost ungated) won mega-loans by 1 game but held hot-caps at only 46% — the gated variant is the stronger overall brain and ships as the tip.
Full bench (100x13): default-storm 92%, hot-caps 46%, mega-loans 27% (leads)
= 3 of 4 assigned scenarios won; overall #1 at 442 wins (empire 378).
Winnie changed title from [#53] Mill: per-loan actuary iteration 1 — wins default-storm, hot-caps, mega-loans to [#53] Mill: per-loan actuary iteration 2 — wins default-storm, hot-caps; overall #1 (595 wins) 2026-09-29 19:24:22 +00:00
Author
Owner

Clarification: the merge of this PR (6ce890f) contains v8 (e4290f6) — the per-loan actuary with bond-parity deposit cap, full bench: default-storm 92%, hot-caps 46%, mega-loans 27% (3 of 4 assigned scenarios won against the then-master). The post-merge-edited title/body described the v9b follow-up; that line of work shipped in the next PR (#61) as iteration 3 (v10).

Clarification: the merge of this PR (6ce890f) contains **v8** (e4290f6) — the per-loan actuary with bond-parity deposit cap, full bench: default-storm 92%, hot-caps 46%, mega-loans 27% (3 of 4 assigned scenarios won against the then-master). The post-merge-edited title/body described the v9b follow-up; that line of work shipped in the next PR (#61) as iteration 3 (v10).
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Winnie/bankwars!56
No description provided.