{"schemaVersion":1,"kind":"daily-thesis","asOf":"2026-07-22","sourceSchemaVersion":3,"sourceUrl":"/data/daily-thesis.json","methodologyUrl":"/methodology/#daily-thesis","integrity":{"algorithm":"sha256","canonicalization":"SHA-256 of UTF-8 JSON.stringify(payload)","payloadSha256":"8c7610ef8d0e05663178f31af389d45df0e0e107a20feb3c71b05837aee448be"},"payload":{"schemaVersion":3,"asOf":"2026-07-22","temporalCoverage":{"publicationDate":"2026-07-22","latestCompleteObservationDate":"2026-07-20","latestConstituentObservationDate":"2026-07-22","capturedAt":1784750828},"methodologyUrl":"/methodology/#daily-thesis","anomaly":{"dimension":"creditHygLqdRatio","componentId":"creditHygLqdRatio","label":"HYG/LQD","value":0.745477,"unit":"ratio","zScore":2.742532,"absoluteZScore":2.742532,"percentileRank":100,"sampleSize":252,"observationDate":"2026-07-22","direction":"risk_on","sentence":"HYG/LQD printed 0.745477, 2.74 standard deviations above its prior 252-observation mean, the largest absolute state-vector z-score.","source":"Yahoo Finance adjusted closes","sourceUrl":"https://finance.yahoo.com/","formula":"HYG adjusted close divided by LQD adjusted close.","methodologyUrl":"/methodology/#confluence-engine"},"confluence":{"thresholdAbsoluteZ":0.5,"rule":"Transform each mapped component z-score into risk direction and count absolute component z-scores below 0.50 as no vote. Cross-asset COT has no single risk-direction mapping and receives no vote.","sentence":"0 components agree with the risk-on direction, 3 disagree, and 6 have no vote.","agree":[],"disagree":[{"componentId":"curve5s30sBps","label":"5s30s","representativeDimension":"curve5s30sBps","representativeLabel":"5s30s Treasury curve","componentZScore":-1.750851,"riskAdjustedZScore":-1.750851,"dimensionsUsed":1,"observationDate":"2026-07-20","vote":"disagree","source":"US Treasury DGS30 minus DGS5 via FRED","sourceUrl":"https://fred.stlouisfed.org/series/DGS30","formula":"30-year Treasury yield minus 5-year Treasury yield, multiplied by 100.","methodologyUrl":"/methodology/#confluence-engine"},{"componentId":"curve2s10sBps","label":"2s10s","representativeDimension":"curve2s10sBps","representativeLabel":"2s10s Treasury curve","componentZScore":-1.736703,"riskAdjustedZScore":-1.736703,"dimensionsUsed":1,"observationDate":"2026-07-21","vote":"disagree","source":"US Treasury spread via FRED","sourceUrl":"https://fred.stlouisfed.org/series/T10Y2Y","formula":"10-year Treasury yield minus 2-year Treasury yield, multiplied by 100.","methodologyUrl":"/methodology/#confluence-engine"},{"componentId":"dollarIndex","label":"Broad dollar","representativeDimension":"dollarIndex","representativeLabel":"Broad dollar index","componentZScore":0.593254,"riskAdjustedZScore":-0.593254,"dimensionsUsed":1,"observationDate":"2026-07-22","vote":"disagree","source":"Federal Reserve via FRED","sourceUrl":"https://fred.stlouisfed.org/series/DTWEXBGS","formula":"Federal Reserve nominal broad US dollar index level.","methodologyUrl":"/methodology/#confluence-engine"}],"noVote":[{"componentId":"breadth","label":"Breadth","representativeDimension":"breadth","representativeLabel":"RSP/SPY breadth","componentZScore":0.381772,"riskAdjustedZScore":0.381772,"dimensionsUsed":1,"observationDate":"2026-07-22","vote":"no_vote","source":"Yahoo Finance adjusted closes","sourceUrl":"https://finance.yahoo.com/","formula":"RSP/SPY ratio deviation from its trailing 90-session mean, multiplied by 100.","methodologyUrl":"/methodology/#confluence-engine"},{"componentId":"regimeComposite","label":"Regime composite","representativeDimension":"regimeComposite","representativeLabel":"Regime composite","componentZScore":0.356297,"riskAdjustedZScore":0.356297,"dimensionsUsed":1,"observationDate":"2026-07-22","vote":"no_vote","source":"FRED and Yahoo Finance","sourceUrl":"https://fred.stlouisfed.org/","formula":"Equal-weight mean of the finite volatility, breadth, credit, 2s10s, and dollar leg scores.","methodologyUrl":"/methodology/#confluence-engine"},{"componentId":"vixTermStructurePct","label":"VIX term structure slope","representativeDimension":"vixTermStructurePct","representativeLabel":"VIX3M/VIX slope","componentZScore":0.034208,"riskAdjustedZScore":0.034208,"dimensionsUsed":1,"observationDate":"2026-07-21","vote":"no_vote","source":"CBOE indices via FRED","sourceUrl":"https://fred.stlouisfed.org/","formula":"(CBOE 3-month volatility index divided by VIX minus 1) multiplied by 100.","methodologyUrl":"/methodology/#confluence-engine"},{"componentId":"netGex","label":"Net GEX","representativeDimension":null,"representativeLabel":null,"componentZScore":null,"riskAdjustedZScore":null,"dimensionsUsed":0,"observationDate":null,"vote":"no_vote","source":"CBOE delayed options","sourceUrl":"https://www.cboe.com/delayed_quotes/","formula":"Sum of gamma times open interest times 100 times spot squared times 1%, with calls positive and puts negative.","methodologyUrl":"/methodology/#confluence-engine"},{"componentId":"maxPainDistancePct","label":"Max pain distance","representativeDimension":null,"representativeLabel":null,"componentZScore":null,"riskAdjustedZScore":null,"dimensionsUsed":0,"observationDate":null,"vote":"no_vote","source":"CBOE delayed options","sourceUrl":"https://www.cboe.com/delayed_quotes/","formula":"(Front-expiry max-pain strike minus spot) divided by spot, multiplied by 100.","methodologyUrl":"/methodology/#confluence-engine"},{"componentId":"cotCommercialPercentile","label":"COT commercial percentile","representativeDimension":"cotCommercialPercentile.YM","representativeLabel":"COT commercial percentile (YM)","componentZScore":-0.033915,"riskAdjustedZScore":null,"dimensionsUsed":16,"observationDate":"2026-07-14","vote":"no_vote","source":"CFTC Legacy Futures-Only","sourceUrl":"https://publicreporting.cftc.gov/resource/6dca-aqww.json","formula":"Commercial net position percentile within the trailing 52 published weekly observations, computed per contract.","methodologyUrl":"/methodology/#confluence-engine"}]},"analog":{"sentence":"Across n=50 analogs, SPX +21-session returns had a +0.89% median, 58.0% positive hit rate, and -2.83% worst decile; ES had a +0.98% median, 58.0% positive hit rate, and -2.95% worst decile.","sampleSize":50,"methodologyUrl":"/methodology/#analog-engine","artifactUrl":"/data/analog-engine.json","formula":"Cosine distance over shared finite dimensions after each date is standardized against only its prior 252 sessions.","distributions":{"SPX":{"oneDay":{"n":50,"hitRate":58,"hitRateInterval95":[44.233442,70.624997],"median":0.069488,"worstDecile":-1.342795,"minimum":-1.672184,"maximum":1.652839,"histogram":[{"lower":-1.672184,"upper":-1.339682,"count":5},{"lower":-1.339682,"upper":-1.007179,"count":3},{"lower":-1.007179,"upper":-0.674677,"count":2},{"lower":-0.674677,"upper":-0.342175,"count":4},{"lower":-0.342175,"upper":-0.009672,"count":6},{"lower":-0.009672,"upper":0.32283,"count":13},{"lower":0.32283,"upper":0.655332,"count":6},{"lower":0.655332,"upper":0.987834,"count":5},{"lower":0.987834,"upper":1.320337,"count":4},{"lower":1.320337,"upper":1.652839,"count":2}]},"fiveDay":{"n":50,"hitRate":58,"hitRateInterval95":[44.233442,70.624997],"median":0.310001,"worstDecile":-2.099766,"minimum":-4.770417,"maximum":4.150291,"histogram":[{"lower":-4.770417,"upper":-3.878346,"count":2},{"lower":-3.878346,"upper":-2.986275,"count":1},{"lower":-2.986275,"upper":-2.094205,"count":2},{"lower":-2.094205,"upper":-1.202134,"count":7},{"lower":-1.202134,"upper":-0.310063,"count":6},{"lower":-0.310063,"upper":0.582008,"count":13},{"lower":0.582008,"upper":1.474079,"count":8},{"lower":1.474079,"upper":2.366149,"count":8},{"lower":2.366149,"upper":3.25822,"count":2},{"lower":3.25822,"upper":4.150291,"count":1}]},"twentyOneDay":{"n":50,"hitRate":58,"hitRateInterval95":[44.233442,70.624997],"median":0.889404,"worstDecile":-2.826696,"minimum":-11.185885,"maximum":10.757029,"histogram":[{"lower":-11.185885,"upper":-8.991594,"count":1},{"lower":-8.991594,"upper":-6.797302,"count":0},{"lower":-6.797302,"upper":-4.603011,"count":2},{"lower":-4.603011,"upper":-2.408719,"count":3},{"lower":-2.408719,"upper":-0.214428,"count":14},{"lower":-0.214428,"upper":1.979863,"count":18},{"lower":1.979863,"upper":4.174155,"count":5},{"lower":4.174155,"upper":6.368446,"count":3},{"lower":6.368446,"upper":8.562738,"count":2},{"lower":8.562738,"upper":10.757029,"count":2}]}},"ES":{"oneDay":{"n":50,"hitRate":62,"hitRateInterval95":[48.150447,74.137211],"median":0.089193,"worstDecile":-1.155384,"minimum":-1.727969,"maximum":1.69805,"histogram":[{"lower":-1.727969,"upper":-1.385367,"count":2},{"lower":-1.385367,"upper":-1.042765,"count":5},{"lower":-1.042765,"upper":-0.700163,"count":1},{"lower":-0.700163,"upper":-0.357561,"count":3},{"lower":-0.357561,"upper":-0.01496,"count":8},{"lower":-0.01496,"upper":0.327642,"count":15},{"lower":0.327642,"upper":0.670244,"count":7},{"lower":0.670244,"upper":1.012846,"count":3},{"lower":1.012846,"upper":1.355448,"count":4},{"lower":1.355448,"upper":1.69805,"count":2}]},"fiveDay":{"n":50,"hitRate":58,"hitRateInterval95":[44.233442,70.624997],"median":0.269438,"worstDecile":-2.140197,"minimum":-4.819227,"maximum":4.085852,"histogram":[{"lower":-4.819227,"upper":-3.928719,"count":2},{"lower":-3.928719,"upper":-3.038211,"count":1},{"lower":-3.038211,"upper":-2.147703,"count":2},{"lower":-2.147703,"upper":-1.257195,"count":6},{"lower":-1.257195,"upper":-0.366687,"count":7},{"lower":-0.366687,"upper":0.52382,"count":11},{"lower":0.52382,"upper":1.414328,"count":9},{"lower":1.414328,"upper":2.304836,"count":9},{"lower":2.304836,"upper":3.195344,"count":1},{"lower":3.195344,"upper":4.085852,"count":2}]},"twentyOneDay":{"n":50,"hitRate":58,"hitRateInterval95":[44.233442,70.624997],"median":0.984575,"worstDecile":-2.95162,"minimum":-10.867294,"maximum":10.436782,"histogram":[{"lower":-10.867294,"upper":-8.736886,"count":1},{"lower":-8.736886,"upper":-6.606479,"count":0},{"lower":-6.606479,"upper":-4.476071,"count":1},{"lower":-4.476071,"upper":-2.345664,"count":4},{"lower":-2.345664,"upper":-0.215256,"count":14},{"lower":-0.215256,"upper":1.915152,"count":16},{"lower":1.915152,"upper":4.045559,"count":7},{"lower":4.045559,"upper":6.175967,"count":3},{"lower":6.175967,"upper":8.306374,"count":2},{"lower":8.306374,"upper":10.436782,"count":2}]}}}},"falsifier":{"sentence":"The read is invalid if HYG/LQD records at or below 0.725583, the z=0.00 level from the prior n=252 observations, on its next daily print.","operator":"at_or_below","thresholdValue":0.725583,"thresholdZScore":0,"currentValue":0.745477,"unit":"ratio","cadence":"daily","observationCount":252,"evidence":{"source":"Yahoo Finance adjusted closes","sourceUrl":"https://finance.yahoo.com/","formula":"HYG adjusted close divided by LQD adjusted close.","methodologyUrl":"/methodology/#confluence-engine"}},"comparison":{"status":"available","previousAsOf":"2026-07-17","previousArtifactUrl":"/data/machine/v1/archive/2026-07-17/daily-thesis.2c3114324f172feeb9bcfc4825e34358e9178d509ef72dcb3d142a7ff1c5c4d0.json","currentArtifactUrl":"/data/daily-thesis.json","summary":"6 observable changes since the prior completed thesis.","changes":[{"id":"anomaly-z","kind":"anomaly","label":"HYG/LQD moved","detail":"The standardized reading moved from +2.15 sigma to +2.74 sigma."},{"id":"deactivation-breadth","kind":"deactivation","label":"Breadth lost its vote","detail":"The component moved below the published vote threshold or lost sufficient coverage."},{"id":"deactivation-regimeComposite","kind":"deactivation","label":"Regime composite lost its vote","detail":"The component moved below the published vote threshold or lost sufficient coverage."},{"id":"agreement-counts","kind":"agreement","label":"Evidence balance changed","detail":"2 agree, 3 disagree, 4 no vote became 0 agree, 3 disagree, 6 no vote."},{"id":"falsifier-level","kind":"falsifier","label":"Invalidation level changed","detail":"The threshold moved from 0.725445 to 0.725583 ratio."},{"id":"coverage-date","kind":"coverage","label":"Complete observation window advanced","detail":"2026-07-16 became 2026-07-20."}]},"downloads":{"thesis":"/data/daily-thesis.json","confluence":"/data/confluence-vector.json","analogs":"/data/analog-engine.json","falsification":"/data/falsification-ledger.json"}}}
