Skip to content
cfw.market{market/macro model}

Macro model

How much crypto exposure the macro conditions justify, scored from ten signals.

The reading · taken 1d ago

Transition, 58

Mixed signals, no clear regime. Reduce size, wait for clarity.

12 points short of expansion, 18 above contraction.

What would change it first: 10Y Treasury Yield at 4.98: break above 5 would shift score -1 (bearish)

Medium conviction: 60% of signals agree. The score is the signals alone.

Where we are

Today's 58 is higher than 29% of the 58 readings since 2017.

The line is every confirmed reading in order, with each year marked where it starts. The shaded bands are how the model classifies a score: 70 and up is expansion, 40 to 70 transition, under 40 contraction. Point at the line, or focus it and use the arrow keys, to read any day.

Today58TransitionBTC $77,575
  • Expansion
  • Late cycle
  • Transition
  • Contraction
  • Dislocation
  • · squares show the regime called at the time

What moves it

Money supply and the yield curve push the score up most; the 10-year yield and gold against BTC pull it down.

Five of 10 signals sit at zero.

Liquidity

tier 1 · ×3+9

Dollar, money supply, policy rate and the curve. These set the tide.

  • US dollar indexYahoo, 30 Oct102.000
  • DXY 30-day trendYahoo, 30 OctFlat00
  • Fed funds rateFRED, 29 Oct3.88%00
  • Global M2 supply trendFRED, 1 SeptRising+2+6
  • Yield curve (10Y minus 2Y)FRED, 29 Oct0.37%+1+3

Sentiment

tier 2 · ×20

Volatility, credit spreads and long yields. The market’s mood.

  • Credit spreads trendFRED, 29 OctFlat00
  • VIX fear indexYahoo, 30 Oct19.4+1+2
  • 10Y Treasury yieldFRED, 29 Oct4.98%-1-2

Confirmation

tier 3 · ×1-2

Gold and equities confirm or challenge the read.

  • Gold vs BTC correlationYahoo, 30 OctBoth falling-2-2
  • S&P 500 trendYahoo, 30 OctFlat00

reading · score from −2 to +2 · points added to the composite after weighting · under each signal, its source and the date that source reports

Does it work?

Live since 2026: right on 3 of 13 calls.

Each call is checked against what Bitcoin did over the next 90 days. Expansion, late cycle and dislocation expect a rise, contraction a fall; transition calls are not counted. The live calls fall in two separate stretches at least 30 days apart, so the sample is small. The bar to beat: BTC was higher 90 days later after 6 of 21 live readings, whatever the model said. The 2017 to 2025 readings were reconstructed after the fact, with regimes labelled by hand, so they are scored apart: right on 15 of 23.

Live calls right, since 2026
23%
3 of 13
BTC higher 90 days later, any reading
29%
6 of 21 live readings
Reconstructed 2017–2025
65%
15 of 23, labelled after the fact

After live readings, BTC moved -3.4% on average over the next 90 days.

Score against outcome

Each square is one call: the composite score at the time, left to right, against how far BTC moved over the next 90 days. The dashed line is the fit.

0255075100-60%0%60%120%180%
composite score, 0 to 100
  • Expansion
  • Late cycle
  • Transition
  • Contraction
  • Dislocation

Returns by regime

Average BTC change 30, 60 and 90 days after each confirmed call.

  • Expansion22 calls
    30 days
    +6.0%
    60 days
    +9.9%
    90 days
    +19.3%
  • Late cycle5 calls
    30 days
    -18.8%
    60 days
    -29.0%
    90 days
    -32.5%
  • Transition16 calls
    30 days
    +7.4%
    60 days
    -0.5%
    90 days
    +10.2%
  • Contraction6 calls
    30 days
    +1.8%
    60 days
    -4.8%
    90 days
    -9.7%
  • Dislocation3 calls
    30 days
    +17.8%
    60 days
    +31.9%
    90 days
    +57.5%

What follows

Half in stables, a third in BTC, 15% in ETH and majors, 3% in alts.

The split the regime calls for, what the signals are saying in words, and the levels that would change the read.

Suggested allocation

The default split for this regime, adjusted for BTC dominance. A guideline, not a mandate.

  • BTC33%
  • ETH and majors15%
  • Alts3%
  • Stables50%

Narrative layer

What the signals are saying, in words. Model narratives explain the score and do not change it; only events the owner confirms can move it, by at most 5 points.

Total
0 pts

From the model

Drawn from signals at their extremes and levels close to flipping. Earlier readings also added these to the score.

  • Liquidity Expansionbullish · 30%Global M2 Supply Trend at extreme +2 score, high-impact signal
  • Yield Curve (10Y minus 2Y) Watch Levelbullish · 15%Yield Curve (10Y minus 2Y) at 0.37, 0.07 above the 0.3 level that would shift its score -1
  • VIX Fear Index Watch Levelbullish · 10%VIX Fear Index at 19.42, 1.42 above the 18 level that would shift its score +1
  • 10Y Treasury Yield Watch Levelbearish · 10%10Y Treasury Yield at 4.98, 0.48 above the 4.5 level that would shift its score +1
  • Gold Safe Havenbearish · 10%Gold vs BTC Correlation at extreme -2 score, high-impact signal

Watchlist

The signals closest to changing score, in order of how near they are.

  1. 1.10Y Treasury yieldAt 4.98: break above 5 would shift score -1 (bearish)
  2. 2.Yield curve (10Y minus 2Y)At 0.37: break below 0.3 would shift score -1 (bearish)
  3. 3.Fed funds rateAt 3.88: break below 3.5 would shift score +1 (bullish)
  4. 4.US dollar indexAt 101.96: break below 101 would shift score +1 (bullish)
  5. 5.VIX fear indexAt 19.42: break below 18 would shift score +1 (bullish)
Deterministic multi-factor scoring. Sources: DXY, VIX, Treasury yields, Fed funds, M2, credit spreads.Last confirmed reading 1d ago. Readings are reviewed before they publish, so they can lag the market by a day or more.