{"schemaVersion":1,"kind":"analogs","asOf":"2026-07-22","sourceSchemaVersion":1,"sourceUrl":"/data/analog-engine.json","methodologyUrl":"/methodology/#analog-engine","integrity":{"algorithm":"sha256","canonicalization":"SHA-256 of UTF-8 JSON.stringify(payload)","payloadSha256":"c4703c29f604eae590c8bed81104e75ad4fc54a38fb2b159fc33f565f54daec7"},"payload":{"schemaVersion":1,"asOf":"2026-07-22","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-22","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-22","distance":0.197606,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.436279,"fiveDay":-0.433036,"twentyOneDay":0.350203},"ES":{"oneDay":-1.375767,"fiveDay":-0.543676,"twentyOneDay":0.026521}}},{"date":"2026-05-05","distance":0.280849,"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-12","distance":0.283426,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":1.652839,"fiveDay":0.55615,"twentyOneDay":1.896531},"ES":{"oneDay":1.69805,"fiveDay":1.429052,"twentyOneDay":2.417619}}},{"date":"2026-05-22","distance":0.320012,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.610826,"fiveDay":1.692517,"twentyOneDay":-1.542122},"ES":{"oneDay":0.61407,"fiveDay":1.631958,"twentyOneDay":-0.837672}}},{"date":"2026-05-15","distance":0.323789,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-0.073567,"fiveDay":0.876969,"twentyOneDay":1.388272},"ES":{"oneDay":-0.087457,"fiveDay":0.790474,"twentyOneDay":1.160483}}},{"date":"2026-04-23","distance":0.333578,"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-06-05","distance":0.355482,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.297813,"fiveDay":0.646281,"twentyOneDay":1.340374},"ES":{"oneDay":0.209445,"fiveDay":0.466185,"twentyOneDay":1.732991}}},{"date":"2026-04-06","distance":0.371369,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.075925,"fiveDay":4.150291,"twentyOneDay":9.791391},"ES":{"oneDay":0.086453,"fiveDay":4.085852,"twentyOneDay":9.566231}}},{"date":"2016-09-12","distance":0.376126,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-1.483067,"fiveDay":-0.922629,"twentyOneDay":-1.033332},"ES":{"oneDay":-1.378272,"fiveDay":-1.181376,"twentyOneDay":-1.250869}}},{"date":"2016-09-21","distance":0.378661,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.649978,"fiveDay":0.381394,"twentyOneDay":-1.00688},"ES":{"oneDay":0.556522,"fiveDay":0.324638,"twentyOneDay":-0.997101}}},{"date":"2016-08-30","distance":0.411671,"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.418267,"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-04-13","distance":0.434503,"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-10-03","distance":0.436623,"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-30","distance":0.445432,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.254905,"fiveDay":0.928224,"twentyOneDay":2.868524},"ES":{"oneDay":0.198338,"fiveDay":0.868908,"twentyOneDay":2.927843}}},{"date":"2018-05-07","distance":0.451763,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":-0.026564,"fiveDay":2.151439,"twentyOneDay":3.731164},"ES":{"oneDay":0.009363,"fiveDay":2.284644,"twentyOneDay":3.829588}}},{"date":"2026-03-26","distance":0.465183,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.672184,"fiveDay":1.62926,"twentyOneDay":10.757029},"ES":{"oneDay":-1.727969,"fiveDay":1.490421,"twentyOneDay":10.436782}}},{"date":"2016-08-22","distance":0.480361,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.195177,"fiveDay":-0.103545,"twentyOneDay":-0.89432},"ES":{"oneDay":0.1719,"fiveDay":-0.10314,"twentyOneDay":-1.15746}}},{"date":"2023-09-18","distance":0.481429,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-0.215101,"fiveDay":-2.606693,"twentyOneDay":-1.803729},"ES":{"oneDay":-0.25547,"fiveDay":-2.726869,"twentyOneDay":-2.215928}}},{"date":"2014-12-30","distance":0.488567,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-1.031086,"fiveDay":-2.617351,"twentyOneDay":-4.103161},"ES":{"oneDay":-1.16769,"fiveDay":-2.756711,"twentyOneDay":-4.249428}}},{"date":"2023-03-03","distance":0.496197,"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.499167,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.324841,"fiveDay":-0.015781,"twentyOneDay":0.929368},"ES":{"oneDay":0.174248,"fiveDay":-0.055026,"twentyOneDay":0.97212}}},{"date":"2017-11-20","distance":0.503839,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.654114,"fiveDay":1.738874,"twentyOneDay":3.760838},"ES":{"oneDay":0.551898,"fiveDay":1.704105,"twentyOneDay":3.853602}}},{"date":"2016-10-21","distance":0.505179,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.474984,"fiveDay":-0.688879,"twentyOneDay":2.663043},"ES":{"oneDay":0.445017,"fiveDay":-0.515283,"twentyOneDay":3.068275}}},{"date":"2023-09-08","distance":0.507505,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.672345,"fiveDay":-0.160862,"twentyOneDay":-2.733154},"ES":{"oneDay":0.638763,"fiveDay":0.671714,"twentyOneDay":-2.084384}}},{"date":"2016-07-12","distance":0.511422,"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.513055,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.809369,"fiveDay":-1.241681,"twentyOneDay":1.162946},"ES":{"oneDay":-0.626459,"fiveDay":-1.093232,"twentyOneDay":1.326618}}},{"date":"2022-01-10","distance":0.519905,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.915998,"fiveDay":-1.995169,"twentyOneDay":-1.779544},"ES":{"oneDay":0.916939,"fiveDay":-1.951847,"twentyOneDay":-1.81243}}},{"date":"2015-02-10","distance":0.52375,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.002903,"fiveDay":1.502949,"twentyOneDay":-0.12763},"ES":{"oneDay":0.169718,"fiveDay":1.612317,"twentyOneDay":0.084859}}},{"date":"2018-06-04","distance":0.524145,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.070259,"fiveDay":1.278906,"twentyOneDay":-1.225036},"ES":{"oneDay":0.218539,"fiveDay":1.365871,"twentyOneDay":-1.174649}}},{"date":"2023-08-22","distance":0.524437,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":1.104488,"fiveDay":2.508919,"twentyOneDay":-1.311662},"ES":{"oneDay":1.085412,"fiveDay":2.443598,"twentyOneDay":-0.619424}}},{"date":"2023-07-06","distance":0.524774,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-0.28651,"fiveDay":2.231626,"twentyOneDay":1.506032},"ES":{"oneDay":-0.292332,"fiveDay":2.170002,"twentyOneDay":1.146841}}},{"date":"2014-12-19","distance":0.524885,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.381046,"fiveDay":0.962025,"twentyOneDay":-0.362205},"ES":{"oneDay":0.363196,"fiveDay":1.004843,"twentyOneDay":-0.411622}}},{"date":"2022-09-09","distance":0.526988,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":1.058427,"fiveDay":-4.770417,"twentyOneDay":-11.185885},"ES":{"oneDay":1.069519,"fiveDay":-4.819227,"twentyOneDay":-10.867294}}},{"date":"2023-08-14","distance":0.527339,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.155091,"fiveDay":-2.00347,"twentyOneDay":-0.496251},"ES":{"oneDay":-1.154017,"fiveDay":-2.075011,"twentyOneDay":-0.826676}}},{"date":"2014-06-17","distance":0.534447,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.771888,"fiveDay":0.411433,"twentyOneDay":0.830592},"ES":{"oneDay":0.798352,"fiveDay":0.090136,"twentyOneDay":0.618079}}},{"date":"2018-06-11","distance":0.53761,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.174339,"fiveDay":-0.296549,"twentyOneDay":-0.286843},"ES":{"oneDay":0.035932,"fiveDay":-0.11678,"twentyOneDay":-0.323392}}},{"date":"2016-05-24","distance":0.538504,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.697474,"fiveDay":1.120874,"twentyOneDay":1.794746},"ES":{"oneDay":0.590361,"fiveDay":1.108434,"twentyOneDay":1.481928}}},{"date":"2018-06-18","distance":0.548119,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":-0.40234,"fiveDay":-2.043441,"twentyOneDay":1.509513},"ES":{"oneDay":-0.485655,"fiveDay":-2.068531,"twentyOneDay":1.304074}}},{"date":"2016-08-15","distance":0.551959,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.547908,"fiveDay":-0.342899,"twentyOneDay":-2.939519},"ES":{"oneDay":-0.423147,"fiveDay":-0.205855,"twentyOneDay":-3.007777}}},{"date":"2026-03-19","distance":0.552197,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.513818,"fiveDay":-1.957622,"twentyOneDay":7.608426},"ES":{"oneDay":-0.221207,"fiveDay":-1.274729,"twentyOneDay":8.151454}}},{"date":"2016-07-25","distance":0.553928,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.032278,"fiveDay":0.108837,"twentyOneDay":0.849439},"ES":{"oneDay":0.046248,"fiveDay":0.104058,"twentyOneDay":1.063707}}},{"date":"2016-08-08","distance":0.557433,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.038979,"fiveDay":0.424598,"twentyOneDay":0.241645},"ES":{"oneDay":0.091933,"fiveDay":0.482648,"twentyOneDay":0.413698}}},{"date":"2015-01-26","distance":0.557648,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-1.338786,"fiveDay":-1.761717,"twentyOneDay":2.759725},"ES":{"oneDay":-1.144388,"fiveDay":-1.777453,"twentyOneDay":2.763574}}},{"date":"2018-05-14","distance":0.561024,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":-0.684214,"fiveDay":0.105494,"twentyOneDay":1.666587},"ES":{"oneDay":-0.805566,"fiveDay":0.073233,"twentyOneDay":1.583669}}},{"date":"2017-10-24","distance":0.562784,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.466305,"fiveDay":0.238607,"twentyOneDay":1.087925},"ES":{"oneDay":-0.340832,"fiveDay":0.214237,"twentyOneDay":1.061447}}},{"date":"2023-07-24","distance":0.563065,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.281467,"fiveDay":0.753513,"twentyOneDay":-3.668574},"ES":{"oneDay":0.272717,"fiveDay":0.676339,"twentyOneDay":-4.019854}}},{"date":"2016-11-08","distance":0.566792,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":1.107702,"fiveDay":1.908328,"twentyOneDay":4.983729},"ES":{"oneDay":1.158979,"fiveDay":1.744322,"twentyOneDay":5.830016}}},{"date":"2023-02-15","distance":0.569615,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.378874,"fiveDay":-3.261646,"twentyOneDay":-5.568526},"ES":{"oneDay":-1.406842,"fiveDay":-3.354777,"twentyOneDay":-4.838573}}},{"date":"2014-07-03","distance":0.571075,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.392352,"fiveDay":-0.900052,"twentyOneDay":-2.339529},"ES":{"oneDay":-0.328698,"fiveDay":-0.758534,"twentyOneDay":-2.300885}}}],"distributions":{"SPX":{"oneDay":{"n":50,"hitRate":56,"hitRateInterval95":[42.306028,68.837801],"median":0.053848,"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":5},{"lower":-0.342175,"upper":-0.009672,"count":6},{"lower":-0.009672,"upper":0.32283,"count":12},{"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":5},{"lower":-0.310063,"upper":0.582008,"count":14},{"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":56,"hitRateInterval95":[42.306028,68.837801],"median":0.840016,"worstDecile":-3.012425,"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":4},{"lower":-2.408719,"upper":-0.214428,"count":14},{"lower":-0.214428,"upper":1.979863,"count":17},{"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":60,"hitRateInterval95":[46.181438,72.39161],"median":0.077179,"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":4},{"lower":-0.357561,"upper":-0.01496,"count":8},{"lower":-0.01496,"upper":0.327642,"count":14},{"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":6},{"lower":-0.366687,"upper":0.52382,"count":12},{"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.7951,"worstDecile":-3.108985,"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":5},{"lower":-2.345664,"upper":-0.215256,"count":14},{"lower":-0.215256,"upper":1.915152,"count":15},{"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}]}}},"coverage":{"start":"2007-01-03","end":"2026-07-22","historyRows":4918,"candidatesCompared":4857,"candidatesWithForwardReturns":4835,"earliestSelected":"2014-06-17","latestSelected":"2026-06-22"},"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"}}}
