Regime Allocator · under the hood reading of 2026-08-31

The Gauge Math

Every number in the weekly card is a transparent weighted average — no black box. Here's the exact arithmetic behind the two most-asked-about scores: this week's conviction of +0.03 and the monetary read of −0.74.

Score 1 — how conviction becomes +0.03

Conviction blends the six cycles into one number. Each cycle is expressed on a −1…+1 scale (+ bullish, − bearish), multiplied by its weight, summed, then divided by the total weight.

Conviction

= +0.03
a weighted average of the six cycles
Cyclevalueweightweight × value
Liquidity 13-wk momentum, risk-off−1.000.40−0.400
Growth momentum, capped at ±1+1.000.35+0.350
Disinflation −(inflation state), cooling+1.000.25+0.250
Monetary Fed path, tight (see below)−0.740.14−0.103
Positioning crowded / complacent−0.610.10−0.061
Totals1.24+0.036
conviction = sum ÷ total weight = +0.036 ÷ 1.24 = +0.029 ≈ +0.03

The story in one line: the tailwinds — growth (+1.00), disinflation (+1.00) — argue to lean in, but the headwinds — liquidity (−1.00), monetary (−0.74), positioning (−0.61) — drag it back to essentially neutral (+0.03). That balance is the whole point: no single cycle gets to run the book.

Why 1.24? It's just the sum of the weights (0.40 + 0.35 + 0.25 + 0.14 + 0.10). Dividing by it keeps the score inside −1…+1. The first three weights were built to total 1.0; monetary and positioning were added later as caution overlays (+0.24), so the divisor became 1.24 — forced by the weights, not chosen.

Score 2 — how monetary becomes −0.74

The monetary cycle reads the Fed's path straight from market prices. Each of three rate signals is standardized into a z-score (how far it sits from its own ~10-year history), given a sign, and weighted.

Monetary

= −0.74
weighted average of three market-priced rate signals · + = easing, − = tightening
Signalreadingz-scoresignwtsign × wt × z
2-yr rate path DGS2, 6-mo change4.19%+0.81pt / 6mo+0.82−11.0−0.821
SOFR overnight policy, 6-mo change3.64%−0.04pt / 6mo−0.15−10.6+0.087
Real policy rate DFII10, level2.34%level+1.49−10.6−0.892
Totals2.2−1.626
monetary = sum ÷ total weight = −1.626 ÷ 2.2 = −0.739 ≈ −0.74

What each piece says: the 2-year yield jumped +0.81% in six months (now 4.19%) — the market pricing the Fed higher tightening. The real yield sits at 2.34% (+1.5 SD above normal) — money is genuinely expensive restrictive. SOFR barely moved (−0.04%) — the current rate is steady ≈ neutral. Rising forward path + high real rates = the textbook "higher-for-longer."

Why 2.2? Same rule — the sum of the weights (1.0 + 0.6 + 0.6). And every signal uses sign = −1, encoding one convention: rates going up = tightening = negative; rates going down = easing = positive.

Three ideas make it all work
z-score
Standardize, then compare. Each raw series (a yield, a spread, a survey) is measured against its own ~10-year history: z = how many standard deviations it sits from normal. This puts unlike things — a 2-yr yield, a VIX level, copper — on one comparable scale.
sign
Point every signal the same way. A +1 sign means "higher reading = more bullish"; −1 flips it. It's how a rising credit spread (bad) and a rising copper price (good) both feed a single growth number with the right direction.
÷ Σ weights
Normalize by the total. Dividing by the sum of the weights (1.24 for conviction, 2.2 for monetary) keeps every composite on the same −1…+1 / z-like scale, so scores are comparable across cycles and over time. The divisor is never a free knob — it's whatever the weights add to.

The weights themselves (liquidity 0.40, growth 0.35, …) are deliberate judgment — liquidity leads, so it counts most; monetary and positioning are caution overlays, so they count less. They were not optimized on the data to flatter a backtest; that would be curve-fitting. Only the decision to add the two overlays was validated out-of-era.