Strategy Rainbow

← Back to chart

What this chart shows

BTC Spot is the weekly Monday price from dailysatprice.com (2013 → today, CoinGecko source, daily → weekly Monday bucket).

MSTR MNAV-adjusted price = MNAV × BTC spot where MNAV = (Market Cap + Debt + Preferred) / BTC NAV. Uses the MSTR.csv and STR*.csv weekly snapshots. Weekly Monday bucket, same as BTC.

Rainbow bands are a log-regression fit price = exp(a·ln(b+x)+c) evaluated at each week index x. Bands are that center line shifted in log space by bandWidth=0.3 steps — same method as the classic Bitcoin rainbow chart. They show where each sentiment band (Fire sale → Max bubble) sits if the trend continues — not a price forecast.

Why MNAV follows the rainbow better this cycle

Spot peaked around the yellow "HODL" band while MNAV touched red "bubble" levels — same historical 10–20× cycle return, now split across two channels: spot 3–4× plus MSTR premium 3–5× via convertible-debt-financed BTC accumulation.

Halving markers

Vertical lines at 2012-11-28, 2016-07-09, 2020-05-11, 2024-04-20, 2028-04-01 (est.). Time-range buttons are halving-relative (1.5H ≈ 6 years).

Method & caveats

Data & updates

BTC auto-fetches daily via GitHub Actions from dailysatprice.com/data/latest.csv. MSTR/STR CSVs currently manual from Strategy's site — easy to automate (see below). Site is static on GitHub Pages at strategyrainbow.com — open source at posix4e/btc-mnav-rainbow.

Live without republishing?

Today: BTC auto-deploys daily (still a Pages deploy). Since you own dailysatprice, we can make the chart fetch live: add https://dailysatprice.com/data/weekly.json (+ /data/strategy.json for MNAV) with CORS Access-Control-Allow-Origin: * — then chart.js fetches at view time with data.js as fallback. No deploy needed, visitors see today even before the workflow runs.

Ask to wire that and I’ll patch both repos — dailysatprice generates the JSON, strategyrainbow fetches it.

← Back to chart · GitHub