CFDLAcademy
All chapters

Part 3 · Modeling judgment · Chapter 16 of 27

Choosing grain

Part II taught you the constructs; Part III is about the decisions the constructs cannot make for you. The first is made in a model's first line and is the hardest to reverse later: grain. It comes in two independent flavors — how finely to slice time, and how finely to slice things — and each choice is a claim about which differences in the world your model can express at all. Everything a grain cannot represent, the model does not merely simplify; it asserts does not matter.

Timeline grain: what each setting hides

The grid's cadence sets the resolution below which all timing becomes fiction. Concretely, by grain:

Annual can state yearly totals and nothing else. Within-year timing — the net-45 collection gap from chapter 4, a mid-year refinance, seasonality, a construction draw schedule — is not approximated but unrepresentable: cash in period 0 is cash "in 2026," full stop. Annual is the grain of long-horizon strategic sketches and of matching sources that only report annually. It cannot host a covenant test, because covenant breaches live inside years.

Quarterly matches how funds report and how many credit documents test. It represents seasonality coarsely and still cannot see a monthly working-capital cycle.

Monthly is the working default for deal models, and not by convention alone: it is the coarsest grain at which the commercial timing machinery — payment terms, lease starts, debt service, month-end rules — operates without distortion. Nearly every claim in Parts I–II was written monthly because nearly every claim is monthly: rent, payroll, interest.

Daily is for models that reconcile to settlement: business-day rolls, actual day counts, a servicer's remittance calendar. The cost is volume — thirty times the periods of monthly — paid in review attention. Daily is right when the day is the claim, wrong when it is merely available.

Two principles pick the grain. First, chapter 4's rule, now with its full weight: model at the grain at which cash actually moves — the finest cadence at which any claim in the deal is made, not the finest you can imagine. Second, an asymmetry that resolves most close calls: rolling up is free, slicing down is fabrication. A monthly model produces exact quarterly and annual views — the annual rollup in every results document is precisely this. An annual model "made monthly" by dividing by twelve invents a smoothness the deal never claimed — the fictional flat months that hide exactly the crunch a monthly model exists to reveal. When torn between grains, take the finer one for the model and report at the coarser one; the reverse direction does not exist.

The trap to know by name is the averaged breach: a deal that pays its debt comfortably on the year and misses it badly in the quarter the balloon payment lands. Annual grain does not hide that breach — it asserts the breach away. Chapter 18 returns to this as the coverage-ratio rule; here it is the canonical evidence that grain is a claim, not a preference.

Entity grain: pool or pieces?

The second grain: is the office building one entity, or forty suites? Is the loan book one pool, or ten thousand loans? The constructs support both — the question is which the deal requires, and the test is behavioral:

Split entities where behavior differs; pool them where it does not. Forty suites with different tenants, different expirations, different escalations are forty behaviors — model suites, because "the building's rent" is not one claim but forty claims with forty dates. Ten thousand consumer loans underwritten to the same box, prepaying by the same curve, are one behavior with scale — model the pool, with rate and factor fields (chapter 8) carrying the aggregate dynamics. The pool is not a shortcut version of the loan-level model; it is the correct model of a portfolio whose members are exchangeable, and the loan-level version of it adds ten thousand rows of noise around the same four assumptions.

The language keeps the split cheap where you need it, in two ways you have met. Hierarchy: part of (chapter 2) makes suites members of the building, so entity-level cash and fields roll up along the same relation — you get the building view and the suite view from the suite-grain model, the timeline asymmetry again: fine grain rolls up free. Mixed grain is legal and normal: the capstone models a building's leases suite by suite while treating its operating expenses at the building level, because that is where each behavior lives. Entity grain is chosen per storyline, not once per model.

The behavioral test also tells you when to change your answer: the pool whose members stop being exchangeable — a large loan sours, one tenant becomes half the rent roll — has outgrown its grain, and the model should split the exception out (part of the same parent, beside the pool) rather than pretend the average still describes anyone.

The cost of getting it wrong

Wrong-grain models fail slowly, which is why the decision deserves this chapter. Too coarse, and the model accretes epicycles — the "monthly adjustment factor" rows, the side spreadsheet for the covenant test — each a patch over a claim the grid cannot make; eventually someone rebuilds it finer, under deadline, and reconciles for a week. Too fine, and review drowns: nobody hand-checks the anchor numbers (chapter 13, rule 5) in a daily model of a deal whose every real claim is monthly, so the fine grain reduces scrutiny while looking rigorous. Both failures are quiet, cumulative, and traceable to line one.

The discipline, stated once: write down, before the first stream, the finest cadence at which any document in the deal states a claim, and the list of things whose behavior genuinely differs. That pair is your two grains. Every impulse to deviate from them later is either a new fact about the deal (change the grain, deliberately, as its own commit) or an impulse to decorate (decline it).

What can go wrong

The grid finer than the claims. Every schedule in the model turns out coarser than the grid — a monthly model whose streams are all quarterly. Harmless to the engine, corrosive to review: the empty months invite someone to fill them. Coarsen the grid to the claims.

The division-by-twelve tell. An amount like annual_figure / 12 inside a monthly model is the fingerprint of an annual claim wearing a monthly costume — the timing inside the year is invented. Sometimes that is a stated convention (say so in the comment, chapter 13 rule 4); more often the source document actually contains the monthly truth, unread.

A pool hiding a name. One obligor at 30% of the pool is not a pool statistic; it is a storyline. The tell is a distribution assumption doing work that is really one entity's credit story.

Exercises

Exercise

The same deal, twice

Run the monthly starter and note its NPV. Then rebuild it at annual grain: a two-period grid, each stream stating twelve-month totals (project fees exist only in year two).

The lifetime total must match exactly — 288,000, both ways. The NPVs will not: the annual model's cash sits at each year's end, discounted the full year, while the monthly model's arrives spread across it. Predict the direction of the gap before running, then measure it. That gap is what "rolling up is free, slicing down is fabrication" is worth in dollars on even this tiny deal — the annual model didn't simplify the timing, it changed the claim.

Loading exercise…

Then, on your own:

  1. Take any monthly model you have written in this course and produce its annual view from the rollup in the results. Then build the annual model directly — twelve-month totals as annual amounts — and compare NPVs at the same rate. Explain the direction of the gap in one sentence about when cash sits inside a year.
  2. For a deal you know from work, write the two-grain declaration: the finest documented cadence, and the list of genuinely distinct behaviors. Note where the model you actually used disagreed with it, and what epicycle that disagreement grew.