← All V2 experiments
Relative return
1.038x
Excess vs bench
3.80%
Benchmark
CAPW_UNIV
Rolling windows
179 · monthly
Mean strategy gain
18.39%
Mean benchmark gain
14.08%
Mean excess gain
4.30%
Dispersion (ref)
5.34%
Win-rate vs bench (ref)
96.65%
Worst / best ratio (ref)
0.991x / 1.104x
Logic variants
3
Updated
Jul 21, 2026
Anchored windows (reference — strategy vs benchmark)
Kept from V1 for continuity; the objective ranks on the full rolling set, not these four.
| Window | Strategy | Benchmark | Ratio |
|---|---|---|---|
| 2006-07-03 … 2011-06-30 | 8.48% | 2.22% | 1.061x |
| 2011-07-01 … 2016-06-30 | 18.32% | 13.74% | 1.040x |
| 2016-07-01 … 2021-06-30 | 22.24% | 20.63% | 1.013x |
| 2021-07-01 … 2026-06-26 | 29.02% | 15.48% | 1.117x |
All rolling windows — the objective set (equal-weighted mean ratio)
Strategy
Benchmark (CAPW_UNIV)
Excess
rolling 5y windows, monthly step — 179 windows · mean ratio 1.038x · beat benchmark in 173/179
| # | Window | Strategy | Benchmark | Ratio |
|---|---|---|---|---|
| 1 | 2006-07-31 … 2011-07-29 | 8.60% | 1.79% | 1.067x |
| 2 | 2006-08-31 … 2011-08-31 | 7.49% | 0.21% | 1.073x |
| 3 | 2006-09-29 … 2011-08-31 | 7.29% | -0.14% | 1.074x |
| 4 | 2006-10-31 … 2011-10-31 | 6.45% | 0.23% | 1.062x |
| 5 | 2006-11-30 … 2011-11-30 | 5.77% | -0.05% | 1.058x |
| 6 | 2006-12-29 … 2011-11-30 | 5.39% | -0.32% | 1.057x |
| 7 | 2007-01-31 … 2012-01-31 | 7.16% | 0.93% | 1.062x |
| 8 | 2007-02-28 … 2012-01-31 | 7.06% | 1.43% | 1.056x |
| 9 | 2007-03-30 … 2012-03-30 | 9.46% | 3.09% | 1.062x |
| 10 | 2007-04-30 … 2012-04-30 | 8.95% | 2.42% | 1.064x |
| 11 | 2007-05-31 … 2012-05-31 | 6.28% | 0.60% | 1.056x |
| 12 | 2007-06-29 … 2012-06-29 | 7.99% | 1.92% | 1.060x |
| 13 | 2007-07-31 … 2012-07-31 | 9.29% | 2.69% | 1.064x |
| 14 | 2007-08-31 … 2012-08-31 | 9.66% | 2.95% | 1.065x |
| 15 | 2007-09-28 … 2012-09-28 | 8.99% | 3.20% | 1.056x |
| 16 | 2007-10-31 … 2012-10-31 | 7.70% | 2.60% | 1.050x |
| 17 | 2007-11-30 … 2012-11-30 | 8.98% | 3.45% | 1.053x |
| 18 | 2007-12-31 … 2012-12-31 | 8.52% | 3.69% | 1.047x |
| 19 | 2008-01-31 … 2013-01-31 | 11.37% | 5.85% | 1.052x |
| 20 | 2008-02-29 … 2013-02-28 | 12.26% | 6.82% | 1.051x |
| 21 | 2008-03-31 … 2013-03-28 | 13.69% | 7.73% | 1.055x |
| 22 | 2008-04-30 … 2013-04-30 | 13.33% | 7.51% | 1.054x |
| 23 | 2008-05-30 … 2013-04-30 | 12.87% | 7.81% | 1.047x |
| 24 | 2008-06-30 … 2013-06-28 | 14.25% | 9.33% | 1.045x |
| 25 | 2008-07-31 … 2013-07-31 | 16.30% | 10.48% | 1.053x |
| 26 | 2008-08-29 … 2013-07-31 | 16.43% | 10.52% | 1.053x |
| 27 | 2008-09-30 … 2013-09-30 | 17.96% | 11.48% | 1.058x |
| 28 | 2008-10-31 … 2013-10-31 | 21.91% | 15.76% | 1.053x |
| 29 | 2008-11-28 … 2013-10-31 | 23.23% | 17.46% | 1.049x |
| 30 | 2008-12-31 … 2013-12-31 | 24.05% | 18.44% | 1.047x |
| 31 | 2009-01-30 … 2013-12-31 | 24.96% | 20.64% | 1.036x |
| 32 | 2009-02-27 … 2014-01-31 | 26.91% | 21.63% | 1.043x |
| 33 | 2009-03-31 … 2014-03-31 | 26.06% | 20.60% | 1.045x |
| 34 | 2009-04-30 … 2014-04-30 | 24.73% | 19.00% | 1.048x |
| 35 | 2009-05-29 … 2014-04-30 | 24.39% | 18.32% | 1.051x |
| 36 | 2009-06-30 … 2014-06-30 | 26.42% | 19.01% | 1.062x |
| 37 | 2009-07-31 … 2014-07-31 | 24.91% | 17.39% | 1.064x |
| 38 | 2009-08-31 … 2014-08-29 | 25.48% | 17.70% | 1.066x |
| 39 | 2009-09-30 … 2014-09-30 | 23.78% | 16.64% | 1.061x |
| 40 | 2009-10-30 … 2014-09-30 | 24.29% | 17.08% | 1.062x |
| 41 | 2009-11-30 … 2014-11-28 | 22.63% | 16.82% | 1.050x |
| 42 | 2009-12-31 … 2014-12-31 | 22.08% | 16.28% | 1.050x |
| 43 | 2010-01-29 … 2014-12-31 | 22.93% | 17.23% | 1.049x |
| 44 | 2010-02-26 … 2015-01-30 | 22.44% | 15.80% | 1.057x |
| 45 | 2010-03-31 … 2015-03-31 | 22.77% | 15.40% | 1.064x |
| 46 | 2010-04-30 … 2015-04-30 | 22.34% | 15.38% | 1.060x |
| 47 | 2010-05-28 … 2015-04-30 | 24.32% | 17.09% | 1.062x |
| 48 | 2010-06-30 … 2015-06-30 | 25.54% | 17.45% | 1.069x |
| 49 | 2010-07-30 … 2015-06-30 | 24.32% | 16.43% | 1.068x |
| 50 | 2010-08-31 … 2015-08-31 | 21.83% | 15.76% | 1.052x |
| 51 | 2010-09-30 … 2015-09-30 | 19.35% | 13.61% | 1.051x |
| 52 | 2010-10-29 … 2015-09-30 | 18.99% | 13.06% | 1.052x |
| 53 | 2010-11-30 … 2015-11-30 | 19.31% | 15.09% | 1.037x |
| 54 | 2010-12-31 … 2015-12-31 | 18.14% | 13.55% | 1.040x |
| 55 | 2011-01-31 … 2016-01-29 | 16.20% | 11.90% | 1.038x |
| 56 | 2011-02-28 … 2016-01-29 | 16.12% | 11.53% | 1.041x |
| 57 | 2011-03-31 … 2016-03-31 | 17.30% | 12.90% | 1.039x |
| 58 | 2011-04-29 … 2016-04-29 | 16.03% | 12.39% | 1.032x |
| 59 | 2011-05-31 … 2016-05-31 | 16.95% | 12.94% | 1.035x |
| 60 | 2011-06-30 … 2016-06-30 | 18.27% | 13.30% | 1.044x |
| 61 | 2011-07-29 … 2016-07-29 | 18.96% | 14.52% | 1.039x |
| 62 | 2011-08-31 … 2016-08-31 | 17.89% | 15.19% | 1.023x |
| 63 | 2011-09-30 … 2016-09-30 | 20.48% | 16.32% | 1.036x |
| 64 | 2011-10-31 … 2016-10-31 | 16.76% | 14.02% | 1.024x |
| 65 | 2011-11-30 … 2016-11-30 | 17.43% | 14.66% | 1.024x |
| 66 | 2011-12-30 … 2016-12-30 | 16.69% | 14.92% | 1.015x |
| 67 | 2012-01-31 … 2017-01-31 | 16.57% | 14.63% | 1.017x |
| 68 | 2012-02-29 … 2017-02-28 | 16.87% | 14.78% | 1.018x |
| 69 | 2012-03-30 … 2017-02-28 | 16.08% | 14.43% | 1.014x |
| 70 | 2012-04-30 … 2017-04-28 | 15.85% | 14.61% | 1.011x |
| 71 | 2012-05-31 … 2017-05-31 | 18.57% | 15.98% | 1.022x |
| 72 | 2012-06-29 … 2017-05-31 | 18.01% | 15.44% | 1.022x |
| 73 | 2012-07-31 … 2017-07-31 | 17.82% | 15.43% | 1.021x |
| 74 | 2012-08-31 … 2017-08-31 | 17.99% | 15.12% | 1.025x |
| 75 | 2012-09-28 … 2017-08-31 | 17.91% | 14.77% | 1.027x |
| 76 | 2012-10-31 … 2017-10-31 | 20.82% | 16.12% | 1.040x |
| 77 | 2012-11-30 … 2017-11-30 | 20.83% | 16.79% | 1.035x |
| 78 | 2012-12-31 … 2017-12-29 | 21.00% | 16.93% | 1.035x |
| 79 | 2013-01-31 … 2018-01-31 | 21.09% | 17.57% | 1.030x |
| 80 | 2013-02-28 … 2018-02-28 | 20.25% | 16.21% | 1.035x |
| 81 | 2013-03-28 … 2018-02-28 | 19.65% | 15.81% | 1.033x |
| 82 | 2013-04-30 … 2018-04-30 | 18.01% | 14.25% | 1.033x |
| 83 | 2013-05-31 … 2018-05-31 | 18.42% | 14.57% | 1.034x |
| 84 | 2013-06-28 … 2018-05-31 | 18.69% | 14.97% | 1.032x |
| 85 | 2013-07-31 … 2018-07-31 | 17.40% | 14.83% | 1.022x |
| 86 | 2013-08-30 … 2018-07-31 | 18.09% | 15.59% | 1.022x |
| 87 | 2013-09-30 … 2018-09-28 | 17.41% | 15.84% | 1.014x |
| 88 | 2013-10-31 … 2018-10-31 | 14.59% | 12.89% | 1.015x |
| 89 | 2013-11-29 … 2018-10-31 | 13.85% | 12.60% | 1.011x |
| 90 | 2013-12-31 … 2018-12-31 | 12.15% | 9.93% | 1.020x |
| 91 | 2014-01-31 … 2019-01-31 | 12.79% | 12.37% | 1.004x |
| 92 | 2014-02-28 … 2019-02-28 | 12.78% | 12.38% | 1.004x |
| 93 | 2014-03-31 … 2019-03-29 | 13.81% | 12.76% | 1.009x |
| 94 | 2014-04-30 … 2019-04-30 | 14.66% | 13.73% | 1.008x |
| 95 | 2014-05-30 … 2019-04-30 | 13.72% | 13.54% | 1.002x |
| 96 | 2014-06-30 … 2019-06-28 | 13.66% | 12.81% | 1.008x |
| 97 | 2014-07-31 … 2019-07-31 | 13.81% | 13.30% | 1.004x |
| 98 | 2014-08-29 … 2019-07-31 | 13.37% | 12.80% | 1.005x |
| 99 | 2014-09-30 … 2019-09-30 | 13.92% | 12.70% | 1.011x |
| 100 | 2014-10-31 … 2019-10-31 | 14.46% | 12.91% | 1.014x |
| 101 | 2014-11-28 … 2019-10-31 | 14.32% | 12.60% | 1.015x |
| 102 | 2014-12-31 … 2019-12-31 | 14.48% | 14.16% | 1.003x |
| 103 | 2015-01-30 … 2019-12-31 | 14.61% | 14.85% | 0.998x |
| 104 | 2015-02-27 … 2020-01-31 | 13.07% | 14.04% | 0.991x |
| 105 | 2015-03-31 … 2020-03-31 | 8.04% | 8.56% | 0.995x |
| 106 | 2015-04-30 … 2020-04-30 | 11.94% | 11.65% | 1.003x |
| 107 | 2015-05-29 … 2020-05-29 | 12.80% | 12.61% | 1.002x |
| 108 | 2015-06-30 … 2020-06-30 | 13.26% | 13.64% | 0.997x |
| 109 | 2015-07-31 … 2020-07-31 | 14.67% | 14.60% | 1.001x |
| 110 | 2015-08-31 … 2020-08-31 | 17.57% | 18.07% | 0.996x |
| 111 | 2015-09-30 … 2020-09-30 | 16.35% | 17.05% | 0.994x |
| 112 | 2015-10-30 … 2020-10-30 | 14.69% | 14.60% | 1.001x |
| 113 | 2015-11-30 … 2020-11-30 | 18.36% | 17.43% | 1.008x |
| 114 | 2015-12-31 … 2020-12-31 | 20.28% | 18.65% | 1.014x |
| 115 | 2016-01-29 … 2021-01-29 | 21.58% | 19.26% | 1.019x |
| 116 | 2016-02-29 … 2021-02-26 | 23.35% | 19.79% | 1.030x |
| 117 | 2016-03-31 … 2021-03-31 | 22.55% | 19.42% | 1.026x |
| 118 | 2016-04-29 … 2021-03-31 | 23.04% | 19.66% | 1.028x |
| 119 | 2016-05-31 … 2021-05-28 | 24.07% | 20.42% | 1.030x |
| 120 | 2016-06-30 … 2021-06-30 | 22.60% | 21.06% | 1.013x |
| 121 | 2016-07-29 … 2021-06-30 | 22.24% | 20.63% | 1.013x |
| 122 | 2016-08-31 … 2021-08-31 | 24.35% | 21.75% | 1.021x |
| 123 | 2016-09-30 … 2021-09-30 | 22.91% | 20.22% | 1.022x |
| 124 | 2016-10-31 … 2021-10-29 | 25.20% | 22.50% | 1.022x |
| 125 | 2016-11-30 … 2021-11-30 | 23.96% | 21.87% | 1.017x |
| 126 | 2016-12-30 … 2021-11-30 | 24.41% | 21.75% | 1.022x |
| 127 | 2017-01-31 … 2022-01-31 | 21.48% | 20.17% | 1.011x |
| 128 | 2017-02-28 … 2022-02-28 | 19.94% | 18.51% | 1.012x |
| 129 | 2017-03-31 … 2022-03-31 | 20.36% | 19.46% | 1.008x |
| 130 | 2017-04-28 … 2022-03-31 | 20.61% | 19.46% | 1.010x |
| 131 | 2017-05-31 … 2022-05-31 | 19.18% | 15.59% | 1.031x |
| 132 | 2017-06-30 … 2022-06-30 | 16.72% | 13.08% | 1.032x |
| 133 | 2017-07-31 … 2022-07-29 | 17.62% | 15.16% | 1.021x |
| 134 | 2017-08-31 … 2022-08-31 | 17.24% | 13.72% | 1.031x |
| 135 | 2017-09-29 … 2022-08-31 | 16.73% | 13.56% | 1.028x |
| 136 | 2017-10-31 … 2022-10-31 | 18.46% | 11.86% | 1.059x |
| 137 | 2017-11-30 … 2022-11-30 | 19.24% | 12.52% | 1.060x |
| 138 | 2017-12-29 … 2022-11-30 | 19.44% | 12.46% | 1.062x |
| 139 | 2018-01-31 … 2023-01-31 | 17.57% | 11.01% | 1.059x |
| 140 | 2018-02-28 … 2023-02-28 | 15.93% | 11.03% | 1.044x |
| 141 | 2018-03-29 … 2023-02-28 | 16.53% | 11.72% | 1.043x |
| 142 | 2018-04-30 … 2023-04-28 | 16.99% | 13.01% | 1.035x |
| 143 | 2018-05-31 … 2023-05-31 | 16.37% | 12.95% | 1.030x |
| 144 | 2018-06-29 … 2023-05-31 | 16.64% | 13.01% | 1.032x |
| 145 | 2018-07-31 … 2023-07-31 | 18.06% | 14.67% | 1.030x |
| 146 | 2018-08-31 … 2023-08-31 | 16.98% | 13.51% | 1.031x |
| 147 | 2018-09-28 … 2023-08-31 | 17.36% | 13.56% | 1.033x |
| 148 | 2018-10-31 … 2023-10-31 | 17.19% | 12.60% | 1.041x |
| 149 | 2018-11-30 … 2023-11-30 | 18.94% | 14.58% | 1.038x |
| 150 | 2018-12-31 … 2023-12-29 | 21.94% | 17.26% | 1.040x |
| 151 | 2019-01-31 … 2024-01-31 | 22.58% | 16.27% | 1.054x |
| 152 | 2019-02-28 … 2024-01-31 | 22.12% | 15.94% | 1.053x |
| 153 | 2019-03-29 … 2024-03-28 | 23.45% | 17.50% | 1.051x |
| 154 | 2019-04-30 … 2024-04-30 | 20.58% | 15.50% | 1.044x |
| 155 | 2019-05-31 … 2024-05-31 | 22.50% | 18.12% | 1.037x |
| 156 | 2019-06-28 … 2024-06-28 | 21.59% | 17.99% | 1.031x |
| 157 | 2019-07-31 … 2024-07-31 | 22.18% | 17.70% | 1.038x |
| 158 | 2019-08-30 … 2024-08-30 | 23.44% | 18.41% | 1.042x |
| 159 | 2019-09-30 … 2024-09-30 | 23.44% | 18.65% | 1.040x |
| 160 | 2019-10-31 … 2024-10-31 | 23.02% | 17.87% | 1.044x |
| 161 | 2019-11-29 … 2024-11-29 | 25.49% | 18.64% | 1.058x |
| 162 | 2019-12-31 … 2024-12-31 | 23.77% | 17.62% | 1.052x |
| 163 | 2020-01-31 … 2025-01-31 | 25.27% | 18.07% | 1.061x |
| 164 | 2020-02-28 … 2025-02-28 | 27.78% | 19.00% | 1.074x |
| 165 | 2020-03-31 … 2025-03-31 | 27.02% | 19.24% | 1.065x |
| 166 | 2020-04-30 … 2025-04-30 | 24.33% | 16.49% | 1.067x |
| 167 | 2020-05-29 … 2025-04-30 | 23.54% | 15.80% | 1.067x |
| 168 | 2020-06-30 … 2025-06-30 | 24.83% | 18.19% | 1.056x |
| 169 | 2020-07-31 … 2025-07-31 | 23.00% | 17.87% | 1.043x |
| 170 | 2020-08-31 … 2025-08-29 | 22.23% | 16.69% | 1.048x |
| 171 | 2020-09-30 … 2025-09-30 | 25.57% | 18.57% | 1.059x |
| 172 | 2020-10-30 … 2025-09-30 | 26.17% | 19.43% | 1.056x |
| 173 | 2020-11-30 … 2025-11-28 | 23.33% | 17.77% | 1.047x |
| 174 | 2020-12-31 … 2025-12-31 | 22.90% | 16.92% | 1.051x |
| 175 | 2021-01-29 … 2025-12-31 | 23.01% | 17.20% | 1.050x |
| 176 | 2021-02-26 … 2026-01-30 | 24.80% | 17.04% | 1.066x |
| 177 | 2021-03-31 … 2026-03-31 | 23.48% | 14.07% | 1.083x |
| 178 | 2021-04-30 … 2026-04-30 | 28.08% | 16.03% | 1.104x |
| 179 | 2021-05-28 … 2026-04-30 | 27.73% | 16.22% | 1.099x |
Notes
mode=explore; family=recovery-quality-contrarian-52w-hybrid
This variant keeps the parent family core but changes the arbitration structure. Instead of letting one sleeve dominate by regime, it uses a relay: contrarian depth nominates candidates, repair strength confirms whether the selloff is healing, and quality plus tradability decide whether a conflict is an early turnaround or a falling knife. In bull tapes the relay prefers shallower repaired leaders off their highs; in mixed tapes it requires balanced agreement between drawdown and repair; in risk-off it only advances rebounds that also show durability, lower volatility, and reliable liquidity.
Deliberate metric coverage: active momentum metrics are return_1m_pct, return_6m_pct, momentum_12_1_pct; active trend/recovery metrics are from_52w_high_pct and from_200d_ma_pct; active volatility metric is realized_vol_3m; active liquidity metrics are avg_daily_volume_3m, avg_daily_dollar_volume_3m, trading_days_3m; active income metrics are dividend_yield_ttm_pct and dividend_ttm; active valuation metrics are forward_pe and peg; active growth metrics are operating_income_growth_pct, free_cash_flow_growth_pct, and forward_eps; active quality metrics are operating_margin_pct and free_cash_flow_margin_pct; active size metric is market_cap.
Deliberate weight-0 metrics this run: return_3m_pct, return_12m_pct, pe, eps_growth_pct, revenue_growth_pct, shares_outstanding, close, adj_close, high_52w, ma_200d, eps_ttm, revenue_ttm, operating_income_ttm, free_cash_flow_ttm. Correlated momentum fields are thinned, raw level fields stay off, and sparse fundamentals are normalized by present weight so missing data does not automatically zero a stock.
Lesson notes
explore/recovery-quality-contrarian-52w-hybrid: relative_return 1.0380x (delta -0.3906 vs exp_1123); win-rate 96.648%, worst-window 0.991476, dispersion 5.3407%.
Monthly picks — top stocks selected each month (whole timeline)
timeline — 240 months · top 15 each
| Month | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2006-07-31 | CPB | CSX | KSS | NOC | CL | WM | TWX | OMC | PAYX | DGX | NEE | CAG | DIS | GIS | GOOG |
| 2006-08-31 | CPB | BAC | T | OMC | ADM | MRK | WFC | NEE | ABT | CL | NOC | INTU | LMT | USB | GOOGL |
| 2006-09-29 | LH | CPB | DGX | ABT | PSKY | EXC | L | PPL | KSS | D | T | NEE | FE | KR | PEP |
| 2006-10-31 | BDX | ALL | MDLZ | PFE | VZ | BAC | JCI | T | KSS | AIV | HPQ | LNC | MS | EXC | ABT |
| 2006-11-30 | MRK | CAG | KSS | MAT | FNMA | FMCC | BEN | TWX | VZ | MS | JPM | NEE | T | TJX | CMCSA |
| 2006-12-29 | MRK | VNO | HOG | OKE | TWX | AES | MTCH | NEE | ES | CMCSA | ETR | CTSH | CNP | CAG | DDR |
| 2007-01-31 | TWX | BKNG | CAG | HAS | TRV | MCD | HOG | NEE | ETR | HPQ | USB | NKE | IBM | CMCSA | ES |
| 2007-02-28 | TWX | DOC | MCD | IBM | HAS | BMY | YUM | JCI | CAG | TRV | NEE | HD | LMT | MBI | MSFT |
| 2007-03-30 | MTCH | NEE | PRU | HAS | BK | BNY | NKE | CI | YUM | IBM | MCD | TWX | HON | CAG | CNP |
| 2007-04-30 | MTCH | SYK | PEG | ES | SRE | BK | BNY | USB | T | FE | AEP | ETR | NKE | MCK | BAX |
| 2007-05-31 | ETR | BAX | MCD | NEE | ZBH | PEG | SYK | MAT | CHD | AEP | CNP | PRU | CI | FE | D |
| 2007-06-29 | CI | PRU | MET | MCK | ABT | EQT | ZBH | CVS | VZ | BAX | MCD | HPQ | PH | GILD | HON |
| 2007-07-31 | VFC | MCD | ESRX | HON | GILD | GWW | AON | MET | CVS | GOOG | DD | AZO | BWA | PSKY | WTW |
| 2007-08-31 | CAT | HON | CDNS | APA | BA | GOOG | GEN | TXN | GILD | GOOGL | HAL | COP | URI | AMAT | GLW |
| 2007-09-28 | PENN | AMAT | URI | IDXX | HPQ | IBM | CDNS | BIIB | PAYX | HON | GEN | CAT | ADI | MCHP | TXN |
| 2007-10-31 | EXPE | COP | BKR | RTX | MMM | HAL | CAT | IBM | CVX | BA | DGX | MSI | ITW | MDLZ | HPQ |
| 2007-11-30 | MGM | YUM | WMB | EOG | PENN | KO | NOC | GE | ADBE | RTX | VZ | ITW | MCD | NKE | GPN |
| 2007-12-31 | HPQ | MCD | MRK | CL | KO | NEE | PEP | LMT | NKE | CVS | AON | ABT | MO | BMY | MGM |
| 2008-01-31 | HPQ | MCD | ESRX | DHR | PEP | KO | AON | PG | UNH | AET | ELV | MSFT | EMR | NRG | WMB |
| 2008-02-29 | ABT | PEG | D | HAL | LMT | CVX | RTX | DHR | BA | GE | UNH | NOC | XOM | AON | ED |
| 2008-03-31 | MO | ABT | D | LMT | CVX | NOC | RTX | AON | XOM | HON | ED | MMM | DHR | IBM | MRSH |
| 2008-04-30 | ABT | MO | ALL | D | CAG | ZBH | IBM | RTX | MMM | CVX | LMT | CL | NOC | PG | DHR |
| 2008-05-30 | HAL | CVX | IBM | ABT | D | RTX | AEP | TTWO | ALL | XOM | COP | HPQ | BAX | BA | CAG |
| 2008-06-30 | ABT | IBM | ALL | D | AEP | HPQ | CVX | MO | LMT | TTWO | RTX | LLY | MMM | HAL | PEG |
| 2008-07-31 | D | ABT | HPQ | TTWO | AEP | PEG | EW | LLY | HAL | ALL | EXC | IBM | MO | FE | MMM |
| 2008-08-29 | D | IBM | LLY | WWY | ED | BAX | BTUUQ | ESV | MCD | NAV | ABT | DNR | APC | MDLZ | AON |
| 2008-09-30 | MCD | ESV | ABT | BTUUQ | D | ED | LLY | GD | CPB | AEP | DHR | IBM | AZO | CAG | AON |
| 2008-10-31 | ABT | MCD | AON | CAG | ED | D | HPQ | CPB | IBM | HAS | LLY | AZO | MO | MTCH | GD |
| 2008-11-28 | ABT | CAG | AON | MCD | ED | CPB | D | MO | IBM | AZO | HPQ | MRK | LUV | GD | MTCH |
| 2008-12-31 | ABT | AON | MCD | ED | CAG | CPB | BMY | MMM | IBM | JNJ | AMGN | HPQ | KR | AEP | MDLZ |
| 2009-01-30 | ABT | MCD | AON | BMY | XOM | CAG | ED | AEP | CPB | RTX | AMGN | JNJ | HPQ | T | MTCH |
| 2009-02-27 | ABT | MCD | XOM | CAG | CVX | ED | BMY | AON | CPB | RTX | AEP | HPQ | AMGN | JNJ | GD |
| 2009-03-31 | MCD | BKNG | CVX | AON | ABT | XOM | BMY | AMT | CAG | ADI | ED | AMGN | IBM | JNJ | PG |
| 2009-04-30 | BKNG | CVX | IBM | MCD | AZO | AON | BMY | UPS | OXY | EBAY | XOM | CAG | ED | ADM | AMT |
| 2009-05-29 | BKNG | EBAY | CF | IBM | AZO | CAG | CVX | MCD | BMY | AMT | GOOG | UPS | MA | AON | AAPL |
| 2009-06-30 | IBM | CAG | GOOG | BKNG | BMY | AZO | AAPL | AMT | EBAY | ROST | JNJ | PG | CF | XOM | AMGN |
| 2009-07-31 | BMY | IBM | CAG | EBAY | GOOG | AMT | AZO | FISV | AAPL | WAT | BKNG | EOG | JNJ | CF | PEP |
| 2009-08-31 | KLAC | IBM | AAPL | EBAY | EOG | JCI | JNJ | CAG | PEP | BMY | AZO | TGT | XOM | SPGI | YUM |
| 2009-09-30 | CAG | XOM | IBM | AAPL | EBAY | EOG | MA | JNJ | YUM | GE | PEP | GILD | MDT | BKNG | BMY |
| 2009-10-30 | EBAY | EOG | AMGN | AAPL | BKNG | IBM | WBD | FIS | GILD | TT | BMY | MCK | ABT | GIS | PM |
| 2009-11-30 | MCK | HPQ | AMGN | IBM | TWX | TJX | GILD | ABT | TRV | ITW | GOOG | GIS | AAPL | MSFT | JCI |
| 2009-12-31 | JCI | MCK | WBD | ABT | IBM | CAH | MRK | ACN | GOOG | PEP | CL | MSFT | GIS | TT | ADP |
| 2010-01-29 | GOOG | IBM | WBD | MSFT | GIS | ABT | GOOGL | DHR | TT | TRV | ADP | SPG | AMGN | HPQ | RTX |
| 2010-02-26 | ABT | WBD | ACN | SYK | GIS | GE | SW | DHR | CCI | ADP | RTX | LMT | JCI | AMGN | CB |
| 2010-03-31 | COR | ACN | TRV | EW | AZO | LMT | AMGN | DTE | F | BMY | GIS | EBAY | WHR | MSFT | XRX |
| 2010-04-30 | BBWI | BMY | GIS | F | BKNG | HAS | MDLZ | AMGN | XRX | GE | BRK-B | DRI | JCI | TSN | HON |
| 2010-05-28 | BBWI | HON | TSN | VTRS | BMY | AMGN | EL | TFC | F | AZO | GE | GIS | LMT | ABT | DRI |
| 2010-06-30 | BBWI | HON | BMY | ETN | LEG | NTAP | TSN | TRV | GE | SHW | TJX | SBUX | LMT | AZO | GILD |
| 2010-07-30 | BBWI | BMY | HSY | AZO | BKNG | HAS | KDP | CB | NEM | TRV | NTAP | HON | PEG | COR | TSN |
| 2010-08-31 | BBWI | BKNG | INTC | AZO | HON | FIS | NTAP | BMY | TXN | AXP | AAPL | MMM | CB | ED | KDP |
| 2010-09-30 | BKNG | BMY | AZO | BBWI | CB | ED | HSY | NEM | FIS | MRK | NTAP | NI | INTC | TRV | MDLZ |
| 2010-10-29 | BMY | BKNG | VZ | AZO | CB | MRK | CHRW | INTC | BBWI | GILD | CMS | CCI | PM | ED | TXN |
| 2010-11-30 | BKNG | PM | BMY | D | NTAP | CB | INTC | TXN | AZO | CNP | MDLZ | VZ | MCHP | INTU | CMS |
| 2010-12-31 | TXN | BKNG | ADI | AZO | BBWI | MCHP | NTAP | EXPD | D | HON | LUMN | PM | WYNN | AAP | OMC |
| 2011-01-31 | BKNG | ADI | TXN | INTC | FCX | CHRW | AZO | VZ | MCHP | TPR | AAPL | NTAP | UNP | HON | CTSH |
| 2011-02-28 | TXN | BKNG | ADI | BBWI | INTC | DE | MCHP | HON | AAPL | TPR | ILMN | AZO | OXY | XOM | ON |
| 2011-03-31 | COP | XOM | ADI | BKNG | WYNN | TXN | BBWI | AAPL | D | GE | CVX | TER | FCX | QCOM | NOV |
| 2011-04-29 | COP | BKNG | TXN | ADI | AAPL | CSX | CVX | GE | AZO | MU | WYNN | COR | PSKY | XOM | PPG |
| 2011-05-31 | BKNG | GE | BBWI | COP | XOM | CVX | CAT | WMB | WYNN | MCHP | KKR | ADI | ELV | OXY | INTC |
| 2011-06-30 | BKNG | COP | PM | BBWI | WYNN | GE | XOM | CVX | CAT | LLY | D | SPG | AAPL | MCHP | WMB |
| 2011-07-29 | COP | BKNG | D | BBWI | WYNN | CAT | CVX | GE | XOM | IRM | BAX | LLY | AZO | AAPL | AXP |
| 2011-08-31 | BKNG | AAPL | CF | FCX | COP | WYNN | BIIB | AZO | BBWI | GE | VZ | PM | CAT | CVX | ADI |
| 2011-09-30 | BKNG | WYNN | COP | AAPL | KLAC | CF | AZO | VZ | PM | DUK | GE | XOM | ADBE | WBD | AVB |
| 2011-10-31 | BKNG | AAPL | KLAC | AZO | CF | DUK | COP | KMB | VZ | CL | DG | WYNN | TJX | LLY | BAX |
| 2011-11-30 | KLAC | BKNG | AAPL | AZO | CVX | WYNN | VZ | COP | GE | PFE | CNP | XOM | WBD | LLY | GOOG |
| 2011-12-30 | KLAC | BKNG | AAPL | AZO | VFC | CF | COP | VZ | PFE | AEE | XOM | DG | DLTR | CVX | GE |
| 2012-01-31 | KLAC | VZ | BKNG | PFE | GE | LLY | CF | AAPL | PM | AZO | DG | DLTR | OKE | COP | XOM |
| 2012-02-29 | BKNG | AAPL | KLAC | CF | GE | MRK | AZO | UNP | BIIB | ECL | TJX | CAT | DG | OKE | URI |
| 2012-03-30 | BKNG | AAPL | CF | CAT | AZO | COP | KLAC | EOG | EBAY | IP | BBWI | ETN | GE | WBD | LUMN |
| 2012-04-30 | BKNG | AAPL | KLAC | GE | CF | COP | WBD | JPM | QCOM | IVZ | WYNN | AZO | KMI | BLK | PM |
| 2012-05-31 | BKNG | AAPL | STX | SPG | ISRG | WBD | CF | QCOM | PM | WMB | EBAY | ORLY | COP | MSFT | TFC |
| 2012-06-29 | BKNG | AAPL | STX | CF | VRTX | SPG | QCOM | EBAY | KLAC | WBD | PM | AZO | COP | ISRG | ITW |
| 2012-07-31 | BKNG | AAPL | STX | COP | WBD | DG | CF | MCK | KLAC | ISRG | EBAY | KMB | SPG | LLY | GE |
| 2012-08-31 | STX | KMB | MO | SRE | WEC | MRK | ALL | SPG | GE | CMS | CF | PM | KMI | EXPE | VTR |
| 2012-09-28 | STX | ALL | SPG | TJX | EBAY | AAPL | LUMN | DOC | VTR | VLO | MO | CF | UNP | SRE | KMI |
| 2012-10-31 | GE | ALL | CF | MRK | TWX | AAPL | EBAY | GOOG | LLY | LUMN | KMB | COP | QCOM | MO | XOM |
| 2012-11-30 | ALL | MRK | GE | TRV | BKNG | AMGN | LLY | DVA | CB | CF | GS | IRM | CDNS | XOM | NRG |
| 2012-12-31 | STX | AMGN | ALL | EBAY | TRV | GE | CB | LLY | AFL | QCOM | BAX | VTRS | WYNN | CL | DVA |
| 2013-01-31 | STX | SBAC | ALL | AMGN | APTV | EBAY | PPG | COP | IP | GE | CMCSA | FISV | CSCO | KKR | AFL |
| 2013-02-28 | EBAY | ALL | GS | TRV | BKNG | NWL | CB | STX | WYNN | PPG | KKR | BAX | TSN | CPRT | DAL |
| 2013-03-28 | STX | JPM | KKR | GS | ALL | MCK | GE | TRV | DOV | DVA | BKNG | HON | VTRS | AMGN | CB |
| 2013-04-30 | STX | ALL | GEN | AMGN | GS | BKNG | STT | TRV | LLY | COR | BSX | PFE | KKR | HON | BDX |
| 2013-05-31 | BKNG | TWX | KR | ALL | COR | TRV | KKR | MAT | VLO | STX | COST | WYNN | GOOG | ECL | JPM |
| 2013-06-28 | BKNG | GEN | JPM | KKR | AMGN | ALL | GS | GILD | STX | TRV | BLK | TWX | BX | MCO | FIS |
| 2013-07-31 | BKNG | GOOG | STZ | ALL | KKR | JPM | VFC | MO | WFC | ELV | PFE | TRV | BRK-B | CB | STX |
| 2013-08-30 | BKNG | JNJ | VFC | GOOG | SPGI | PFE | FITB | WFC | REGN | JPM | BDX | COST | AFL | MCO | AZO |
| 2013-09-30 | BKNG | JNJ | WFC | PFE | ELV | COP | GOOG | MSFT | HON | ICE | COST | COO | UNP | CAH | RTX |
| 2013-10-31 | BKNG | META | REGN | BX | SPGI | RTX | A | COP | MU | EHC | MA | WFC | URI | V | LYB |
| 2013-11-29 | BKNG | META | COP | KR | REGN | JNJ | PFE | MO | WYNN | URI | TJX | BX | OXY | ADM | SLB |
| 2013-12-31 | BKNG | JNJ | COP | META | MSFT | COR | MCK | IBKR | URI | MU | STZ | BX | PFG | PFE | TJX |
| 2014-01-31 | BKNG | MA | V | URI | COR | JNJ | MO | TT | GE | COP | BX | ITW | VFC | ABBV | REGN |
| 2014-02-28 | BKNG | BX | MU | MA | REGN | COP | URI | V | MO | ESRX | COR | MSFT | META | CB | GE |
| 2014-03-31 | BX | WYNN | META | MU | V | BKNG | VZ | ESRX | GD | URI | T | SPGI | LLY | GOOG | CAH |
| 2014-04-30 | META | URI | WYNN | STZ | VZ | RCL | EOG | USB | MCK | AAL | GLW | LLY | BKNG | MSFT | BX |
| 2014-05-30 | META | BKNG | T | D | URI | WYNN | AEP | COP | EIX | PEG | DTE | BX | GLW | BKR | JNJ |
| 2014-06-30 | META | URI | LYB | T | COP | UNP | GD | VZ | BX | HST | VNO | JNJ | OXY | BAX | TRV |
| 2014-07-31 | COP | MU | URI | META | BKNG | OXY | JNJ | BX | EOG | TRV | T | SLB | NOV | CBRE | UNP |
| 2014-08-29 | COP | T | VZ | MU | GILD | DLR | META | BX | EQIX | BNY | BK | DAL | VNO | WFC | BAX |
| 2014-09-30 | GILD | COP | URI | WMB | VZ | T | OXY | DLR | PSX | BK | BNY | AEP | AIV | ESS | BALL |
| 2014-10-31 | GILD | MU | META | VZ | T | URI | RCL | BK | BNY | RSG | LUMN | BKNG | KLAC | SBAC | COP |
| 2014-11-28 | GILD | META | T | VZ | ED | AEP | BX | MU | GS | PAYX | HIG | D | SRE | SO | EQR |
| 2014-12-31 | GD | MU | GILD | WELL | T | DLR | AMGN | AEP | KLAC | KDP | EIX | META | FDX | BX | EQR |
| 2015-01-30 | GILD | T | RCL | GD | TRV | HIG | ALL | AZO | GE | CB | VFC | VZ | AEP | BX | AMAT |
| 2015-02-27 | KR | BX | MAC | VNO | SHW | BXP | GILD | ARE | T | ALL | ESS | EQR | DRI | COR | KDP |
| 2015-03-31 | BMS | SBUX | GILD | TXN | GE | SHW | AAPL | BX | MO | PPG | BDX | DLTR | CME | PCG | VTR |
| 2015-04-30 | BX | GILD | DLTR | DGX | BKNG | SHW | DRI | SBUX | AZO | LH | LII | COST | CHD | TEL | TXN |
| 2015-05-29 | KMI | GILD | COR | AZO | LH | BX | DRI | BBWI | COST | BKNG | PSX | GE | SBUX | JPM | ALL |
| 2015-06-30 | BX | COR | BKNG | GILD | AZO | KMI | JPM | GS | COST | SBUX | AAPL | SHW | TXN | MCK | DRI |
| 2015-07-31 | BKNG | BX | JPM | GS | GILD | GE | MTG | VLO | SBUX | AZO | HAS | DRI | COR | TGT | ANET |
| 2015-08-31 | GILD | MDLZ | BKNG | PANW | VLO | JPM | SBUX | BF.B | BF-B | DRI | HAS | KR | ACN | AMGN | ELV |
| 2015-09-30 | BKNG | GILD | HUM | CCI | JPM | HAS | VLO | SBUX | MTG | DRI | MDLZ | AZO | AMGN | SYF | ESRX |
| 2015-10-30 | BKNG | WEC | CCI | CMG | PEG | GILD | PCG | AZO | SBUX | ACGL | VLO | CASY | XEL | HAS | ES |
| 2015-11-30 | MO | AZO | PLD | ACGL | GILD | CCI | PSX | MDLZ | ACN | SPG | WEC | PM | BBWI | BKNG | ORLY |
| 2015-12-31 | BKNG | GILD | MAS | FISV | AZO | PSX | PLD | VLO | CCI | MO | COST | PAYX | LUV | ORLY | AMGN |
| 2016-01-29 | VRSN | IBM | TAP | CCI | KLAC | COR | GM | GE | PLD | COST | ADBE | GOOG | CB | AMGN | VLO |
| 2016-02-29 | VZ | TAP | T | KLAC | ABBV | GOOG | BKNG | AMGN | KDP | PPL | PM | CCI | BUD | KMB | RMD |
| 2016-03-31 | T | VZ | KLAC | ABBV | KMB | PM | CCI | AMGN | KDP | ISRG | DAL | GOOG | ETN | WM | GILD |
| 2016-04-29 | VZ | T | KLAC | PM | XEL | CMS | ABBV | MKC | LNT | KMB | AEP | NI | NDAQ | WEC | BKNG |
| 2016-05-31 | T | VZ | ABBV | TSN | PM | BAX | KLAC | SYY | OMC | EXC | META | ISRG | MCD | WM | CL |
| 2016-06-30 | ABBV | T | VZ | KLAC | IBM | AMGN | META | CCI | EVRG | MCD | ISRG | ACN | ZBH | PM | PPL |
| 2016-07-29 | CNP | NI | WM | T | AWK | VZ | ABBV | DLR | CCI | EQIX | XEL | EVRG | MRSH | PCG | EIX |
| 2016-08-31 | T | ABBV | VTR | WM | VZ | DXC | BKNG | IRM | ULTA | CNP | BSX | HII | META | AMGN | KIM |
| 2016-09-30 | ABBV | BKNG | T | META | DHR | AMGN | SPGI | COO | FIS | AFL | VZ | ICE | CME | TSN | WM |
| 2016-10-31 | BKNG | SPGI | T | META | GLW | DHR | ABBV | VZ | ISRG | MKTX | HPQ | YUM | EBAY | IBM | CME |
| 2016-11-30 | META | BKNG | SPGI | T | DHR | KLAC | PEP | ISRG | PG | ADBE | YUM | QCOM | ABBV | GOOG | CSCO |
| 2016-12-30 | FDX | META | HPE | BKNG | QCOM | GM | DHR | ITW | ABBV | ADBE | CSX | YUM | GLW | PFG | NXPI |
| 2017-01-31 | FDX | ABBV | TFC | DD | GS | PFG | BKNG | JPM | SPGI | T | GM | TWX | BRO | IBM | NXPI |
| 2017-02-28 | ABBV | TT | GM | T | MSFT | META | XRX | ADBE | MTB | TWX | USB | FDX | BKNG | IBM | BRO |
| 2017-03-31 | MO | GS | PRU | USB | BKNG | META | JPM | UNM | IBM | EBAY | TWX | BRK-B | AXP | KLAC | AMGN |
| 2017-04-28 | EBAY | META | MHK | XRX | ADI | BKNG | AMAT | KLAC | MO | PRU | ADBE | AMGN | GS | MRK | USB |
| 2017-05-31 | META | BKNG | EBAY | MSFT | ADBE | KLAC | BX | XRX | KHC | LRCX | MO | TFX | GOOG | AMGN | WDC |
| 2017-06-30 | META | MSFT | BX | ADBE | BKNG | XRX | AMAT | SPGI | PM | WDC | GOOGL | RCL | MO | EBAY | ADI |
| 2017-07-31 | PM | BX | AMAT | ABBV | META | BCR | HUM | BAX | ELV | LRCX | BSX | BKNG | ADBE | TT | AET |
| 2017-08-31 | BX | META | NXPI | AMAT | BA | ALL | CB | HIG | LRCX | SPGI | PM | MU | AET | BDX | STT |
| 2017-09-29 | BX | RCL | META | ADBE | SBAC | STZ | XEL | BAX | VRTX | NEE | BA | AET | AMT | BCR | SPGI |
| 2017-10-31 | BA | BX | TROW | AMGN | ABBV | RCL | SPGI | NYT | META | AMAT | TXN | TWX | FDX | ZTS | VRTX |
| 2017-11-30 | MU | META | NXPI | INTC | TXN | CTSH | ANET | AMGN | AEP | XOM | ADBE | BA | RCL | AMAT | PLD |
| 2017-12-29 | MU | META | AEP | TSN | ANET | AMGN | ADBE | NXPI | CBOE | ON | AMAT | EXC | BA | XEL | ISRG |
| 2018-01-31 | MU | TXN | AET | NXPI | SWK | INTC | HLT | MCD | STZ | SHW | ITW | TROW | OXY | ANET | ZTS |
| 2018-02-28 | ANET | BKNG | AET | NXPI | BX | LW | XOM | TXN | TSN | META | AEP | MCD | MU | ITW | LRCX |
| 2018-03-29 | NXPI | MU | BKNG | AET | BA | ANET | PSX | URI | CAT | BX | FCX | AEP | ELV | ON | WYNN |
| 2018-04-30 | BKNG | MU | ANET | PSX | AEP | WYNN | NXPI | EW | HCA | MPC | BA | KDP | KSS | BLK | BX |
| 2018-05-31 | BKNG | MU | PSX | PFE | ANET | CVX | VZ | AEP | AET | KDP | FCX | ALL | CTSH | OXY | NTAP |
| 2018-06-29 | BKNG | MU | PSX | NOW | BA | ANET | VLO | ADBE | BLK | PFE | AEP | META | OXY | MSCI | M |
| 2018-07-31 | MU | BKNG | ADBE | TJX | PSX | NOW | AEP | PEG | OXY | MSCI | PANW | META | MCO | ETSY | V |
| 2018-08-31 | PSX | MU | EVHC | OXY | PFE | WAB | AEP | OKE | MRK | BKNG | PEG | CVX | MPC | TDG | VLO |
| 2018-09-28 | PSX | BKNG | AEP | SHW | PFE | MPC | SPG | USB | OXY | AET | REGN | TJX | VLO | VZ | BRO |
| 2018-10-31 | BKNG | PFE | AVGO | ABMD | ETSY | EHC | WMB | CF | UNP | DELL | PSX | FTV | AEP | TJX | M |
| 2018-11-30 | TJX | BKNG | PM | PFE | MKC | MRK | VZ | CME | ESRX | ADM | AMD | JKHY | PEG | VICI | MO |
| 2018-12-31 | BKNG | ESRX | PFE | MKC | USB | AVGO | MRK | VZ | CMCSA | MDLZ | PEG | ABMD | SO | CMI | TJX |
| 2019-01-31 | ESRX | MRK | PFE | AVGO | CME | AZO | XEL | EXC | VZ | FE | PEG | ETR | LW | CLX | WEC |
| 2019-02-28 | AVGO | WELL | CNP | PFE | MDLZ | SO | EXC | VTR | CME | XEL | WCG | VZ | AIV | PGR | ES |
| 2019-03-29 | PGR | AVGO | JNJ | XEL | VRTX | PEP | EXC | LIN | REGN | KLAC | MTCH | PPL | AWK | ADI | INTC |
| 2019-04-30 | AES | PEP | BAX | WMB | IBM | MRK | LIN | KLAC | JNJ | KMI | MTCH | XEL | KEYS | CAT | CCI |
| 2019-05-31 | ADI | LLY | PEP | HON | SO | MDLZ | JNJ | AVGO | QCOM | LIN | MSFT | CDNS | GRMN | IBM | MTCH |
| 2019-06-28 | PEP | MDLZ | SO | HSY | PAYX | PGR | INVH | KMI | MTCH | XEL | BR | SRE | HON | WM | FDS |
| 2019-07-31 | PEP | LIN | QCOM | MDLZ | AFL | PGR | HON | BKNG | MSFT | JNJ | SO | XRAY | ROP | TRV | SRE |
| 2019-08-30 | QCOM | AZO | PEP | CPRT | XRAY | LIN | BKNG | GS | PSX | APD | SO | IBM | PGR | MSFT | HON |
| 2019-09-30 | QCOM | PEP | BKNG | BMY | HSY | WEC | PSX | AWK | GPN | SO | WM | MSI | NCC | XEL | CCI |
| 2019-10-31 | HSY | PEP | MLM | BKNG | VMC | WEC | ES | BMY | XEL | LMT | LHX | MDLZ | SO | EVRG | IBM |
| 2019-11-29 | QCOM | BMY | PSX | ETR | SO | PEP | INVH | FE | J | SHW | EQR | ES | XEL | BF.B | BF-B |
| 2019-12-31 | VRTX | QCOM | AMGN | PSX | AVP | USB | PEP | GOOG | MSFT | KIM | INVH | BMY | SO | JPM | FTNT |
| 2020-01-31 | BMY | QCOM | AMGN | JPM | LLY | ANSS | VRTX | FLT | PEP | MSFT | JNJ | TIF | SO | KSU | SYY |
| 2020-02-28 | LLY | BMY | QCOM | SO | GS | JNJ | JPM | FTNT | ETR | VRTX | MSFT | CPRT | AMGN | RTN | PEP |
| 2020-03-31 | ABBV | QCOM | ENPH | ANET | GOOG | NEM | PGR | SO | JPM | GEN | NOW | IBM | LLY | GOOGL | MNST |
| 2020-04-30 | ABBV | KR | LLY | PGR | QCOM | CLX | ANET | ENPH | MRK | VZ | MDLZ | SO | GEN | GOOG | IBM |
| 2020-05-29 | LLY | ANET | NEM | QCOM | ABBV | KR | PGR | GOOG | VZ | IBM | ENPH | BDX | CLX | GEN | SO |
| 2020-06-30 | ABBV | ENPH | NEM | VZ | GEN | INTC | QCOM | CPB | CDNS | BAX | JNJ | KR | IBM | ICE | ANET |
| 2020-07-31 | ABBV | EBAY | ADBE | VRTX | ENPH | MSFT | AZO | QCOM | CDNS | VZ | GIS | URI | CPB | KLAC | SPGI |
| 2020-08-31 | ABBV | REGN | EBAY | CDNS | CLX | AZO | VRTX | PG | ORLY | ENPH | EA | ETSY | META | ROP | NEM |
| 2020-09-30 | ABBV | META | EBAY | CDNS | REGN | MO | AZO | MS | ENPH | LOW | VIAC | ADBE | PG | ODFL | ORLY |
| 2020-10-30 | ENPH | LOW | ABBV | VIAC | PGR | ADBE | PG | MO | AZO | META | ETSY | REGN | CRWD | MRK | SPGI |
| 2020-11-30 | PG | CPRT | VIAC | CDNS | NOW | META | ENPH | ADBE | LOW | ABBV | AZO | AWK | TMO | CNXT | CTSH |
| 2020-12-31 | ETSY | NOW | ABBV | PG | ENPH | KLAC | LRCX | CARR | META | FDX | AMAT | ALL | TT | AMD | TGT |
| 2021-01-29 | ENPH | ABBV | KLAC | ADBE | MS | GS | PG | WPX | PGR | FCX | ETSY | AMAT | DVN | CDNS | LRCX |
| 2021-02-26 | ENPH | ABBV | ADBE | TUP | KLAC | ABMD | PGR | PG | BLK | ETSY | COST | CTLT | ALL | CRWD | FFIV |
| 2021-03-31 | GS | MS | JPM | ETSY | FCX | KLAC | SPG | DVN | TSLA | ENPH | TUP | PSX | ADBE | EBAY | ALXN |
| 2021-04-30 | AMAT | GS | JPM | C | TSLA | DVN | BBWI | ETSY | URI | FCX | MS | LRCX | JCI | LEN | PG |
| 2021-05-28 | PGR | GS | FE | DE | ALL | PG | OMC | FCX | AMAT | RJF | PM | LRCX | WY | JPM | LOW |
| 2021-06-30 | BX | JPM | GS | DE | XEC | ETSY | FCX | C | BRK-B | ALL | F | AFL | COF | MS | PGR |
| 2021-07-30 | GS | BX | FCX | JPM | BIG | XOM | ORLY | META | GOOG | XEC | DE | REGN | LRCX | MS | AZO |
| 2021-08-31 | MRNA | BX | GS | TGT | BBWI | KKR | AZO | QCOM | GOOGL | AMD | UDR | JPM | PAYX | WFC | C |
| 2021-09-30 | BX | MRNA | GS | SIVB | GOOGL | KSU | A | PKI | XEC | FRC | MMC | GOOG | META | REGN | AMD |
| 2021-10-29 | MRNA | BX | SIVB | GS | EOG | C | KSU | PKI | CB | META | RMD | JPM | PXD | QCOM | MMC |
| 2021-11-30 | MRNA | GS | CB | COP | REGN | BX | JEF | AZO | JPM | GILD | GOOGL | KKR | M | ISRG | KLAC |
| 2021-12-31 | REGN | AMD | BX | GILD | COP | KLAC | GOOGL | JPM | PFE | GS | CVX | DDOG | QCOM | SPG | CB |
| 2022-01-31 | PFE | GILD | BX | REGN | FDS | AVGO | GOOGL | CB | KLAC | FCX | WY | CVX | MRSH | ON | SPG |
| 2022-02-28 | PFE | GILD | WY | REGN | BX | MRK | CB | AMD | WFC | EXC | HPQ | SPG | CVX | QCOM | PM |
| 2022-03-31 | GILD | WY | COP | ABBV | PFE | REGN | BX | CVX | FCX | CB | SPG | ON | EOG | DVN | MDLZ |
| 2022-04-29 | ABBV | REGN | GILD | FCX | PFE | CVX | COP | CF | BRK-B | NI | EXC | WY | BKNG | CB | MOS |
| 2022-05-31 | ABBV | REGN | CF | EOG | MOS | GILD | WY | PFE | MRK | BRK-B | FHN | BMY | SRE | PLD | FE |
| 2022-06-30 | EOG | CF | DVN | CVX | REGN | VLO | ABBV | MPC | MRO | XOM | GILD | PSX | WY | BRK-B | PFE |
| 2022-07-29 | EOG | ABBV | VLO | REGN | MRK | GILD | CF | PFE | BMY | FHN | DVN | EXC | CB | KR | CVX |
| 2022-08-31 | DVN | CVX | EOG | CF | AZO | VRTX | PFE | ABBV | MRK | MOS | COP | ON | BMY | PSA | VICI |
| 2022-09-30 | DVN | EOG | CVX | COP | CF | ON | MRO | GS | VRTX | PFE | XOM | VICI | AZO | ABBV | PSA |
| 2022-10-31 | DVN | EOG | ON | CF | PFE | COP | CVX | ABBV | MRNA | VRTX | AZO | GS | VICI | PSA | TXN |
| 2022-11-30 | COP | EOG | DVN | CVX | CF | VRTX | XOM | AZO | MRNA | BKNG | MCK | MPC | AMGN | MRK | UNM |
| 2022-12-30 | EOG | DVN | COP | BKNG | CVX | MRNA | GS | MRO | MPC | AMGN | BIIB | MCHP | VRTX | ON | AIG |
| 2023-01-31 | BKNG | EOG | COP | MRK | CVX | AIG | ABBV | AMGN | MRNA | DVN | PCG | AZO | JPM | MO | BK |
| 2023-02-28 | BKNG | TJX | CVX | AMGN | T | VRTX | AIG | MRK | EOG | PSA | MPC | ON | COP | VLO | XOM |
| 2023-03-31 | BKNG | PSX | MO | XOM | ABNB | EOG | DOW | CVX | PSA | VLO | URI | JPM | TJX | SPG | MCHP |
| 2023-04-28 | BKNG | ADI | AVGO | MCHP | ABNB | MPC | ANET | PSX | ON | KLAC | EOG | PSA | NXPI | CVX | MO |
| 2023-05-31 | BKNG | PSA | VRTX | XOM | MO | MDLZ | ABNB | NEE | ADI | LEN | CVX | EOG | PSX | AMGN | HSY |
| 2023-06-30 | BKNG | MDLZ | PSA | HSY | AVGO | EOG | MO | MNST | ANET | XOM | ADI | LW | PLTR | CVX | NEE |
| 2023-07-31 | BKNG | EOG | VRTX | CAH | MDLZ | COR | CHD | CPRT | HCA | PANW | BSX | FISV | MRK | MO | AVGO |
| 2023-08-31 | BKNG | EOG | JPM | ABNB | PSX | COR | MO | MDLZ | MCHP | ADI | KLAC | PLTR | NOW | TAP | VLO |
| 2023-09-29 | BKNG | PSX | EOG | JPM | AVGO | KLAC | NOW | MO | PLTR | FISV | TJX | EMR | MCHP | BRK-B | ECL |
| 2023-10-31 | BKNG | PSX | JPM | VLO | PLTR | ADI | EMR | EOG | CAT | ABNB | MO | MCHP | KLAC | TJX | VRSK |
| 2023-11-30 | BKNG | IBM | TJX | ABNB | JPM | PEG | CME | GILD | AFL | EOG | MET | MRK | BKR | CMCSA | MO |
| 2023-12-29 | BKNG | IBM | PSX | NOW | ABNB | AKAM | WMB | CBOE | JPM | AFL | PANW | ADBE | EOG | AM | CME |
| 2024-01-31 | BKNG | IBM | NOW | JPM | CRM | MO | SPG | ABNB | GILD | KLAC | ACN | ANET | PSX | ROP | DHI |
| 2024-02-29 | IBM | NOW | CB | PSX | JPM | BSX | COR | BKNG | PCAR | MRK | PGR | JNJ | FISV | TDG | CSX |
| 2024-03-28 | IBM | CSX | META | UNP | CRM | JPM | UBER | ANET | CRWD | KLAC | PLTR | GE | NOW | CB | HLT |
| 2024-04-30 | PLTR | META | CAT | NVDA | IBM | JPM | CRH | URI | CRWD | CRM | UBER | PSX | HLT | PANW | SPG |
| 2024-05-31 | CAT | IBM | META | WFC | URI | FANG | COR | MRK | AMZN | AZO | NVDA | PGR | JPM | RSG | PH |
| 2024-06-28 | IBM | CAT | CEG | PANW | CB | URI | NVDA | KR | MO | GS | META | PGR | COIN | WFC | XYL |
| 2024-07-31 | NVDA | BSX | META | MO | GOOG | NFLX | CAT | IBM | TJX | JPM | WMB | LDOS | AMZN | CL | ANET |
| 2024-08-30 | NVDA | AMT | GS | MO | IBM | WELL | PANW | PM | ANET | JPM | SO | AEP | DUK | META | PLTR |
| 2024-09-30 | PM | MO | CL | NVDA | AMT | IBM | GS | ICE | JNJ | DUK | JPM | VTR | NFLX | WELL | NEM |
| 2024-10-31 | IBM | AMT | META | AFL | MSI | NVDA | JNJ | SHW | PLTR | BKNG | BSX | DUK | ICE | MMM | EXR |
| 2024-11-29 | NVDA | META | FIS | VTR | BLK | PANW | BKNG | FISV | SO | DUK | WMB | ANET | MO | BSX | NFLX |
| 2024-12-31 | CRH | MO | TMUS | BKNG | DUK | OKE | GS | WELL | FISV | META | TT | TRV | LULU | WMB | BK |
| 2025-01-31 | PGR | MO | BKNG | KVUE | TRV | LULU | NVDA | FIS | SPG | NFLX | CB | WDAY | META | PYPL | DUK |
| 2025-02-28 | GS | META | JPM | NFLX | BSX | BKNG | PLTR | CRM | MS | PGR | BLK | APO | RJF | CCL | PNC |
| 2025-03-31 | BKNG | GS | JPM | META | FTNT | PGR | C | MS | MO | NFLX | PFE | RCL | QCOM | PANW | HBAN |
| 2025-04-30 | MO | BKNG | GS | META | PGR | KMI | JPM | VZ | BMY | C | AZO | PFE | QCOM | AMT | TMUS |
| 2025-05-30 | GILD | EXC | CNP | KR | NEM | BKNG | UBER | EW | KDP | VZ | COR | TJX | MO | MDLZ | AZO |
| 2025-06-30 | GILD | CME | PM | EXC | MO | BKNG | VZ | CNP | PGR | MNST | RSG | MDLZ | BUD | TJX | ALL |
| 2025-07-31 | BKNG | GILD | UBER | NFLX | CAH | GS | MNST | VZ | JPM | PM | KLAC | PGR | WRB | C | CTVA |
| 2025-08-29 | GILD | BKNG | GS | STX | PWR | NFLX | KLAC | COIN | UBER | C | LRCX | NVDA | CME | AEP | CTVA |
| 2025-09-30 | GILD | BKNG | RCL | COIN | AVGO | C | GS | NFLX | MS | UBER | LVS | BNY | BK | NDAQ | META |
| 2025-10-31 | NEM | COIN | GILD | GS | C | BKNG | MPWR | NSC | AZO | STX | UBER | META | KLAC | RCL | AVGO |
| 2025-11-28 | GILD | KLAC | MPWR | QCOM | GS | ANET | LRCX | MU | STX | C | UBER | TEL | NVDA | NEM | MS |
| 2025-12-31 | AVGO | WELL | GILD | JNJ | WDC | AMGN | COR | XEL | STX | AEP | KLAC | MPWR | C | VZ | ATGE |
| 2026-01-30 | AVGO | WDC | KLAC | C | WELL | GILD | NEM | TJX | MS | GS | JNJ | AMGN | MPWR | EA | TRV |
| 2026-02-27 | GOOG | GILD | KLAC | AVGO | MPWR | WDC | GS | GOOGL | MU | C | MNST | MS | JNJ | USB | STX |
| 2026-03-31 | GILD | GOOG | MU | WDC | NEM | MNST | KLAC | AVGO | LRCX | JNJ | AMGN | SPG | PSX | PGR | KVUE |
| 2026-04-30 | GILD | JNJ | PSX | MRK | CF | NEM | KLAC | AMGN | KMI | PGR | CTVA | SPG | APA | MU | KVUE |
| 2026-05-29 | GILD | PSX | JNJ | NEM | USB | WMB | KLAC | AMGN | CF | KMI | CASY | COP | SPG | FTI | ALL |
| 2026-06-26 | WDC | PSX | MCHP | ADI | MU | GILD | KLAC | VLO | SPG | GS | AES | AVGO | MS | BK | ADM |
Scoring script (python)
FORMULA_NAME = "Recovery Quality Contrarian 52-Week Hybrid (Relay Arbitration, v1152)"
LOGIC_VARIANT_COUNT = 3
NOTES = """mode=explore; family=recovery-quality-contrarian-52w-hybrid
This variant keeps the parent family core but changes the arbitration structure. Instead of letting one sleeve dominate by regime, it uses a relay: contrarian depth nominates candidates, repair strength confirms whether the selloff is healing, and quality plus tradability decide whether a conflict is an early turnaround or a falling knife. In bull tapes the relay prefers shallower repaired leaders off their highs; in mixed tapes it requires balanced agreement between drawdown and repair; in risk-off it only advances rebounds that also show durability, lower volatility, and reliable liquidity.
Deliberate metric coverage: active momentum metrics are return_1m_pct, return_6m_pct, momentum_12_1_pct; active trend/recovery metrics are from_52w_high_pct and from_200d_ma_pct; active volatility metric is realized_vol_3m; active liquidity metrics are avg_daily_volume_3m, avg_daily_dollar_volume_3m, trading_days_3m; active income metrics are dividend_yield_ttm_pct and dividend_ttm; active valuation metrics are forward_pe and peg; active growth metrics are operating_income_growth_pct, free_cash_flow_growth_pct, and forward_eps; active quality metrics are operating_margin_pct and free_cash_flow_margin_pct; active size metric is market_cap.
Deliberate weight-0 metrics this run: return_3m_pct, return_12m_pct, pe, eps_growth_pct, revenue_growth_pct, shares_outstanding, close, adj_close, high_52w, ma_200d, eps_ttm, revenue_ttm, operating_income_ttm, free_cash_flow_ttm. Correlated momentum fields are thinned, raw level fields stay off, and sparse fundamentals are normalized by present weight so missing data does not automatically zero a stock.
"""
_DIRECTION = {
"return_1m_pct": -1,
"return_6m_pct": 1,
"momentum_12_1_pct": 1,
"from_52w_high_pct": -1,
"from_200d_ma_pct": 1,
"realized_vol_3m": -1,
"avg_daily_volume_3m": 1,
"avg_daily_dollar_volume_3m": 1,
"trading_days_3m": 1,
"dividend_yield_ttm_pct": 1,
"dividend_ttm": 1,
"forward_pe": -1,
"peg": -1,
"operating_income_growth_pct": 1,
"free_cash_flow_growth_pct": 1,
"forward_eps": 1,
"operating_margin_pct": 1,
"free_cash_flow_margin_pct": 1,
"market_cap": -1,
}
def _to_number(value):
if value is None or value is False or value is True:
return None
try:
number = float(value)
except Exception:
return None
if number != number:
return None
return number
def _get_symbol(stock):
for key in ("symbol", "ticker", "name"):
value = stock.get(key)
if value:
return str(value)
return None
def _clip(value, low, high):
if value < low:
return low
if value > high:
return high
return value
def _percentile_ranks(stocks, metric, direction):
pairs = []
for stock in stocks:
symbol = _get_symbol(stock)
if not symbol:
continue
value = _to_number(stock.get(metric))
if value is None:
continue
pairs.append((symbol, value * direction))
ranks = {}
count = len(pairs)
if count == 0:
return ranks
pairs.sort(key=lambda item: item[1])
if count == 1:
ranks[pairs[0][0]] = 1.0
return ranks
index = 0
while index < count:
end = index
current = pairs[index][1]
while end + 1 < count and pairs[end + 1][1] == current:
end += 1
rank = ((index + end) * 0.5) / (count - 1.0)
while index <= end:
ranks[pairs[index][0]] = rank
index += 1
return ranks
def _weighted_score(symbol, rank_map, weights, neutral=0.5):
total = 0.0
used = 0.0
for metric, weight in weights.items():
metric_ranks = rank_map.get(metric, {})
if symbol not in metric_ranks:
continue
total += metric_ranks[symbol] * weight
used += weight
if used <= 0.0:
return neutral
return total / used
def _regime_branch(regime, ctx):
text = ""
if regime is not None:
text += str(regime).lower() + " "
if ctx is not None:
regime_hint = ctx.get("regime") if isinstance(ctx, dict) else None
if regime_hint is not None:
text += str(regime_hint).lower() + " "
if (
"risk_off" in text
or "risk-off" in text
or "bear" in text
or "defensive" in text
or "drawdown" in text
or "panic" in text
):
return "risk_off"
if (
"bull" in text
or "risk_on" in text
or "risk-on" in text
or "uptrend" in text
or "strong" in text
):
return "bull"
return "transition"
def score_universe(stocks, regime, ctx):
rank_map = {}
for metric, direction in _DIRECTION.items():
rank_map[metric] = _percentile_ranks(stocks, metric, direction)
contrarian_weights = {
"from_52w_high_pct": 0.44,
"return_1m_pct": 0.16,
"forward_pe": 0.12,
"peg": 0.12,
"market_cap": 0.16,
}
repair_weights = {
"from_200d_ma_pct": 0.30,
"return_6m_pct": 0.24,
"momentum_12_1_pct": 0.18,
"operating_income_growth_pct": 0.16,
"forward_eps": 0.12,
}
durability_weights = {
"realized_vol_3m": 0.22,
"operating_margin_pct": 0.24,
"free_cash_flow_margin_pct": 0.20,
"dividend_yield_ttm_pct": 0.18,
"dividend_ttm": 0.16,
}
liquidity_weights = {
"avg_daily_dollar_volume_3m": 0.46,
"avg_daily_volume_3m": 0.28,
"trading_days_3m": 0.26,
}
growth_value_weights = {
"operating_income_growth_pct": 0.28,
"free_cash_flow_growth_pct": 0.24,
"forward_eps": 0.16,
"forward_pe": 0.18,
"peg": 0.14,
}
branch = _regime_branch(regime, ctx)
scores = {}
for stock in stocks:
symbol = _get_symbol(stock)
if not symbol:
continue
contrarian = _weighted_score(symbol, rank_map, contrarian_weights)
repair = _weighted_score(symbol, rank_map, repair_weights)
durability = _weighted_score(symbol, rank_map, durability_weights)
liquidity = _weighted_score(symbol, rank_map, liquidity_weights)
growth_value = _weighted_score(symbol, rank_map, growth_value_weights)
disagreement = abs(contrarian - repair)
knife_risk = contrarian * (1.0 - repair) * (1.0 - durability)
balanced_relay = contrarian if contrarian < repair else repair
conflict_penalty = disagreement * (1.0 - durability)
shallow_repair_sweet_spot = 1.0 - abs(contrarian - 0.64) / 0.64
shallow_repair_sweet_spot = _clip(shallow_repair_sweet_spot, 0.0, 1.0)
if branch == "bull":
base = (
0.34 * repair
+ 0.24 * shallow_repair_sweet_spot
+ 0.16 * growth_value
+ 0.14 * durability
+ 0.12 * liquidity
)
multiplier = 0.82 + 0.26 * durability + 0.12 * liquidity
score = base * multiplier - 0.16 * knife_risk - 0.06 * conflict_penalty
elif branch == "risk_off":
defensive_turn = contrarian * (0.58 * durability + 0.42 * repair)
base = (
0.34 * durability
+ 0.20 * repair
+ 0.18 * defensive_turn
+ 0.16 * liquidity
+ 0.12 * growth_value
)
multiplier = 0.76 + 0.28 * liquidity + 0.18 * durability
score = base * multiplier - 0.22 * knife_risk - 0.08 * disagreement
else:
base = (
0.32 * balanced_relay
+ 0.24 * durability
+ 0.16 * growth_value
+ 0.14 * liquidity
+ 0.14 * contrarian
)
multiplier = 0.78 + 0.30 * durability + 0.10 * repair
score = base * multiplier - 0.10 * conflict_penalty - 0.12 * knife_risk
scores[symbol] = score
return scores