Skip to content
C.W.K.
Stream
Lesson 05 of 05 · published

A Composite Names Its Oldest Leg

~12 min · composite, aggregation, as-of, honesty

Level 0Raw Ore
0 XP0/36 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"The composite states its own as_of, names its oldest input, and reports the narrowest window under it."

What aggregation destroys

The composite takes eight indicators, scores each, averages within three categories, weights the categories, and returns one number. Aggregation is compression, and compression discards. The question is always what it discards, and here it is two things that matter enormously.

It discards the spread of dates. One leg comes from a quarterly statistical release and can legitimately be months old. Another is a daily series updated last night. Averaged together, the output has no date of its own — and whichever date you print beside it will be wrong for most of its inputs.

It discards the spread of windows. A composite whose members were measured against three years, forty-one years, and a century and a half is only as measured as its shortest ruler. But the composite is a single number between zero and one hundred, and single numbers look equally solid regardless of what went into them.

Three fields that put it back

Rather than hiding the spread, the return value names it. The as-of is the newest contributing reading, so the reader knows the freshest thing in the mix. The oldest input is named with its date, so they can see the laggard by name — the quarterly leg, months behind, called out rather than averaged away. The narrowest window is the shortest ruler any member was measured against, because the composite's claim to be historically grounded is capped by its least-grounded member.

The docstring puts it in one clause worth memorizing: a composite is only as measured as that.

An aggregate should report its own weakest input, not its average one. Averages describe the middle; trust is governed by the tail. When you compress many measurements into one, carry forward the properties of the worst contributor — the oldest, the shortest, the most estimated — because those are what actually bound what the aggregate can claim.

The decision to keep two markets out

There is a second honesty decision in the same module, and it is the more interesting one. The Korean and Japanese readings are scored on the same published scales as everything else, and they are deliberately outside the composite, presented as context cards instead.

The reason given is precise: the composite characterizes the US market against itself, and folding Korea into that average would quietly change the question it answers. The number would still compute. It would still look like a composite. But it would silently become a different measurement — some blend of three markets with no name, no reference history of its own, and no way for a reader to notice the substitution.

That is the subtlest failure mode in this whole track. A number that changes meaning while keeping its name is worse than a number that is wrong, because a wrong number can be caught by checking it, and a redefined one checks out perfectly.

I would have folded them in
More inputs feels like more rigor, and "the composite covers all three markets" is a better sentence than "the composite covers one and the others sit beside it." It took reading the reasoning to see that the better sentence describes a worse instrument. The composite answers where does this market sit against its own history — and there is no version of that question with three markets in it. Keeping them out was not a limitation to apologize for; it was the only way the question stayed askable.

Code

The composite's honesty fields, returned beside the number·python
def assay(rows=None) -> dict[str, Any]:
    """The whole model over the current gauge readings.

    Carries its own honesty alongside the number: `as_of` is the
    newest contributing reading, `oldest_input` names the laggard
    (the Buffett leg is quarterly and can be months behind), and
    `narrowest_window` is the shortest ruler any member was
    measured against -- a composite is only as measured as that."""
    ...
    dated = sorted(scored, key=lambda s: s["data_date"])
    windows = [s["window_years"] for s in scored
               if s["window_years"] is not None]
    return {
        "composite": composite,
        "regime": regime(composite),          # a phrase, never a call
        "as_of": dated[-1]["data_date"],      # the freshest leg
        "oldest_input": {"name": dated[0]["name"],
                         "data_date": dated[0]["data_date"]},
        "narrowest_window": min(windows),     # the shortest ruler
        "reference_scored": [s["key"] for s in scored
                             if s["reference"]],  # assumed, not measured
        "formula": "category = mean(member scores); composite ="
                   " sum(category x weight) x 10 -- valuation 40 /"
                   " risk pricing 30 / liquidity 30",
    }

External links

Exercise

Take a composite score, health index, or rollup metric in your own systems and list its inputs with the age and history-length of each. Then check what your surface prints as the metric's timestamp. If it prints one date, find out which input that date belongs to and whether the others are meaningfully older. Then decide what to name: the newest, the oldest, or both.
Hint
The reliable smell is a rollup whose inputs update on different schedules — anything mixing a real-time signal with a weekly or quarterly one. The rollup will look live, because the fast input keeps moving it, while a slow input silently anchors it to last quarter.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.