{"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":"8108edc8222bf646e230bda4b16762d7f4347c6f4cbeda8e4475320e353e08a9"},"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.275697,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.214828,"fiveDay":-2.038647,"twentyOneDay":-0.47568},"ES":{"oneDay":-1.250249,"fiveDay":-1.200372,"twentyOneDay":-0.069828}}},{"date":"2016-09-12","distance":0.293628,"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.32943,"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.335038,"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.348196,"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-05-05","distance":0.34903,"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-04-06","distance":0.359389,"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.378106,"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-09","distance":0.391846,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.619945,"fiveDay":1.688183,"twentyOneDay":2.555153},"ES":{"oneDay":-1.545433,"fiveDay":1.700991,"twentyOneDay":3.077339}}},{"date":"2016-10-03","distance":0.401127,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.495556,"fiveDay":0.113824,"twentyOneDay":-2.289468},"ES":{"oneDay":-0.394752,"fiveDay":-0.870777,"twentyOneDay":-2.832927}}},{"date":"2016-07-12","distance":0.407352,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.013477,"fiveDay":0.540863,"twentyOneDay":1.084971},"ES":{"oneDay":0.011651,"fiveDay":0.605849,"twentyOneDay":1.258301}}},{"date":"2018-05-22","distance":0.410783,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.324841,"fiveDay":-0.015781,"twentyOneDay":0.929368},"ES":{"oneDay":0.174248,"fiveDay":-0.055026,"twentyOneDay":0.97212}}},{"date":"2023-09-08","distance":0.416738,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.672345,"fiveDay":-0.160862,"twentyOneDay":-2.733154},"ES":{"oneDay":0.638763,"fiveDay":0.671714,"twentyOneDay":-2.084384}}},{"date":"2023-09-18","distance":0.419128,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-0.215101,"fiveDay":-2.606693,"twentyOneDay":-1.803729},"ES":{"oneDay":-0.25547,"fiveDay":-2.726869,"twentyOneDay":-2.215928}}},{"date":"2018-06-11","distance":0.421497,"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-08-22","distance":0.427837,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.195177,"fiveDay":-0.103545,"twentyOneDay":-0.89432},"ES":{"oneDay":0.1719,"fiveDay":-0.10314,"twentyOneDay":-1.15746}}},{"date":"2018-06-04","distance":0.4322,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.070259,"fiveDay":1.278906,"twentyOneDay":-1.225036},"ES":{"oneDay":0.218539,"fiveDay":1.365871,"twentyOneDay":-1.174649}}},{"date":"2026-05-22","distance":0.435483,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.610826,"fiveDay":1.692517,"twentyOneDay":-1.542122},"ES":{"oneDay":0.61407,"fiveDay":1.631958,"twentyOneDay":-0.837672}}},{"date":"2018-06-18","distance":0.441445,"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.446674,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.547908,"fiveDay":-0.342899,"twentyOneDay":-2.939519},"ES":{"oneDay":-0.423147,"fiveDay":-0.205855,"twentyOneDay":-3.007777}}},{"date":"2012-01-24","distance":0.446884,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.867914,"fiveDay":-0.170387,"twentyOneDay":3.71277},"ES":{"oneDay":0.667175,"fiveDay":-0.247808,"twentyOneDay":3.926801}}},{"date":"2016-08-08","distance":0.447807,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.038979,"fiveDay":0.424598,"twentyOneDay":0.241645},"ES":{"oneDay":0.091933,"fiveDay":0.482648,"twentyOneDay":0.413698}}},{"date":"2026-04-13","distance":0.453129,"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-07-22","distance":0.453791,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.301148,"fiveDay":-0.065743,"twentyOneDay":0.349874},"ES":{"oneDay":-0.242215,"fiveDay":0.034602,"twentyOneDay":0.645905}}},{"date":"2026-03-26","distance":0.453939,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.672184,"fiveDay":1.62926,"twentyOneDay":10.757029},"ES":{"oneDay":-1.727969,"fiveDay":1.490421,"twentyOneDay":10.436782}}},{"date":"2018-05-01","distance":0.456432,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":-0.720586,"fiveDay":0.644865,"twentyOneDay":1.901084},"ES":{"oneDay":-0.93317,"fiveDay":0.678669,"twentyOneDay":2.007729}}},{"date":"2026-05-15","distance":0.461051,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-0.073567,"fiveDay":0.876969,"twentyOneDay":1.388272},"ES":{"oneDay":-0.087457,"fiveDay":0.790474,"twentyOneDay":1.160483}}},{"date":"2016-05-24","distance":0.471952,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.697474,"fiveDay":1.120874,"twentyOneDay":1.794746},"ES":{"oneDay":0.590361,"fiveDay":1.108434,"twentyOneDay":1.481928}}},{"date":"2023-08-14","distance":0.482407,"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-10-21","distance":0.487008,"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-08-22","distance":0.496344,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":1.104488,"fiveDay":2.508919,"twentyOneDay":-1.311662},"ES":{"oneDay":1.085412,"fiveDay":2.443598,"twentyOneDay":-0.619424}}},{"date":"2016-07-01","distance":0.498505,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.684748,"fiveDay":1.626761,"twentyOneDay":2.571629},"ES":{"oneDay":-0.644007,"fiveDay":1.621944,"twentyOneDay":2.695289}}},{"date":"2018-05-15","distance":0.499149,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.406056,"fiveDay":0.479079,"twentyOneDay":2.620002},"ES":{"oneDay":0.516796,"fiveDay":0.627538,"twentyOneDay":2.740864}}},{"date":"2026-06-02","distance":0.511964,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-0.737204,"fiveDay":-2.932146,"twentyOneDay":-1.662854},"ES":{"oneDay":-0.682079,"fiveDay":-3.030005,"twentyOneDay":-1.252664}}},{"date":"2018-04-24","distance":0.513286,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.183706,"fiveDay":0.768249,"twentyOneDay":3.747494},"ES":{"oneDay":0.35101,"fiveDay":0.6451,"twentyOneDay":3.623945}}},{"date":"2016-06-23","distance":0.513681,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-3.59198,"fiveDay":-0.68423,"twentyOneDay":2.610107},"ES":{"oneDay":-4.143417,"fiveDay":-0.73608,"twentyOneDay":2.68313}}},{"date":"2026-03-19","distance":0.516791,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":-1.513818,"fiveDay":-1.957622,"twentyOneDay":7.608426},"ES":{"oneDay":-0.221207,"fiveDay":-1.274729,"twentyOneDay":8.151454}}},{"date":"2018-06-26","distance":0.520848,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":-0.860436,"fiveDay":-0.361361,"twentyOneDay":4.200417},"ES":{"oneDay":-0.861279,"fiveDay":-0.558915,"twentyOneDay":4.17812}}},{"date":"2016-07-29","distance":0.52127,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.126979,"fiveDay":0.426482,"twentyOneDay":0.311915},"ES":{"oneDay":-0.172951,"fiveDay":0.392021,"twentyOneDay":0.507322}}},{"date":"2018-05-08","distance":0.524973,"dimensionsCompared":22,"returns":{"SPX":{"oneDay":0.968222,"fiveDay":1.479462,"twentyOneDay":3.684624},"ES":{"oneDay":0.964329,"fiveDay":1.451175,"twentyOneDay":3.819867}}},{"date":"2023-09-27","distance":0.529033,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.589317,"fiveDay":-0.251719,"twentyOneDay":-3.211591},"ES":{"oneDay":0.556393,"fiveDay":-0.365133,"twentyOneDay":-3.639736}}},{"date":"2014-12-30","distance":0.529778,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-1.031086,"fiveDay":-2.617351,"twentyOneDay":-4.103161},"ES":{"oneDay":-1.16769,"fiveDay":-2.756711,"twentyOneDay":-4.249428}}},{"date":"2012-02-09","distance":0.530453,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.68863,"fiveDay":0.450467,"twentyOneDay":1.415734},"ES":{"oneDay":-0.574819,"fiveDay":0.482106,"twentyOneDay":1.798628}}},{"date":"2023-07-24","distance":0.533561,"dimensionsCompared":23,"returns":{"SPX":{"oneDay":0.281467,"fiveDay":0.753513,"twentyOneDay":-3.668574},"ES":{"oneDay":0.272717,"fiveDay":0.676339,"twentyOneDay":-4.019854}}},{"date":"2015-02-13","distance":0.541002,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.159757,"fiveDay":0.604196,"twentyOneDay":-1.082979},"ES":{"oneDay":0.119417,"fiveDay":0.632911,"twentyOneDay":-0.907571}}},{"date":"2016-06-02","distance":0.542339,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.291181,"fiveDay":0.485449,"twentyOneDay":-0.109728},"ES":{"oneDay":-0.285205,"fiveDay":0.499109,"twentyOneDay":-0.356506}}},{"date":"2012-01-31","distance":0.546423,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.889961,"fiveDay":2.63942,"twentyOneDay":4.699746},"ES":{"oneDay":0.879037,"fiveDay":2.789987,"twentyOneDay":5.064017}}},{"date":"2013-04-01","distance":0.550834,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":0.517226,"fiveDay":0.057606,"twentyOneDay":2.266072},"ES":{"oneDay":0.546272,"fiveDay":0.208869,"twentyOneDay":2.329692}}},{"date":"2016-06-14","distance":0.551454,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.184071,"fiveDay":0.654349,"twentyOneDay":4.261026},"ES":{"oneDay":-0.132562,"fiveDay":0.289226,"twentyOneDay":3.988913}}},{"date":"2015-02-06","distance":0.553114,"dimensionsCompared":21,"returns":{"SPX":{"oneDay":-0.424719,"fiveDay":2.019977,"twentyOneDay":-0.550236},"ES":{"oneDay":-0.511447,"fiveDay":1.972723,"twentyOneDay":-0.535801}}}],"distributions":{"SPX":{"oneDay":{"n":50,"hitRate":50,"hitRateInterval95":[36.644514,63.355486],"median":-0.030045,"worstDecile":-1.241652,"minimum":-3.59198,"maximum":1.458833,"histogram":[{"lower":-3.59198,"upper":-3.086899,"count":1},{"lower":-3.086899,"upper":-2.581817,"count":0},{"lower":-2.581817,"upper":-2.076736,"count":0},{"lower":-2.076736,"upper":-1.571655,"count":2},{"lower":-1.571655,"upper":-1.066573,"count":4},{"lower":-1.066573,"upper":-0.561492,"count":6},{"lower":-0.561492,"upper":-0.056411,"count":12},{"lower":-0.056411,"upper":0.44867,"count":11},{"lower":0.44867,"upper":0.953752,"count":10},{"lower":0.953752,"upper":1.458833,"count":4}]},"fiveDay":{"n":50,"hitRate":60,"hitRateInterval95":[46.181438,72.39161],"median":0.438475,"worstDecile":-2.006988,"minimum":-2.932146,"maximum":4.150291,"histogram":[{"lower":-2.932146,"upper":-2.223902,"count":3},{"lower":-2.223902,"upper":-1.515659,"count":4},{"lower":-1.515659,"upper":-0.807415,"count":2},{"lower":-0.807415,"upper":-0.099171,"count":9},{"lower":-0.099171,"upper":0.609073,"count":13},{"lower":0.609073,"upper":1.317316,"count":7},{"lower":1.317316,"upper":2.02556,"count":8},{"lower":2.02556,"upper":2.733804,"count":2},{"lower":2.733804,"upper":3.442047,"count":1},{"lower":3.442047,"upper":4.150291,"count":1}]},"twentyOneDay":{"n":50,"hitRate":56,"hitRateInterval95":[42.306028,68.837801],"median":0.639621,"worstDecile":-2.75379,"minimum":-5.02385,"maximum":10.757029,"histogram":[{"lower":-5.02385,"upper":-3.445762,"count":3},{"lower":-3.445762,"upper":-1.867674,"count":4},{"lower":-1.867674,"upper":-0.289586,"count":13},{"lower":-0.289586,"upper":1.288502,"count":7},{"lower":1.288502,"upper":2.866589,"count":11},{"lower":2.866589,"upper":4.444677,"count":5},{"lower":4.444677,"upper":6.022765,"count":3},{"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":50,"hitRateInterval95":[36.644514,63.355486],"median":-0.037903,"worstDecile":-1.175946,"minimum":-4.143417,"maximum":1.403136,"histogram":[{"lower":-4.143417,"upper":-3.588762,"count":1},{"lower":-3.588762,"upper":-3.034106,"count":0},{"lower":-3.034106,"upper":-2.479451,"count":0},{"lower":-2.479451,"upper":-1.924796,"count":0},{"lower":-1.924796,"upper":-1.37014,"count":3},{"lower":-1.37014,"upper":-0.815485,"count":5},{"lower":-0.815485,"upper":-0.26083,"count":9},{"lower":-0.26083,"upper":0.293825,"count":16},{"lower":0.293825,"upper":0.848481,"count":11},{"lower":0.848481,"upper":1.403136,"count":5}]},"fiveDay":{"n":50,"hitRate":62,"hitRateInterval95":[48.150447,74.137211],"median":0.453672,"worstDecile":-1.559564,"minimum":-3.030005,"maximum":4.085852,"histogram":[{"lower":-3.030005,"upper":-2.318419,"count":3},{"lower":-2.318419,"upper":-1.606834,"count":2},{"lower":-1.606834,"upper":-0.895248,"count":4},{"lower":-0.895248,"upper":-0.183662,"count":7},{"lower":-0.183662,"upper":0.527924,"count":12},{"lower":0.527924,"upper":1.239509,"count":9},{"lower":1.239509,"upper":1.951095,"count":8},{"lower":1.951095,"upper":2.662681,"count":2},{"lower":2.662681,"upper":3.374266,"count":2},{"lower":3.374266,"upper":4.085852,"count":1}]},"twentyOneDay":{"n":50,"hitRate":56,"hitRateInterval95":[42.306028,68.837801],"median":0.809012,"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":3},{"lower":-1.427038,"upper":0.05594,"count":14},{"lower":0.05594,"upper":1.538917,"count":8},{"lower":1.538917,"upper":3.021894,"count":6},{"lower":3.021894,"upper":4.504872,"count":8},{"lower":4.504872,"upper":5.987849,"count":2},{"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-24","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"}}}
