{"service":{"name":"bubblegauge","version":"3.1.0","now":"2026-07-12T13:58:22.464028+00:00","recompute_schedule":"06:00/18:00 UTC","sms_enabled":true,"docs":{"swagger":"/docs","redoc":"/redoc","openapi":"/openapi.json"}},"snapshot":{"computed_at":"2026-07-12T13:45:43.200353+00:00","headline_median":47,"point_score":47.64,"iqr":[43.87,51.55],"band_5_95":[40.82,56.68],"action_band":"suppressed (block degraded)","override_fired":false,"red_flag_count":0,"coverage":{"S":{"coverage":1.0,"degraded":false},"D":{"coverage":0.45,"degraded":true},"degraded":true},"judgment_call":null,"judgment_stale":true},"recompute":{"running":false,"last":{"started_at":"2026-07-12T13:44:23.727553+00:00","finished_at":"2026-07-12T13:45:44.508147+00:00","snapshot_id":4,"error":null}},"sources":[{"key":"cape","name":"Shiller CAPE (multpl / GuruFocus / shillerdata)","feeds":"S1 valuation","basis":"Robert Shiller's cyclically-adjusted P/E series (Campbell & Shiller 1988); multpl and GuruFocus republish it, shillerdata is Shiller's own spreadsheet.","sla_days":35,"url":"https://www.multpl.com/shiller-pe","caveats":"Scraped from HTML/spreadsheet, not an API; post-1990 GAAP changes bias CAPE upward (Siegel 2016).","status":"ok","pulls":[{"source":"cape","ok":true,"http_status":200,"latency_ms":194.6,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null},{"source":"cape_history","ok":true,"http_status":200,"latency_ms":1679.8,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null}]},{"key":"fred_real10y","name":"FRED DFII10 (10-yr TIPS real yield)","feeds":"S1 ECY","basis":"Federal Reserve Bank of St. Louis (FRED), official series.","sla_days":3,"url":"https://fred.stlouisfed.org/series/DFII10","caveats":"","status":"ok","pulls":[{"source":"fred_DFII10","ok":true,"http_status":200,"latency_ms":325.0,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null}]},{"key":"ssga","name":"SSGA SPY holdings XLSX","feeds":"S2 concentration","basis":"State Street (SPY issuer) official daily holdings file.","sla_days":3,"url":"https://www.ssga.com","caveats":"Top-10 is the sum of individual HOLDING weights, not a sector-table figure.","status":"ok","pulls":[{"source":"ssga_spy_xlsx","ok":true,"http_status":200,"latency_ms":2609.9,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null}]},{"key":"prices","name":"Price layer (Tiingo->TwelveData->AlphaVantage->yfinance->cache)","feeds":"S3, D4, GSADF, trend, VRP","basis":"Commercial market-data vendors; adjusted close. No free tier serves raw index levels, so NDX/SPX use QQQ/SPY ETF proxies.","sla_days":3,"url":"https://www.tiingo.com","caveats":"Stooq (former keyless primary) now behind a JS proof-of-work gate; index proxies in use; Alpha Vantage free tier is unadjusted.","status":"ok","pulls":[{"source":"price_SPY","ok":true,"http_status":200,"latency_ms":15.3,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null},{"source":"price_QQQ","ok":true,"http_status":200,"latency_ms":13.7,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null},{"source":"price_SMH","ok":true,"http_status":200,"latency_ms":11.9,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null},{"source":"price_NDX","ok":true,"http_status":200,"latency_ms":13.8,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null}]},{"key":"fred_hyoas","name":"FRED BAMLH0A0HYM2 (ICE BofA US HY OAS)","feeds":"S5 credit","basis":"ICE BofA index via FRED (official).","sla_days":3,"url":"https://fred.stlouisfed.org/series/BAMLH0A0HYM2","caveats":"FRED truncated this series to a rolling 3-year window (Apr 2026); the S5 percentile is only as deep as our own accrued history table.","status":"ok","pulls":[{"source":"fred_BAMLH0A0HYM2","ok":true,"http_status":200,"latency_ms":369.2,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null}]},{"key":"breadth","name":"S&P 500 constituents (Wikipedia) + Twelve Data closes","feeds":"D1 breadth","basis":"Constituent-level computation of % > 200-day SMA; no published keyless %>200DMA source is machine-readable.","sla_days":3,"url":"","caveats":"Partial coverage is published (N/503) rather than dropped; keyless scrape sources are JS-gated/image-only.","status":"failed","pulls":[{"source":"breadth","ok":false,"http_status":null,"latency_ms":1927.8,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":"breadth: only 0 constituents resolved — too few to publish"}]},{"key":"finra","name":"FINRA margin-statistics XLSX","feeds":"D2 margin","basis":"FINRA official monthly customer margin-debt statistics (Rule 4521).","sla_days":75,"url":"https://www.finra.org","caveats":"Published ~3 weeks after month-end; no true fallback (cache & tolerate staleness).","status":"ok","pulls":[{"source":"finra_xlsx","ok":true,"http_status":200,"latency_ms":823.2,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null}]},{"key":"edgar","name":"SEC EDGAR companyfacts","feeds":"D3 hyperscaler FCF","basis":"SEC XBRL company facts (official regulatory filings).","sla_days":100,"url":"https://data.sec.gov","caveats":"Cloud-segment revenue is best-effort; total-revenue proxy is conservative when segments are unavailable.","status":"ok","pulls":[{"source":"sec_edgar","ok":true,"http_status":200,"latency_ms":4328.6,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null}]},{"key":"lppls","name":"LPPLS fit (lppls==0.6.24 on QQQ proxy)","feeds":"D4 LPPLS","basis":"Johansen-Ledoit-Sornette log-periodic power-law singularity confidence.","sla_days":3,"url":"","caveats":"Package maintenance-inactive; ~29% precision (fires in ordinary bull markets); runs on the QQQ index proxy.","status":"failed","pulls":[{"source":"lppls","ok":false,"http_status":null,"latency_ms":18509.4,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":"LPPLS subprocess failed rc=1: r_conditions_config(\n                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/usr/local/lib/python3.12/site-packages/lppls/lppls.py\", line 55, in _resolve_filter_conditions_config\n    raise TypeError(\nTypeError: filter_conditions_config must be a dict[str, float] or None."}]},{"key":"vix","name":"VIX term structure + level + SKEW (vixcentral/CBOE/FRED)","feeds":"V multiplier, fast alarm","basis":"CBOE VIX/VIX3M methodology; vixcentral republishes the futures curve.","sla_days":2,"url":"","caveats":"SKEW is COINCIDENT CONTEXT ONLY (no forward skill).","status":"ok","pulls":[{"source":"vix_term_structure","ok":true,"http_status":200,"latency_ms":1193.1,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null},{"source":"vix_level","ok":true,"http_status":200,"latency_ms":320.8,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null},{"source":"cboe_skew","ok":true,"http_status":200,"latency_ms":358.7,"checked_at":"2026-07-12T13:45:43.200353+00:00","note":null}]}],"providers":[{"provider":"tiingo","consecutive_failures":0,"status":"ok","cooldown_until":null,"updated_at":"2026-07-12T13:42:38.776862+00:00"}],"indicators":[{"id":"s1","name":"Valuation Extremity","block":"S","weight":0.33,"grounding":"literature-grounded","what":"A measure of how stretched broad-market valuation is, combining the cyclically adjusted P/E (CAPE) with the Excess CAPE Yield (ECY) so the reading reflects both absolute richness and richness conditioned on the interest-rate environment, without double-counting.","references":["Campbell, J. Y. & Shiller, R. J. (1988). 'Stock Prices, Earnings, and Expected Dividends.' Journal of Finance 43(3): 661-676. doi:10.1111/j.1540-6261.1988.tb04598.x","Siegel, J. J. (2016). 'The Shiller CAPE Ratio: A New Look.' Financial Analysts Journal 72(3): 41-50. doi:10.2469/faj.v72.n3.1"],"caveats":["Siegel (2016) shows that post-1990 GAAP changes — especially FAS 142 goodwill impairment and mark-to-market accounting — depress reported earnings and bias CAPE upward relative to its own history, so cross-era comparisons overstate current extremity. CAPE is a long-horizon expected-return gauge, NOT a timing tool (near-zero one-year predictive power); Asness/AQR's 'sin a little' caution applies — a high CAPE can persist for years."],"live":{"value":42.18,"sub_score":0.9743454638849376,"dropped":false,"stale":false,"as_of":"2026-07-12","age_days":0,"fallback_used":false,"note":null}},{"id":"s2","name":"Concentration","block":"S","weight":0.27,"grounding":"literature-adjacent","what":"The combined index weight of the ten largest S&P 500 constituents — a measure of narrow-market fragility, since a concentrated index makes aggregate outcomes hinge on a handful of AI-exposed names.","references":["RBC Wealth Management, 'The Great Narrowing' (Jan 2026)","S&P Dow Jones Indices concentration data","JPMAM Guide to the Markets (cross-check)"],"caveats":["The lo/hi anchors are judgmental (chosen to bracket the 2000-peak ~27% and a plausible extreme ~41-44%), not estimated from a labeled crash dataset; concentration has weak standalone timing power. It also feeds red-flag #4 in combination with breadth.","Some data vendors report '36.4%' as the information-technology sector weight — the S2 input is the sum of the top-10 individual holding weights, read from the holdings XLSX, not a sector table."],"live":{"value":37.257935,"sub_score":0.8373015217391305,"dropped":false,"stale":false,"as_of":"2026-07-12","age_days":0,"fallback_used":false,"note":null}},{"id":"s3","name":"Semiconductor GSY Run-up","block":"S","weight":0.2,"grounding":"literature-grounded","what":"The Greenwood-Shleifer-You (GSY) industry run-up crash trigger applied to semiconductors: a sharp two-year net-of-market price run-up in a single industry sharply raises crash probability.","references":["Greenwood, R., Shleifer, A. & You, Y. (2019). 'Bubbles for Fama.' Journal of Financial Economics 131(1): 20-43. doi:10.1016/j.jfineco.2018.09.002"],"caveats":["The 53%/80% crash frequencies are Fama-French-49 industry-level base rates, NOT calibrated to this specific AI episode. The whole-market Magnificent-7 basket does not currently meet the run-up threshold (~0 pp net two-year run-up), so the indicator is deliberately scoped to semiconductors only; applying the GSY threshold to the broad index would understate the signal because the mega-caps are already the market."],"live":{"value":88.88529785486207,"sub_score":0.2666558935645862,"dropped":false,"stale":false,"as_of":"2026-07-10","age_days":2,"fallback_used":false,"note":null}},{"id":"s4","name":"GSADF Explosiveness","block":"S","weight":0.07,"grounding":"contested","what":"A recursive right-tailed unit-root test (the Phillips-Shi-Yu Generalized Supremum ADF, 'GSADF') for explosive (faster-than-exponential) dynamics in Nasdaq-100 and SMH monthly log prices.","references":["Phillips, P. C. B., Shi, S. & Yu, J. (2015). 'Testing for Multiple Bubbles: Historical Episodes of Exuberance and Collapse in the S&P 500.' International Economic Review 56(4): 1043-1078. doi:10.1111/iere.12132","Homm, U. & Breitung, J. (2012). 'Testing for Speculative Bubbles in Stock Markets: A Comparison of Alternative Methods.' Journal of Financial Econometrics 10(1): 198-231. doi:10.1093/jjfinec/nbr009","Vasilopoulos, K., Pavlidis, E. & Martinez-Garcia, E. (2022). 'exuber: Recursive Right-Tailed Unit Root Testing with R.' Journal of Statistical Software 103(10): 1-26. doi:10.18637/jss.v103.i10","Wasserstein, R. L. & Lazar, N. A. (2016). 'The ASA Statement on p-Values: Context, Process, and Purpose.' The American Statistician 70(2): 129-133. doi:10.1080/00031305.2016.1154108","Chen, Chen & Huang (2026). arXiv:2604.25826 (flag: verify at build time)","Basele, Phillips & Shi (2025). Cowles Foundation Discussion Paper d2430 (flag: verify at build time)"],"caveats":["The CONTESTED flag is currently permanent because of Chen-Chen-Huang (2026): under hump-shaped GPT fundamentals the test spuriously rejects 93-100% of the time. We expose the binary decision plus the p-value (per the ASA p-value statement, Wasserstein & Lazar 2016) rather than pretending to a graded posterior we cannot honestly calibrate."],"live":{"value":0.1195,"sub_score":0.25,"dropped":false,"stale":false,"as_of":"2026-07-10","age_days":2,"fallback_used":false,"note":"Nasdaq-100 via QQQ proxy"}},{"id":"s5","name":"Credit-Sentiment Fragility (t - 2 yr)","block":"S","weight":0.13,"grounding":"literature-grounded","what":"The tightness of high-yield credit spreads read as late-cycle sentiment fragility: aggressively priced credit risk today predicts subsequent spread widening and an economic downturn roughly two years out.","references":["Lopez-Salido, D., Stein, J. C. & Zakrajsek, E. (2017). 'Credit-Market Sentiment and the Business Cycle.' Quarterly Journal of Economics 132(3): 1373-1426. doi:10.1093/qje/qjx014"],"caveats":["t-2yr STRUCTURAL horizon, NOT same-month timing.","FRED truncated BAMLH0A0HYM2 to a rolling 3-year window in April 2026, so the service must persist its own history table (hy_oas_history), seeded with the 3 available years on first boot and appended daily; the percentile is only as good as accrued history — this limitation is documented in the API payload."],"live":{"value":270.0,"sub_score":0.9199491740787802,"dropped":false,"stale":false,"as_of":"2026-07-09","age_days":3,"fallback_used":false,"note":"own history table; FRED 3yr truncation; percentile computed on 787 days of accrued history (min 3y seed); deepens over time"}},{"id":"d1","name":"Breadth","block":"D","weight":0.35,"grounding":"judgmental","what":"The percentage of S&P 500 members trading above their own 200-day moving average — a participation gauge whose deterioration signals narrowing leadership.","references":["No published AUC/skill statistic exists for this specific mapping; the weight and anchors are expert-judgmental. General late-cycle breadth-divergence literature (market-technician breadth studies) is cited as background only."],"caveats":["Both the weight and the linear map are JUDGMENTAL. Breadth is also used in red-flag #4 with the <50%-while-index-within-2%-of-ATH condition."],"live":{"value":null,"sub_score":null,"dropped":true,"stale":null,"as_of":null,"age_days":null,"fallback_used":false,"note":"breadth unavailable; dropped, Block D renormalized"}},{"id":"d2","name":"Margin-Debt Rollover","block":"D","weight":0.13,"grounding":"judgmental","what":"FINRA customer margin debit balances: year-over-year growth plus a rollover-confirmation multiplier, read as a deleveraging-confirmation signal.","references":["FINRA Rule 4521 margin statistics","Advisor Perspectives/dshort margin-debt analysis","CXO Advisory margin-debt studies"],"caveats":["CXO Advisory finds ~0.00 correlation between margin-debt changes and next-month returns and a 1-2 month lag versus stocks -> this is confirmation-only, low weight. There is a 3-4 week publication lag (published ~third week of the following month) and no true fallback source — cache and tolerate staleness (MacroMicro mirrors the same series for display only)."],"live":{"value":53.70450399583044,"sub_score":0.49207721135709326,"dropped":false,"stale":false,"as_of":"2026-05-01","age_days":72,"fallback_used":false,"note":"rollover: unknown (data age not confirmably <=60d); mult=0.6"}},{"id":"d3","name":"Hyperscaler FCF Quality","block":"D","weight":0.32,"grounding":"literature-grounded","what":"A gate that fires only on revenue-driven free-cash-flow deterioration among the major cloud hyperscalers — distinguishing a productive capex buildout from a bubble in which spend stops converting to growth.","references":["BIS (2026), Annual Economic Report (buildout/AI-capex context) (flag: verify at build time)","General buildout-analogy literature (railroad/telecom capital-cycle studies)"],"caveats":["Cloud-segment revenue is best-effort from XBRL segment data; when it is unavailable the total-revenue proxy is deliberately conservative (harder to trip the gate), which biases the indicator toward under-alarming — documented as such."],"live":{"value":0.7207,"sub_score":0.3,"dropped":false,"stale":false,"as_of":"2026-05-31","age_days":42,"fallback_used":false,"note":"gate not fired; capped at 0.30; total-revenue growth used as conservative gate proxy"}},{"id":"d4","name":"LPPLS Confidence","block":"D","weight":0.2,"grounding":"literature-grounded","what":"The Log-Periodic Power Law Singularity (LPPLS) confidence indicator on Nasdaq-100 and SMH: the fraction of fitting windows whose calibrated parameters satisfy bubble-consistency filters.","references":["Johansen, A., Ledoit, O. & Sornette, D. (2000). 'Crashes as Critical Points.' International Journal of Theoretical and Applied Finance 3(2): 219-255. doi:10.1142/S0219024900000115","Sornette, D. (2003). Why Stock Markets Crash: Critical Events in Complex Financial Systems. Princeton University Press.","Demirer, R., Demos, G., Gupta, R. & Sornette, D. (2019). 'On the Predictability of Stock Market Bubbles: Evidence from LPPLS Confidence Multi-Scale Indicators.' Quantitative Finance 19(5): 843-858. doi:10.1080/14697688.2018.1524154"],"caveats":["LPPLS has documented false-alarm / too-early behavior; one published evaluation reports ~90% recall but ~29% precision (it fires often in ordinary bull markets). It is also computationally heavy. Treat the sub-score as a noisy corroborator, not a stand-alone alarm."],"live":{"value":null,"sub_score":null,"dropped":true,"stale":null,"as_of":null,"age_days":null,"fallback_used":false,"note":"LPPLS dropped (LPPLS subprocess failed rc=1: r_conditions_config(\n                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/usr/local/lib/python3.12/site-packages/lppls/lppls.py\", line 55, in _resolve_filter_conditions_config\n    raise TypeError(\nTypeError: filter_conditions_config must ); Block D renormalized"}},{"id":"v","name":"VIX Term-Structure Multiplier","block":"V","weight":0.0,"grounding":"lagging-confirmation","what":"A multiplier on Block D reflecting the shape of the VIX volatility term structure: calm (contango) leaves D unchanged; stress (backwardation) amplifies it. Not a weighted sub-score. Label: LAGGING CONFIRMATION.","references":["CBOE VIX/VIX3M methodology; term-structure regime literature.","Bollerslev, T. & Todorov, V. (2011). 'Tails, Fears, and Risk Premia.' The Journal of Finance 66(6): 2165-2211. doi:10.1111/j.1540-6261.2011.01695.x"],"caveats":["LAGGING CONFIRMATION only — never treated as a leading signal; capped so D cannot exceed 1.0."],"live":null}],"legs_science":[{"id":"trend","name":"Leg 2 — Faber trend trigger (SPY/QQQ 10-mo SMA)","references":["Faber, M. T. (2007). 'A Quantitative Approach to Tactical Asset Allocation.' The Journal of Wealth Management 9(4): 69-79. doi:10.3905/jwm.2007.674809 (updates 2009, 2013).","Zakamulin, V. (2014). 'The Real-Life Performance of Market Timing with Moving Average and Time-Series Momentum Rules.' Journal of Asset Management 15(4): 261-278. doi:10.1057/jam.2014.25","Moskowitz, T. J., Ooi, Y. H. & Pedersen, L. H. (2012). 'Time Series Momentum.' Journal of Financial Economics 104(2): 228-250.","Huang, D., Li, J., Wang, L. & Zhou, G. (2020). 'Time Series Momentum: Is It There?' Journal of Financial Economics 135(3): 774-794."],"caveat":"Zakamulin (2014) — out-of-sample outperformance of moving-average/time-series-momentum timing rules is data-mining-fragile; the honest expectation is drawdown reduction, not return enhancement."},{"id":"fast_alarm","name":"Leg 3 — Fast alarm (VIX term structure, VRP, SKEW)","references":["Bollerslev, T. & Todorov, V. (2011). 'Tails, Fears, and Risk Premia.' The Journal of Finance 66(6): 2165-2211. doi:10.1111/j.1540-6261.2011.01695.x"],"caveat":"Bilello's analysis shows SKEW in its top 5% (>~131) has had ~zero forward predictive value -> LABEL: COINCIDENT CONTEXT ONLY."},{"id":"action_bands","name":"Action-band thresholds (<45 hold / 45-60 trim / >=60 de-risk)","references":["Alessi, L. & Detken, C. (2011). 'Quasi Real Time Early Warning Indicators for Costly Asset Price Boom/Bust Cycles: A Role for Global Liquidity.' European Journal of Political Economy 27(3): 520-533. doi:10.1016/j.ejpoleco.2011.01.003","Estrada, J. (2008). 'Black Swans and Market Timing: How Not to Generate Alpha.' The Journal of Investing 17(3): 20-34.","Estrada, J. (2009). 'Black Swans, Market Timing and the Dow.' Applied Economics Letters 16(11): 1117-1121. doi:10.1080/13504850701335517 (DJIA 1900-2006; missing the 10 best days => ~65% less terminal wealth).","Cederburg, S., O'Doherty, M. S., Wang, F. & Yan, X. (2020). 'On the Performance of Volatility-Managed Portfolios.' Journal of Financial Economics 138(1): 95-117. doi:10.1016/j.jfineco.2020.04.015"],"caveat":"Cederburg, O'Doherty, Wang & Yan (2020) — any de-risking rule may destroy value net of costs."}],"science_audit":{"flags":[{"id":"coverage-D","severity":"error","category":"block-degraded","title":"Block D coverage degraded","detail":"More than 1/3 of Block D's nominal weight is dropped or stale (coverage 0.45); the action band is suppressed.","ref":"coverage gate"},{"id":"source-breadth","severity":"error","category":"source-pull-failed","title":"Data source failed: S&P 500 constituents (Wikipedia) + Twelve Data closes","detail":"Last pull failed for: breadth. Feeds D1 breadth.","ref":"source breadth"},{"id":"source-lppls","severity":"error","category":"source-pull-failed","title":"Data source failed: LPPLS fit (lppls==0.6.24 on QQQ proxy)","detail":"Last pull failed for: lppls. Feeds D4 LPPLS.","ref":"source lppls"},{"id":"citation-chen","severity":"warn","category":"citation-unverified","title":"Framework citation could not be independently verified","detail":"Chen, Chen & Huang (2026, arXiv:2604.25826) — the basis for the GSADF CONTESTED flag — could not be confirmed via search; embedded as given, verify before publishing.","ref":"references.UNVERIFIED_CITATIONS"},{"id":"citation-basele","severity":"warn","category":"citation-unverified","title":"Framework citation could not be independently verified","detail":"Basele, Phillips & Shi (2025, Cowles d2430) could not be confirmed via search.","ref":"references.UNVERIFIED_CITATIONS"},{"id":"citation-bis","severity":"warn","category":"citation-unverified","title":"Framework citation could not be independently verified","detail":"BIS (2026) Annual Economic Report (D3 buildout context) could not be confirmed.","ref":"references.UNVERIFIED_CITATIONS"},{"id":"gsadf-contested","severity":"warn","category":"contested-method","title":"GSADF is permanently CONTESTED","detail":"Chen-Chen-Huang (2026) show GSADF-type tests spuriously reject the no-bubble null 93-100% of the time under hump-shaped GPT fundamentals; S4 is capped at 0.25 and carries a low weight.","ref":"indicator s4"},{"id":"dropped-d1","severity":"warn","category":"indicator-dropped","title":"D1 dropped this run","detail":"breadth unavailable; dropped, Block D renormalized","ref":"indicator d1"},{"id":"dropped-d4","severity":"warn","category":"indicator-dropped","title":"D4 dropped this run","detail":"LPPLS dropped (LPPLS subprocess failed rc=1: r_conditions_config(\n                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/usr/local/lib/python3.12/site-packages/lppls/lppls.py\", line 55, in _resolve_filter_conditions_config\n    raise TypeError(\nTypeError: filter_conditions_config must ); Block D renormalized","ref":"indicator d4"},{"id":"judgment","severity":"warn","category":"llm-degraded","title":"Judgment call degraded","detail":"Anthropic call failed (BadRequestError); the stored text may be stale or absent.","ref":"engine.judgment"},{"id":"fred-truncation","severity":"info","category":"data-limitation","title":"HY-OAS history is only as deep as accrued locally","detail":"FRED truncated BAMLH0A0HYM2 to a rolling 3-year window (Apr 2026); the S5 percentile deepens over time as the service persists its own daily history.","ref":"indicator s5"},{"id":"alphavantage-unadjusted","severity":"info","category":"data-quality","title":"Alpha Vantage tier serves UNADJUSTED prices","detail":"If the price chain falls through to Alpha Vantage, closes are split/dividend unadjusted (acceptable for short-window ETF math; flagged in provenance).","ref":"sources.prices"},{"id":"index-proxy","severity":"info","category":"data-substitution","title":"Stock indices served via ETF proxies","detail":"No free data tier serves raw index levels, so Nasdaq-100 uses QQQ and S&P 500 uses SPY. GSADF and LPPLS therefore run on the QQQ proxy. Enable TWELVE_DATA_INDICES on the Grow plan for raw GSPC/NDX.","ref":"sources.prices"},{"id":"alpha-range-deviation","severity":"info","category":"documented-deviation","title":"Monte Carlo alpha range deviates from the written spec","detail":"Spec 5.3 states alpha ~ U(0.40,0.60), but that cannot reproduce the spec 5.5 golden IQR (34,47); the implementation uses U(0.25,0.75), which reproduces ALL published fixture outputs. Documented at ALPHA_RANGE in engine/montecarlo.py.","ref":"engine.montecarlo.ALPHA_RANGE"},{"id":"n4-calibration","severity":"info","category":"epistemic","title":"Uncalibratable by construction (n ~= 4)","detail":"The reference class of comparable US equity manias is ~4 events {1929,2000,2007,2021}; the headline is structured expert judgment, NOT a probability.","ref":"epistemic caveat 2"},{"id":"grounding-s2","severity":"info","category":"grounding","title":"S2 Concentration: literature-adjacent","detail":"This indicator's grounding is 'literature-adjacent', a weaker epistemic status than literature-grounded.","ref":"indicator s2"},{"id":"grounding-s4","severity":"info","category":"grounding","title":"S4 GSADF Explosiveness: contested","detail":"This indicator's grounding is 'contested', a weaker epistemic status than literature-grounded.","ref":"indicator s4"},{"id":"grounding-d1","severity":"info","category":"grounding","title":"D1 Breadth: judgmental","detail":"This indicator's grounding is 'judgmental', a weaker epistemic status than literature-grounded.","ref":"indicator d1"},{"id":"grounding-d2","severity":"info","category":"grounding","title":"D2 Margin-Debt Rollover: judgmental","detail":"This indicator's grounding is 'judgmental', a weaker epistemic status than literature-grounded.","ref":"indicator d2"},{"id":"judgmental-anchors","severity":"info","category":"judgmental-parameter","title":"Several anchors/weights are expert-judgmental, not estimated","detail":"S2 concentration lo/hi, D1 breadth lo/hi and weight, and the alpha split have no labeled-crash-dataset calibration; see the annual PSS sensitivity script.","ref":"indicators s2,d1"},{"id":"stooq-pow","severity":"info","category":"source-degraded","title":"Stooq disabled (JS proof-of-work anti-bot gate)","detail":"Stooq's CSV endpoint now serves a SHA-256 proof-of-work challenge; it is off by default and the price layer requires Tiingo/Twelve Data keys.","ref":"sources.stooq"}],"counts":{"error":3,"warn":7,"info":11}},"example":{"data":{"headline_median":40,"iqr":[34,47],"band_5_95":[28,55],"point_score":40.35,"action_band":"hold","override_fired":false,"red_flag_count":0,"red_flag_detail":{"gsadf_explosive_noncontested":false,"semi_runup_ge_150pp":false,"hy_oas_widen_gt_100bps":false,"breadth_lt_50_near_ath":false},"block_S":{"value":0.711,"indicators":{"s1":{"value":41.6,"sub_score":0.92,"weight":0.33,"grounding":"literature-grounded","stale":false}}},"block_D":{"value":0.229,"indicators":{"d1":{"value":56.0,"sub_score":0.543,"weight":0.35,"grounding":"judgmental","note":"path=B_constituent_compute"}}},"V":{"state":"contango","multiplier":1.0,"label":"lagging confirmation"},"trend_states":{"SPY":{"faber_10mo":"IN","sma200":"IN"},"QQQ":{"faber_10mo":"IN","sma200":"IN"}},"fast_alarm":{"term_structure":"contango","vrp":12.4,"vrp_flag":false,"skew":128,"skew_label":"coincident context only"},"judgment_call":{"text":"Rich valuation (CAPE ~42) is the dominant driver; broad breadth near 56% above the 200-day is the biggest counter-signal.","stale":false,"error_class":null}},"meta":{"computed_at":"2026-07-11T06:00:03+00:00","service_version":"3.1.0","coverage":{"S":{"coverage":1.0,"degraded":false},"D":{"coverage":1.0,"degraded":false},"degraded":false},"disclaimer":"Research, not advice.","epistemic_caveats":["NOT-A-PROBABILITY: 0-100 regime heuristic = structured expert judgment; uncalibrated.","... (5 verbatim guardrails)"]}},"falsification_criteria":["Score < 30 through a > 30% S&P drawdown beginning within 3 months -> construct falsified.","Score > 60 sustained through 24 months of > 10% annualized gains without a > 15% drawdown -> falsified.","Override fires and no > 20% drawdown within 12 months -> override falsified."],"changelog":[{"version":"v1","score":"33","notes":"linear-additive aggregation (fully compensatory); stale concentration 40.8%; HY-OAS sign inverted; LPPLS neutral placeholder."},{"version":"v2","score":"28","notes":"data fixes (concentration, HY-OAS sign, LPPLS); still fully compensatory."},{"version":"v3","score":"~40, IQR 34-47","notes":"two-block geometric aggregation + non-compensatory override + Monte Carlo median. The v2->v3 rise is the aggregation fix (partial compensability now punishes imbalance), NOT market deterioration."},{"version":"v3.0.1","score":"unchanged methodology","notes":"first-live-run bugfixes: (1) Stooq pipeline hardened — typed unavailable/CAPTCHA/limit errors, SQLite series + breadth caches with SLA reuse, >=2s pacing, retry-once-after-60s, partial breadth coverage published with note instead of dropping; (2) FINRA parser sorts by date (file is newest-first; a naive read produced a -22% YoY across the 1997 series start) + >90d cached-reading guard and 60d rollover-assertability guard; (3) GSADF data-missing now floors at the contested/stale 0.25, not the tested-not-explosive 0.05; R/exuber self-check surfaced in /readyz; (4) judgment call failures are machine-detectable (text null + error_class) with SDK param fallback; (5) LPPLS requires >=500 closes, bounded workers, 10-min hard timeout, and drop notes carry the concrete cause; (6) timezone-aware computed_at, S5 history-depth note, SKEW raw-value logging, renormalization regression test."}],"epistemic_caveats":["NOT-A-PROBABILITY: 0-100 regime heuristic = structured expert judgment; uncalibrated.","n≈4 CALIBRATION IMPOSSIBILITY: reference class {1929,2000,2007,2021}.","REFERENCE-CLASS CAVEAT: may be rational GPT repricing (Chen-Chen-Huang 2026).","NOMINAL≠EFFECTIVE WEIGHTS: see annual PSS sensitivity script.","Service never returns 500 on upstream failure: fallback or drop+renormalize."],"disclaimer":"**bubblegauge is a research instrument, not investment advice.** The headline is a 0–100 regime heuristic produced by structured expert judgment; it is **uncalibrated and is not a probability**. The reference class of comparable US equity manias is roughly four events {1929, 2000, 2007, 2021}, so no honest probability calibration is possible. The current episode may be rational general-purpose-technology repricing rather than a bubble. Nothing here is a recommendation to buy, sell, or hold any security. Any de-risking rule may destroy value net of costs. Use at your own risk."}