{"schemaVersion":1,"kind":"analogs","asOf":"2026-07-17","sourceSchemaVersion":1,"sourceUrl":"/data/analog-engine.json","methodologyUrl":"/methodology/#analog-engine","integrity":{"algorithm":"sha256","canonicalization":"SHA-256 of UTF-8 JSON.stringify(payload)","payloadSha256":"f790f783494776b6d49299b2ef447d40e7c54b11f94fe6c1bff156d14e1242b6"},"payload":{"schemaVersion":1,"asOf":"2026-07-17","label":"Conditional history, not prediction.","methodologyUrl":"/methodology/#analog-engine","metric":{"id":"rolling-cosine","formula":"Cosine distance over shared finite dimensions after each date is standardized against only its prior 252 sessions."},"parameters":{"requestedAnalogs":50,"returnedAnalogs":50,"standardizationLookback":252,"minStandardizationSample":60,"minSharedDimensions":18,"separationSessions":5},"current":{"date":"2026-07-17","standardizedDimensions":23,"usableDimensions":["regimeComposite","vixTermStructurePct","curve2s10sBps","curve5s30sBps","cotCommercialPercentile.ES","cotCommercialPercentile.NQ","cotCommercialPercentile.YM","cotCommercialPercentile.RTY","cotCommercialPercentile.GC","cotCommercialPercentile.SI","cotCommercialPercentile.HG","cotCommercialPercentile.CL","cotCommercialPercentile.NG","cotCommercialPercentile.ZB","cotCommercialPercentile.ZN","cotCommercialPercentile.ZF","cotCommercialPercentile.EURUSD","cotCommercialPercentile.GBPUSD","cotCommercialPercentile.USDJPY","cotCommercialPercentile.BTC","creditHygLqdRatio","dollarIndex","breadth"],"excludedDimensions":["netGex","maxPainDistancePct"]},"analogs":[{"date":"2026-06-16","distance":0.22474,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.214828,"fiveDay":-2.038647,"twentyOneDay":-0.714388},"ES":{"oneDay":-1.250249,"fiveDay":-1.200372,"twentyOneDay":-0.315887}}},{"date":"2026-05-05","distance":0.30286,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":1.458833,"fiveDay":1.952548,"twentyOneDay":4.478303},"ES":{"oneDay":1.403136,"fiveDay":1.910872,"twentyOneDay":4.305465}}},{"date":"2026-06-09","distance":0.329598,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.619945,"fiveDay":1.688183,"twentyOneDay":2.555153},"ES":{"oneDay":-1.545433,"fiveDay":1.700991,"twentyOneDay":3.077339}}},{"date":"2026-04-06","distance":0.333459,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.075925,"fiveDay":4.150291,"twentyOneDay":9.791391},"ES":{"oneDay":0.086453,"fiveDay":4.085852,"twentyOneDay":9.566231}}},{"date":"2026-04-23","distance":0.341924,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.797369,"fiveDay":1.415366,"twentyOneDay":5.135759},"ES":{"oneDay":0.717435,"fiveDay":1.403374,"twentyOneDay":4.864562}}},{"date":"2026-05-22","distance":0.368694,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.610826,"fiveDay":1.692517,"twentyOneDay":-1.542122},"ES":{"oneDay":0.61407,"fiveDay":1.631958,"twentyOneDay":-0.837672}}},{"date":"2016-09-08","distance":0.370195,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-2.452207,"fiveDay":-1.560539,"twentyOneDay":-1.263469},"ES":{"oneDay":-2.514351,"fiveDay":-1.492537,"twentyOneDay":-1.423651}}},{"date":"2026-05-12","distance":0.380223,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.584925,"fiveDay":-0.639783,"twentyOneDay":-0.08999},"ES":{"oneDay":0.579008,"fiveDay":-0.653067,"twentyOneDay":-0.410691}}},{"date":"2016-09-21","distance":0.38907,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.649978,"fiveDay":0.381394,"twentyOneDay":-1.00688},"ES":{"oneDay":0.556522,"fiveDay":0.324638,"twentyOneDay":-0.997101}}},{"date":"2026-04-13","distance":0.405113,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":1.178287,"fiveDay":3.236888,"twentyOneDay":7.474612},"ES":{"oneDay":1.1845,"fiveDay":3.253765,"twentyOneDay":7.276733}}},{"date":"2016-08-30","distance":0.406898,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.237586,"fiveDay":0.461362,"twentyOneDay":-1.148385},"ES":{"oneDay":-0.264337,"fiveDay":0.425238,"twentyOneDay":-1.229744}}},{"date":"2023-08-30","distance":0.410703,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-0.159694,"fiveDay":-1.411557,"twentyOneDay":-5.02385},"ES":{"oneDay":-0.182351,"fiveDay":-1.503012,"twentyOneDay":-4.392993}}},{"date":"2026-06-02","distance":0.417885,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-0.737204,"fiveDay":-2.932146,"twentyOneDay":-1.662854},"ES":{"oneDay":-0.682079,"fiveDay":-3.030005,"twentyOneDay":-1.252664}}},{"date":"2026-03-26","distance":0.440463,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.672184,"fiveDay":1.62926,"twentyOneDay":10.757029},"ES":{"oneDay":-1.727969,"fiveDay":1.490421,"twentyOneDay":10.436782}}},{"date":"2014-12-30","distance":0.446941,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-1.031086,"fiveDay":-2.617351,"twentyOneDay":-4.103161},"ES":{"oneDay":-1.16769,"fiveDay":-2.756711,"twentyOneDay":-4.249428}}},{"date":"2016-08-22","distance":0.456663,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.195177,"fiveDay":-0.103545,"twentyOneDay":-0.89432},"ES":{"oneDay":0.1719,"fiveDay":-0.10314,"twentyOneDay":-1.15746}}},{"date":"2016-10-03","distance":0.465013,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.495556,"fiveDay":0.113824,"twentyOneDay":-2.289468},"ES":{"oneDay":-0.394752,"fiveDay":-0.870777,"twentyOneDay":-2.832927}}},{"date":"2018-04-27","distance":0.466709,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":-0.818749,"fiveDay":-0.243079,"twentyOneDay":0.747224},"ES":{"oneDay":-0.917088,"fiveDay":-0.318173,"twentyOneDay":0.776717}}},{"date":"2023-09-18","distance":0.481782,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-0.215101,"fiveDay":-2.606693,"twentyOneDay":-1.803729},"ES":{"oneDay":-0.25547,"fiveDay":-2.726869,"twentyOneDay":-2.215928}}},{"date":"2016-07-12","distance":0.481901,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.013477,"fiveDay":0.540863,"twentyOneDay":1.084971},"ES":{"oneDay":0.011651,"fiveDay":0.605849,"twentyOneDay":1.258301}}},{"date":"2015-01-09","distance":0.485646,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.809369,"fiveDay":-1.241681,"twentyOneDay":1.162946},"ES":{"oneDay":-0.626459,"fiveDay":-1.093232,"twentyOneDay":1.326618}}},{"date":"2016-05-24","distance":0.48738,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.697474,"fiveDay":1.120874,"twentyOneDay":1.794746},"ES":{"oneDay":0.590361,"fiveDay":1.108434,"twentyOneDay":1.481928}}},{"date":"2015-02-13","distance":0.487804,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.159757,"fiveDay":0.604196,"twentyOneDay":-1.082979},"ES":{"oneDay":0.119417,"fiveDay":0.632911,"twentyOneDay":-0.907571}}},{"date":"2015-02-06","distance":0.493114,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.424719,"fiveDay":2.019977,"twentyOneDay":-0.550236},"ES":{"oneDay":-0.511447,"fiveDay":1.972723,"twentyOneDay":-0.535801}}},{"date":"2017-11-20","distance":0.496264,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.654114,"fiveDay":1.738874,"twentyOneDay":3.760838},"ES":{"oneDay":0.551898,"fiveDay":1.704105,"twentyOneDay":3.853602}}},{"date":"2014-12-19","distance":0.496464,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.381046,"fiveDay":0.962025,"twentyOneDay":-0.362205},"ES":{"oneDay":0.363196,"fiveDay":1.004843,"twentyOneDay":-0.411622}}},{"date":"2018-05-04","distance":0.500402,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.345795,"fiveDay":2.414191,"twentyOneDay":3.205658},"ES":{"oneDay":0.262861,"fiveDay":2.497184,"twentyOneDay":3.32332}}},{"date":"2026-03-19","distance":0.510817,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.513818,"fiveDay":-1.957622,"twentyOneDay":7.608426},"ES":{"oneDay":-0.221207,"fiveDay":-1.274729,"twentyOneDay":8.151454}}},{"date":"2023-09-08","distance":0.511642,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.672345,"fiveDay":-0.160862,"twentyOneDay":-2.733154},"ES":{"oneDay":0.638763,"fiveDay":0.671714,"twentyOneDay":-2.084384}}},{"date":"2015-01-26","distance":0.516307,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-1.338786,"fiveDay":-1.761717,"twentyOneDay":2.759725},"ES":{"oneDay":-1.144388,"fiveDay":-1.777453,"twentyOneDay":2.763574}}},{"date":"2016-07-22","distance":0.522609,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.301148,"fiveDay":-0.065743,"twentyOneDay":0.349874},"ES":{"oneDay":-0.242215,"fiveDay":0.034602,"twentyOneDay":0.645905}}},{"date":"2016-10-21","distance":0.523662,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.474984,"fiveDay":-0.688879,"twentyOneDay":2.663043},"ES":{"oneDay":0.445017,"fiveDay":-0.515283,"twentyOneDay":3.068275}}},{"date":"2014-06-20","distance":0.527381,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.013246,"fiveDay":-0.097308,"twentyOneDay":1.052542},"ES":{"oneDay":-0.762195,"fiveDay":-0.813008,"twentyOneDay":0.355691}}},{"date":"2023-08-14","distance":0.527574,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.155091,"fiveDay":-2.00347,"twentyOneDay":-0.496251},"ES":{"oneDay":-1.154017,"fiveDay":-2.075011,"twentyOneDay":-0.826676}}},{"date":"2016-07-01","distance":0.529757,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.684748,"fiveDay":1.626761,"twentyOneDay":2.571629},"ES":{"oneDay":-0.644007,"fiveDay":1.621944,"twentyOneDay":2.695289}}},{"date":"2016-08-15","distance":0.530661,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.547908,"fiveDay":-0.342899,"twentyOneDay":-2.939519},"ES":{"oneDay":-0.423147,"fiveDay":-0.205855,"twentyOneDay":-3.007777}}},{"date":"2016-08-08","distance":0.536079,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.038979,"fiveDay":0.424598,"twentyOneDay":0.241645},"ES":{"oneDay":0.091933,"fiveDay":0.482648,"twentyOneDay":0.413698}}},{"date":"2023-08-23","distance":0.539718,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.345797,"fiveDay":1.777732,"twentyOneDay":-2.613829},"ES":{"oneDay":-1.371711,"fiveDay":1.737126,"twentyOneDay":-1.933888}}},{"date":"2023-03-03","distance":0.539737,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.068717,"fiveDay":-4.549337,"twentyOneDay":1.949503},"ES":{"oneDay":0.067905,"fiveDay":-4.617569,"twentyOneDay":2.56806}}},{"date":"2018-05-22","distance":0.543754,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.324841,"fiveDay":-0.015781,"twentyOneDay":0.929368},"ES":{"oneDay":0.174248,"fiveDay":-0.055026,"twentyOneDay":0.97212}}},{"date":"2016-06-02","distance":0.553123,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.291181,"fiveDay":0.485449,"twentyOneDay":-0.109728},"ES":{"oneDay":-0.285205,"fiveDay":0.499109,"twentyOneDay":-0.356506}}},{"date":"2022-01-07","distance":0.555971,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-0.144103,"fiveDay":-0.303177,"twentyOneDay":-3.32454},"ES":{"oneDay":-0.11783,"fiveDay":-0.278507,"twentyOneDay":-3.326014}}},{"date":"2023-07-21","distance":0.55683,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.403415,"fiveDay":1.011612,"twentyOneDay":-3.010573},"ES":{"oneDay":0.410756,"fiveDay":0.914617,"twentyOneDay":-3.335341}}},{"date":"2014-11-11","distance":0.561083,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.070112,"fiveDay":0.594211,"twentyOneDay":-0.213274},"ES":{"oneDay":-0.024552,"fiveDay":0.589246,"twentyOneDay":-0.270071}}},{"date":"2012-01-25","distance":0.564311,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.575389,"fiveDay":-0.148567,"twentyOneDay":2.992318},"ES":{"oneDay":-0.378716,"fiveDay":-0.037872,"twentyOneDay":3.256959}}},{"date":"2015-01-16","distance":0.564352,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.154995,"fiveDay":1.865389,"twentyOneDay":3.974403},"ES":{"oneDay":0.186289,"fiveDay":2.011923,"twentyOneDay":4.098361}}},{"date":"2018-06-04","distance":0.566525,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.070259,"fiveDay":1.278906,"twentyOneDay":-1.225036},"ES":{"oneDay":0.218539,"fiveDay":1.365871,"twentyOneDay":-1.174649}}},{"date":"2014-07-03","distance":0.567933,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.392352,"fiveDay":-0.900052,"twentyOneDay":-2.339529},"ES":{"oneDay":-0.328698,"fiveDay":-0.758534,"twentyOneDay":-2.300885}}},{"date":"2018-06-11","distance":0.569819,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.174339,"fiveDay":-0.296549,"twentyOneDay":-0.286843},"ES":{"oneDay":0.035932,"fiveDay":-0.11678,"twentyOneDay":-0.323392}}},{"date":"2023-07-06","distance":0.571685,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-0.28651,"fiveDay":2.231626,"twentyOneDay":1.506032},"ES":{"oneDay":-0.292332,"fiveDay":2.170002,"twentyOneDay":1.146841}}}],"distributions":{"SPX":{"oneDay":{"n":50,"hitRate":46,"hitRateInterval95":[32.969652,59.601129],"median":-0.107107,"worstDecile":-1.339487,"minimum":-2.452207,"maximum":1.458833,"histogram":[{"lower":-2.452207,"upper":-2.061103,"count":1},{"lower":-2.061103,"upper":-1.669999,"count":1},{"lower":-1.669999,"upper":-1.278895,"count":4},{"lower":-1.278895,"upper":-0.887791,"count":3},{"lower":-0.887791,"upper":-0.496687,"count":6},{"lower":-0.496687,"upper":-0.105583,"count":10},{"lower":-0.105583,"upper":0.285521,"count":11},{"lower":0.285521,"upper":0.676625,"count":10},{"lower":0.676625,"upper":1.067729,"count":2},{"lower":1.067729,"upper":1.458833,"count":2}]},"fiveDay":{"n":50,"hitRate":52,"hitRateInterval95":[38.511745,65.202865],"median":0.247609,"worstDecile":-2.006988,"minimum":-4.549337,"maximum":4.150291,"histogram":[{"lower":-4.549337,"upper":-3.679374,"count":1},{"lower":-3.679374,"upper":-2.809411,"count":1},{"lower":-2.809411,"upper":-1.939449,"count":5},{"lower":-1.939449,"upper":-1.069486,"count":4},{"lower":-1.069486,"upper":-0.199523,"count":7},{"lower":-0.199523,"upper":0.67044,"count":14},{"lower":0.67044,"upper":1.540403,"count":5},{"lower":1.540403,"upper":2.410365,"count":10},{"lower":2.410365,"upper":3.280328,"count":2},{"lower":3.280328,"upper":4.150291,"count":1}]},"twentyOneDay":{"n":50,"hitRate":48,"hitRateInterval95":[34.797135,61.488255],"median":-0.099859,"worstDecile":-2.75379,"minimum":-5.02385,"maximum":10.757029,"histogram":[{"lower":-5.02385,"upper":-3.445762,"count":2},{"lower":-3.445762,"upper":-1.867674,"count":7},{"lower":-1.867674,"upper":-0.289586,"count":13},{"lower":-0.289586,"upper":1.288502,"count":11},{"lower":1.288502,"upper":2.866589,"count":7},{"lower":2.866589,"upper":4.444677,"count":4},{"lower":4.444677,"upper":6.022765,"count":2},{"lower":6.022765,"upper":7.600853,"count":1},{"lower":7.600853,"upper":9.178941,"count":1},{"lower":9.178941,"upper":10.757029,"count":2}]}},"ES":{"oneDay":{"n":50,"hitRate":46,"hitRateInterval95":[32.969652,59.601129],"median":-0.150091,"worstDecile":-1.175946,"minimum":-2.514351,"maximum":1.403136,"histogram":[{"lower":-2.514351,"upper":-2.122602,"count":1},{"lower":-2.122602,"upper":-1.730854,"count":0},{"lower":-1.730854,"upper":-1.339105,"count":3},{"lower":-1.339105,"upper":-0.947356,"count":4},{"lower":-0.947356,"upper":-0.555607,"count":5},{"lower":-0.555607,"upper":-0.163859,"count":12},{"lower":-0.163859,"upper":0.22789,"count":12},{"lower":0.22789,"upper":0.619639,"count":9},{"lower":0.619639,"upper":1.011387,"count":2},{"lower":1.011387,"upper":1.403136,"count":2}]},"fiveDay":{"n":50,"hitRate":54,"hitRateInterval95":[40.398871,67.030348],"median":0.374938,"worstDecile":-1.807209,"minimum":-4.617569,"maximum":4.085852,"histogram":[{"lower":-4.617569,"upper":-3.747227,"count":1},{"lower":-3.747227,"upper":-2.876885,"count":1},{"lower":-2.876885,"upper":-2.006543,"count":3},{"lower":-2.006543,"upper":-1.136201,"count":5},{"lower":-1.136201,"upper":-0.265859,"count":8},{"lower":-0.265859,"upper":0.604484,"count":11},{"lower":0.604484,"upper":1.474826,"count":8},{"lower":1.474826,"upper":2.345168,"count":10},{"lower":2.345168,"upper":3.21551,"count":1},{"lower":3.21551,"upper":4.085852,"count":2}]},"twentyOneDay":{"n":50,"hitRate":48,"hitRateInterval95":[34.797135,61.488255],"median":-0.292979,"worstDecile":-2.850412,"minimum":-4.392993,"maximum":10.436782,"histogram":[{"lower":-4.392993,"upper":-2.910015,"count":5},{"lower":-2.910015,"upper":-1.427038,"count":5},{"lower":-1.427038,"upper":0.05594,"count":16},{"lower":0.05594,"upper":1.538917,"count":9},{"lower":1.538917,"upper":3.021894,"count":3},{"lower":3.021894,"upper":4.504872,"count":7},{"lower":4.504872,"upper":5.987849,"count":1},{"lower":5.987849,"upper":7.470827,"count":1},{"lower":7.470827,"upper":8.953805,"count":1},{"lower":8.953805,"upper":10.436782,"count":2}]}}},"coverage":{"start":"2007-01-03","end":"2026-07-17","historyRows":4915,"candidatesCompared":4854,"candidatesWithForwardReturns":4832,"earliestSelected":"2012-01-25","latestSelected":"2026-06-16"},"sources":{"SPX":"S&P 500 Index daily close via Yahoo Finance","ES":"E-mini S&P 500 continuous futures adjusted daily close via Yahoo Finance"}}}
