One number for the mood
The Vibe Index
How much is the crowd vibing right now, on a scale of 0 to 100, and how does that compare to the last 3 years? This page reads 6 free market signals, ranks each one against its own recent history, and averages the result. It is not a survey and it is not a forecast. It is a thermometer, read daily, from public prices.
52
Meh
out of 100 · as of Sep 30, 2026 · −29 since Aug 28, 2026
The composite, every trading day
The components
| Component | Reading | Percentile | Score | Direction | Why it is a vibe |
|---|---|---|---|---|---|
Fear FRED VIXCLS | 16.34 | 48th | 52 | Inverted | The VIX is what options traders will pay to insure the S&P 500 over the next month. When it is high, people are scared enough to pay up. |
Credit FRED BAMLH0A0HYM2 | 3.12% | 58th | 42 | Inverted | The extra yield junk-rated borrowers pay over Treasuries. It widens when lenders start asking who is actually going to pay them back. |
Breadth Yahoo RSP vs SPY | −4.6% | 11th | 11 | Direct | The equal-weight S&P 500 against the regular one over the past quarter. When the average stock keeps up with the giants, the rally has company. |
Risk appetite Yahoo ARKK vs SPY | +6.2% | 66th | 66 | Direct | ARKK against the S&P 500 over the past quarter. Unprofitable growth outrunning the index is the market asking for more, not less. |
Meme heat Yahoo GME, AMC, PLTR, HOOD, COIN vs SPY | +11.2% | 77th | 77 | Direct | Five stocks that trade on attention, held equal-weight, against the S&P 500 over the past month. Equal-weight because the enthusiasm is. |
Crypto mood Yahoo BTC-USD | +6.4% | 62nd | 62 | Direct | Bitcoin's trailing 30-day return. It has no earnings, so it is about as close to a pure vibe as a price gets. |
Reading is the raw value on Sep 30, 2026. Percentile is where that reading sits in the component's own trailing 3-year history. Score is the percentile after direction: for inverted components (fear, credit) a high reading is a low score.
How it's scored
Each component is one number a day, computed from public prices: the VIX close, the high-yield credit spread, the equal-weight S&P against the cap-weight one over a quarter, ARKK against the S&P over a quarter, an equal-weight basket of GME, AMC, PLTR, HOOD, COIN against the S&P over a month, and bitcoin's 30-day return. All six are aligned to the stock market's trading days; a holiday gap in a series is carried forward for at most 5 days, never longer.
Each day's reading is then ranked against that component's own readings from the trailing 3 years, which turns a VIX level or a credit spread into a percentile from 0 to 100. Fear and credit are inverted, so a high VIX scores low. The composite is the equal-weight mean of the six scores. Nothing is smoothed. A component starts contributing once it has 250 daily readings to rank against, and the composite exists only on days all six do.
Two things to hold loosely. Ranking against a 3-year window means the number is relative: 50 is "normal for the last few years," not "normal." And the top band is reached by being at the high end of recent history, which is exactly when it is least comfortable to say so out loud. That is the point of the label.
Every number on this page comes from files in this site's repository, refreshed by a script that pulls FRED and Yahoo Finance and commits the result. Last pulled Oct 2, 2026; the page itself fetches nothing. The weights, the labels and the component list live in a data file, not in code, so when the basket changes the change is visible.
What's next: the social layer
Everything above is a market signal, which means it measures the vibe after people have already traded on it. The component registry carries a kind field for this reason. The next component is social: how fast a set of tickers is being mentioned on Reddit and X, Camillo-style social arbitrage, scored on the same percentile scale and weighted on air. It is designed in; it is not live yet. When it lands it will show up in the table above with its own row and its own blurb, and this paragraph will say so.
This page was promised on the show. In Episode 59, Dan: "We need another page on the website. We're gonna have a vibe index." Sean: "I'll see if I can get a first draft up before next week." This is the first draft.