Where you are. Four lessons in, the border has a shape. Two ledger worlds that share no account (lesson 1); an instruction that travels separately from the value it describes (lesson 2); a relay of correspondents, each hop adding a fee, a delay and a screening risk (lesson 3); and at the centre of it all the bridge itself: Alder’s account at Ginkgo in Tokyo, a nostro on Alder’s books, a vostro on Ginkgo’s, one balance that must mirror exactly (lesson 4). What lesson 4 never asked is where the yen in that account came from, or what keeping them there costs. This lesson asks both questions on real ledgers, and finds the quiet expense underneath every corridor on the map: money parked abroad, in advance, doing nothing.
The money that never came home
Somewhere on Ginkgo’s books in Tokyo sits a deposit with a foreign bank’s name on it, and it has been there for years. Every Tokyo morning it starts full; through the day Alder’s payments drain it, salary by invoice by settlement; overnight a funding wire fills it back up. The balance cycles like a tide, but the capital never leaves. It crossed the border once, long ago, and it is never coming home, because tomorrow’s payments will need it in Tokyo just as surely as today’s did. Alder keeps one such pool for its yen day, another for euros in Frankfurt, another for pounds in London, one in every currency its customers send. Every bank serving a corridor - one currency pair, one route, New York dollars to Tokyo yen - keeps the same standing pools, in both directions. Zoom out far enough and the world’s borders are pre-paved with parked cash. This lesson measures one pool for one day and puts a price on the parking.
The idea in one paragraph
Pre-funding is the rule the border imposes: the nostro must hold the money before the payments arrive. At home, module 2 let an outgoing payment lean on incoming reserves, a queue, or the central bank’s intraday credit; abroad, Alder is a foreigner with no reserve account in the yen world and no claim on its credit, so Tokyo will not wait while Alder tops up. The day must be bought before it begins. But a balance big enough to be there before the payments is, by construction, a balance that spends most of its life waiting - and the average of that waiting, the balance the account holds on an average hour, is the float: capital parked abroad doing nothing, priced like any idle money at what it could otherwise earn on module 1’s parking map. The exercise replays one corridor day hour by hour, measures the float, and charges it a stylised 4% a year; the answer is small only because the corridor is. Multiply by every corridor a bank serves, then by every bank, and the head starts add up to this lesson’s summary line: trillions parked idle, stated here as stylised arithmetic and priced by exactly the mechanism you are about to run.
Tokyo will not wait
Start with why the money must come first. Module 2’s whole liquidity story assumed membership. Alder held a reserve account at its own central bank, incoming payments funded outgoing ones minute by minute, a queue could wait for reserves in flight, and the central bank priced intraday credit for the gaps. None of that machinery exists for Alder in the yen world. Alder is not a member of Tokyo’s RTGS, holds no yen reserve account, and has no right to yen-world credit; Ginkgo is a commercial correspondent, not Alder’s central bank. When a yen payment falls due, the only money that can pay it is money already sitting in the nostro.
Lesson 4’s mirror plays a supporting role here, and it is worth being precise about which one. Ginkgo’s side of the account only rises when value actually lands in Tokyo, so the mirror is what keeps Alder’s nostro honest about what is really there. But honesty is not sufficiency: a perfectly mirrored balance of zero fails every payment of the day. The mirror checks that the two views agree; pre-funding is what makes the thing they agree about enough.
A day on the meter
Then the day runs. replay_day walks the tape payment by payment. The yen leg is a real payment in the yen world - submit, then settle, Ginkgo moving money between two of its own deposits, exactly the in-bank payment module 1 taught. Alder’s copy is a direct posting, nostro down and customer deposit down, because the border leg is precisely the thing no domestic rail can express: nothing in either world’s API moves value between worlds. After every payment, lesson 4’s assert confirms the mirror still holds. And at the end of every hour, the replay snapshots the nostro: twenty-four numbers that only ever fall, because pre-funding drains and nothing tops it up mid-day.
The seeded tape owes Tokyo 102,200 yen across 20 payments, and the pre-fund is sized to the day exactly, so the balance starts at 102,200 and ends at zero. In between: 60,800 still idle at 06:00, 40,300 at noon, 9,500 at 18:00. The float is the average of the twenty-four snapshots, the balance the corridor holds on an average hour, and on this tape it is 36,979 yen. One identity in the exercise deserves saying in words: the sum of the hourly balances equals each payment’s amount times the number of full hours it waited. Every yen idles from the opening wire until the hour its payment leaves, so the late payments are what build the float. Same total, different clock, different bill: shift the whole tape into the first hour and the float collapses to almost nothing; shift it into the last and the float climbs to twenty-three twenty-fourths of the pre-fund. The float measures when the day spends, not how much.
Pricing the parking
What does an average-hour balance of 36,979 yen cost? Module 1 answered this for any idle pile: money is never simply idle, it is parked somewhere, and every parking spot pays something. The yen in the nostro are a deposit at a commercial bank - on lesson 11’s map, one of the weakest spots on the board, an unsecured claim on Ginkgo earning at best whatever a correspondent deigns to pay and often exactly nothing - while the same capital could be sleeping in the best corner of that map at the benchmark rate. The exercise charges the gap at a stylised 4% a year, the same stylised rate module 1 used to price overnight money. The float times the rate is the bill: 36,979 yen times 4% is 1,479 yen a year. Read the equation plainly: whatever the float is, the corridor pays that fraction of it, every year, for as long as the corridor operates - a standing rent on a balance that exists so that payments never have to wait.
A rent of 1,479 yen is a toy number for a toy corridor, and the scale is the point. A real nostro holds millions or billions of yen equivalent; a global bank runs one pool per currency it serves, in both directions; every bank in lesson 3’s relay does the same. The exercise’s closing line performs that multiplication as stylised arithmetic - every corridor on Earth, pre-funded - and lands where the summary of this lesson does: trillions of dollar equivalents parked idle, the standing cost of a system in which value must always arrive before it is needed.
Sizing the head start
The exercise cheats in one place, deliberately: pre_fund is the sum of the tape, perfect foresight, and the final assert celebrates it - by midnight, every yen paid away, balance exactly zero. No desk gets that. A real corridor is sized under uncertainty, and both errors cost. Too small, and a payment arrives at a nostro that cannot cover it; Tokyo will not wait, so the payment bounces or waits for the next funding wire, and lesson 3’s relay turns one late hop into missed cutoffs all the way down the chain. Too large, and the idleness you just priced compounds silently. The figure sweeps the choice on a stylised corridor, in dollar equivalents:
Maintain 2,000 and the corridor bounces 14 payments; 4,000 misses nine; the curve bends through five and two; 12,000 is the first level that never misses at all. The gold point is a treasurer’s answer rather than an engineer’s, and its label prices both sides of the choice - one miss, six idle thousands: a single bounced payment accepted, thousands sitting idle on the average hour even so. The last increment of float would idle all year to prevent one rare bounce, and a bounce has a price you can compare it against - a delay, an apology, perhaps a fee. When the certain rent exceeds the occasional embarrassment, the desk buys the miss. Provision for peak, not for perfection: module 2’s frontier logic, back with a passport.
Review
Tokyo will not wait
Pre-funding is the rule the border imposes: the account abroad must hold the money before the payments arrive. At home an outgoing payment can lean on incoming reserves, on a queue, or on the central bank’s intraday credit. Abroad none of that machinery exists, because the paying bank is a foreigner with no reserve account in that currency’s world and no claim on its credit; the correspondent is a commercial partner, not a central bank. So the day must be bought before it begins. Reconciliation checks that the two views of the account agree, but honesty is not sufficiency: a perfectly mirrored balance of zero fails every payment of the day.
The float is capital doing nothing
A balance big enough to be there before the payments is, by construction, a balance that spends most of its life waiting. The average of that waiting, the balance the account holds in an average hour, is the float: capital parked abroad doing nothing, priced like any idle money at what it could otherwise earn. Replay one corridor day hour by hour, measure the float, and charge it a few percent a year, and the answer is small only because the corridor is. Multiply by every corridor a bank serves, then by every bank, and the totals reach the trillions. That is the real cost of the relay, and it never appears as a fee.
Check yourself
1. Module 2 never made a bank pay for its whole day in advance. What did a domestic bank lean on that Alder cannot reach in Tokyo?
Membership. At home, incoming reserves fund outgoing payments minute by minute, a queue can wait for reserves in flight, and the central bank prices intraday credit for the gaps - all of it machinery that exists because the bank holds a reserve account inside the system. Alder holds no yen reserve account and no yen-world credit, and Ginkgo is a commercial correspondent, not Alder’s central bank. With nothing to lean on mid-day, the only yen that can pay a yen payment are yen already in the nostro, so the day is bought before it begins.
2. The tape owes Tokyo 102,200 yen, but the annual cost is charged on 36,979. Why is the smaller number the right base?
Because the cost accrues on the stock parked, not the flow paid. A yen that leaves at half past midnight pays almost no rent; a yen that leaves at 23:00 pays a full day’s. The float is the time-average of the balance, and the exercise’s identity makes the accrual exact: the sum of the hourly balances equals each amount times the full hours it idled. Charging on the flow would price the payments; the corridor’s cost is the waiting.
3. Keep the tape’s total but reshuffle its clock: all 20 payments in the first hour, then all 20 in the last. What happens to the pre-fund, and to the float?
The pre-fund is unchanged - it is sized to the total, which did not move. The float transforms: front-loaded, every yen leaves before the early snapshots and the average falls to almost nothing; back-loaded, every yen idles through twenty-three snapshots and the float climbs to twenty-three twenty-fourths of 102,200, nearly the whole head start. Same payments, same total, wildly different rent. Corridors that spend late in their day are expensive to serve, and a desk that can schedule payments earlier is genuinely saving money.
4. In the figure, 12,000 never misses a payment, yet the marked operating point maintains 10,000 and accepts one miss. Defend the treasurer.
Marginal float buys shrinking certainty: the first thousands cut misses from 14 to five, and the last increment exists only to prevent a single rare bounce while idling all year regardless. Price both sides. The extra float times the cost of funding it is a certain, permanent rent; the miss times its consequence - a delay, an apology, a payment riding the next funding wire - is occasional. When the certain rent exceeds the expected cost of the miss, accepting the miss is the cheaper engineering. The exercise’s balances[-1] == 0 assert marks perfect foresight; production corridors provision for peak, not perfection.
5. A regional bank serves forty currencies through its own nostros. Walk the arithmetic that pushes it to close thirty-nine of them, and name what the system gains and loses.
Forty nostros are forty pre-funded peaks, each paying rent independently, because a surplus of yen cannot cover a shortfall of euros - floats do not net across currencies. Routing everything through one giant correspondent collapses forty rents into one, plus fees; and on the correspondent’s side, a vostro pool serving hundreds of banks averages their peaks, so idle capital per payment falls as the pool grows. The system gains cheapness: less capital parked for the same payments. It loses dispersion: every corridor now runs through a handful of giant banks, and one name’s bad day reaches everyone routed through it. Cheapness and concentration arrive as a bundle, and this module keeps re-meeting that bundle - lesson 15 prices it.
Do this
Fifteen minutes, from module-03-across-borders. Open code/nostro_float.py. Most of it is written, because the ledgers already know this story: fixture() seeds a 25-payment corridor tape and the day replays its first 20; build_worlds pre-paves the corridor with this lesson’s two postings, the nostro bought against the dealer liability in New York and the funding wire landing in Tokyo; replay_day walks the tape on real ledgers - a genuine yen payment in Tokyo, a direct posting in New York, lesson 4’s mirror asserted after every payment - and snapshots the nostro at each hour’s end.
Your work is hourly_float, the same day in plain arithmetic. Start from pre_fund; for each of the 24 hours, subtract every payment whose minute falls strictly before the hour’s end - minute < (h + 1) * 60, and the tape is already sorted - and record the balance at each hour’s end; return the 24 balances and their average. The harness then holds your arithmetic against the ledger replay hour for hour, and reads the lesson back to you as asserts: the balances only fall, they end at exactly zero, their sum equals amount times hours idled, and the float lands strictly between zero and the pre-fund.
python3 code/nostro_float.py
As shipped, the starter stops at NotImplementedError. Done right, it prints this scoreboard, ending with the final line verbatim:
corridor day: 20 payments, 102,200 yen pre-funded before Tokyo opened
nostro at 06:00 / 12:00 / 18:00 / 24:00: 60,800 / 40,300 / 9,500 / 0 yen
average idle balance (the float) 36,979 yen
stylised annual cost at 4% 1,479 yen
the yen had to be in Tokyo before the payments were, so on an average hour 36,979 yen sat doing nothing; at 4% that head start costs 1,479 yen a year - multiply by every corridor on Earth and pre-funding is trillions parked idle
If the hour-for-hour assert fires, your hour boundary drifted from the replay’s: the ledgers pay everything strictly before each hour’s end, so a <= in your loop books an on-the-hour payment into the hour before it happens. If your float is too high with the balances correct, check the denominator: the average runs over all twenty-four snapshots, because the empty hours at the day’s end are part of the day - a drained nostro is the cheapest hour the corridor ever has, and it still counts. The completed version is solutions/nostro_float.py; compare after you are green.
What you can now do. You can fund a corridor before its day begins and say precisely why the border demands it: no membership, no yen-world credit, no waiting. You can measure what the rule leaves idle - the float, the average of the hourly balances - and prove on real ledgers that the late payments build it, that it is priced at what parked money could otherwise earn, and that the rent is charged per corridor, in both directions, for as long as the corridor operates. You can read both halves of the sizing trade, bounced payments against compounding idleness, and defend an operating point that accepts a miss on purpose. What you cannot yet do is watch the whole journey act on one payment at once - hops, fees, screening holds, cutoffs and time zones together. Lesson 6 wires all of it into the correspondent-chain simulator, and the pool you just priced becomes the balance every hop drains.