Stock Sentiment Gauge
Use this when you need a 0-100 US stock-market fear/greed reading with its eight component percentiles and recent daily history (cev-os's own index; IEX ETF closes + US Treasury yields).
What it is
cev-os's own US stock sentiment index (not CNN Fear & Greed). Eight components from ETF closes (SPY, RSP, HYG, IEF, TLT and the nine sector SPDRs) and the 10-year Treasury par yield: momentum (SPY vs 125-day average), strength (sector 52-week range position), breadth (sectors above 50-day average + RSP vs SPY), vol_term (SPY 10/60-day realized vol, inverted), junk (HYG vs IEF), volatility (SPY 20-day realized vol vs its 50-day mean, inverted), yield10 (20-day change in the 10-year yield) and safe_haven (SPY vs TLT). Each is a trailing 504-session percentile; the weighted blend gets a 3-day EMA. Bands: Extreme Fear 0-25, Fear >25-45, Neutral >45-55, Greed >55-75, Extreme Greed >75. Prices are IEX last sale (IEX venue only), split-adjusted, not dividend-adjusted. Daily, prior session.
Endpoints
- REST:
GET /v1/stock-sentimentonhttps://api.cev-os.com - Legacy host (same service):
GET /v1/stock-sentimentonhttps://cev-os.com - MCP tool:
get_stock_sentimentonhttps://mcp.cev-os.com/mcp
Parameters
| Name | Type | Description | Constraints |
|---|---|---|---|
days | integer | Days of history to return (1-60, default 30). | example 30; min 1; max 60 |
Example request
No account and no key. Query values below are the examples or defaults from the registry. An optional free key (header x-api-key) raises the limits; create one at https://cev-os.com/#api_keys after signing in with a verified email (Google sign-in is already verified).
curl -s "https://api.cev-os.com/v1/stock-sentiment?days=30"
Example response
Every /v1 response is a JSON envelope (schema_version, product, timestamps, license, attribution, data). The registry example is the data member:
{
"id": "stock_sentiment_gauge",
"date": "2026-10-29",
"value": 27.2,
"classification": "Fear",
"previous": 25.5,
"change": 1.7,
"components": [
{
"id": "momentum",
"weight": 0.214,
"percentile": 21.9
}
],
"history": [
{
"date": "2026-10-28",
"value": 25.5,
"classification": "Fear"
}
]
}
Update frequency
Daily, prior US session: IEX closes land T+1; recomputed 7:45 AM ET (retries 10:45 AM and 1:45 PM ET); cached 5 min.
- Public cache:
300seconds (Cache-Control: public, max-age=300).
Sources, license and usage
License status: cleared with attribution. Computed only from IEX Historical Data (redistribution and resale permitted with the exact IEX attribution text and a link to its terms, included in each response) and U.S. Treasury par yields (public domain). No FRED, Cboe, Yahoo or CNN data.
| Source | License | commercialOk | Terms |
|---|---|---|---|
| CEV-OS Stock Sentiment Gauge (own method, v2 no-Cboe recipe) | Own work (Cutting Edge Ventures); computed only from the IEX and U.S. Treasury inputs listed | true | — |
| IEX Historical Data (HIST TOPS), daily IEX last sale | Free; redistribution and resale permitted with the IEX attribution text and a link to the IEX Historical Data Terms of Use. IEX-venue trades only; IEX describes it as a reference point, not a basis for trading decisions; no warranty. | true | https://www.iex.io/legal/hist-data-terms |
| U.S. Department of the Treasury, Daily Treasury Par Yield Curve Rates (10-year), keyless CSV | US Government work (17 U.S.C. 105, public domain); no key; credit requested; no Treasury endorsement implied | true | https://home.treasury.gov/subfooter/privacy-policy |
Attribution (show this wherever you display the data):
- Data provided for free by IEX. By accessing or using IEX Historical Data, you agree to the IEX Historical Data Terms of Use.
- IEX Historical Data Terms of Use: https://www.iex.io/legal/hist-data-terms
- 10-year yield: U.S. Department of the Treasury, Daily Treasury Par Yield Curve Rates. Index: CEV-OS Stock Sentiment Gauge (cev-os).
Privacy class: public-derived. Access: public. Price: free (price is null; pay-per-call is not active).
Gaps
- IEX last sale, not the official consolidated close; not dividend-adjusted.
- Realized volatility stands in for the VIX, so the gauge can lag implied-volatility gauges by about a day at sharp turns.
- History starts 2026-04-23 (IEX store begins 2023-04-20; 756 sessions of warm-up).
Disclaimer
A sentiment gauge for information only, built on IEX-venue reference prices. Research found no trading edge. Not investment advice.
Related
- Data API hub (all products, limits, license notes)
- MCP Registry listing
com.cev-os/data - OpenAPI 3.1
- Machine product list:
/v1/products
Reference data, not investment advice.