exp_1127

Regime Momentum Recovery Quality Contrarian 52-Week Hybrid (Arbitrated State Relay, v1127)

← All V2 experiments
Relative return
1.159x
Excess vs bench
15.94%
Benchmark
CAPW_UNIV
Rolling windows
179 · monthly
Mean strategy gain
32.65%
Mean benchmark gain
14.08%
Mean excess gain
18.56%
Dispersion (ref)
18.70%
Win-rate vs bench (ref)
89.94%
Worst / best ratio (ref)
0.948x / 1.492x
Logic variants
4
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.
WindowStrategyBenchmarkRatio
2006-07-03 … 2011-06-30 9.45% 2.22% 1.071x
2011-07-01 … 2016-06-30 24.84% 13.74% 1.098x
2016-07-01 … 2021-06-30 48.41% 20.63% 1.230x
2021-07-01 … 2026-06-26 75.20% 15.48% 1.517x
All rolling windows — the objective set (equal-weighted mean ratio)
Strategy Benchmark (CAPW_UNIV) Excess
2006200720082009201020112012201320142015201620172018201920202021 -20%0%20%40%60%80%
rolling 5y windows, monthly step — 179 windows · mean ratio 1.159x · beat benchmark in 161/179
#WindowStrategyBenchmarkRatio
1 2006-07-31 … 2011-07-29 6.74% 1.79% 1.049x
2 2006-08-31 … 2011-08-31 6.68% 0.21% 1.065x
3 2006-09-29 … 2011-08-31 6.12% -0.14% 1.063x
4 2006-10-31 … 2011-10-31 4.69% 0.23% 1.045x
5 2006-11-30 … 2011-11-30 4.94% -0.05% 1.050x
6 2006-12-29 … 2011-11-30 4.21% -0.32% 1.045x
7 2007-01-31 … 2012-01-31 1.09% 0.93% 1.002x
8 2007-02-28 … 2012-01-31 0.47% 1.43% 0.991x
9 2007-03-30 … 2012-03-30 1.65% 3.09% 0.986x
10 2007-04-30 … 2012-04-30 -0.32% 2.42% 0.973x
11 2007-05-31 … 2012-05-31 -2.37% 0.60% 0.970x
12 2007-06-29 … 2012-06-29 -2.13% 1.92% 0.960x
13 2007-07-31 … 2012-07-31 -1.96% 2.69% 0.955x
14 2007-08-31 … 2012-08-31 -1.15% 2.95% 0.960x
15 2007-09-28 … 2012-09-28 -1.89% 3.20% 0.951x
16 2007-10-31 … 2012-10-31 -2.37% 2.60% 0.952x
17 2007-11-30 … 2012-11-30 -0.88% 3.45% 0.958x
18 2007-12-31 … 2012-12-31 0.05% 3.69% 0.965x
19 2008-01-31 … 2013-01-31 4.12% 5.85% 0.984x
20 2008-02-29 … 2013-02-28 3.03% 6.82% 0.965x
21 2008-03-31 … 2013-03-28 5.37% 7.73% 0.978x
22 2008-04-30 … 2013-04-30 3.03% 7.51% 0.958x
23 2008-05-30 … 2013-04-30 2.16% 7.81% 0.948x
24 2008-06-30 … 2013-06-28 6.62% 9.33% 0.975x
25 2008-07-31 … 2013-07-31 10.46% 10.48% 1.000x
26 2008-08-29 … 2013-07-31 11.48% 10.52% 1.009x
27 2008-09-30 … 2013-09-30 13.84% 11.48% 1.021x
28 2008-10-31 … 2013-10-31 20.63% 15.76% 1.042x
29 2008-11-28 … 2013-10-31 22.20% 17.46% 1.040x
30 2008-12-31 … 2013-12-31 24.63% 18.44% 1.052x
31 2009-01-30 … 2013-12-31 26.20% 20.64% 1.046x
32 2009-02-27 … 2014-01-31 30.27% 21.63% 1.071x
33 2009-03-31 … 2014-03-31 31.70% 20.60% 1.092x
34 2009-04-30 … 2014-04-30 29.30% 19.00% 1.086x
35 2009-05-29 … 2014-04-30 30.11% 18.32% 1.100x
36 2009-06-30 … 2014-06-30 31.47% 19.01% 1.105x
37 2009-07-31 … 2014-07-31 28.73% 17.39% 1.097x
38 2009-08-31 … 2014-08-29 29.64% 17.70% 1.101x
39 2009-09-30 … 2014-09-30 26.85% 16.64% 1.088x
40 2009-10-30 … 2014-09-30 31.77% 17.08% 1.126x
41 2009-11-30 … 2014-11-28 30.02% 16.82% 1.113x
42 2009-12-31 … 2014-12-31 27.88% 16.28% 1.100x
43 2010-01-29 … 2014-12-31 29.99% 17.23% 1.109x
44 2010-02-26 … 2015-01-30 29.38% 15.80% 1.117x
45 2010-03-31 … 2015-03-31 28.89% 15.40% 1.117x
46 2010-04-30 … 2015-04-30 27.02% 15.38% 1.101x
47 2010-05-28 … 2015-04-30 29.11% 17.09% 1.103x
48 2010-06-30 … 2015-06-30 34.08% 17.45% 1.142x
49 2010-07-30 … 2015-06-30 32.19% 16.43% 1.135x
50 2010-08-31 … 2015-08-31 29.62% 15.76% 1.120x
51 2010-09-30 … 2015-09-30 26.33% 13.61% 1.112x
52 2010-10-29 … 2015-09-30 24.72% 13.06% 1.103x
53 2010-11-30 … 2015-11-30 24.12% 15.09% 1.079x
54 2010-12-31 … 2015-12-31 22.28% 13.55% 1.077x
55 2011-01-31 … 2016-01-29 19.53% 11.90% 1.068x
56 2011-02-28 … 2016-01-29 18.73% 11.53% 1.065x
57 2011-03-31 … 2016-03-31 20.68% 12.90% 1.069x
58 2011-04-29 … 2016-04-29 19.00% 12.39% 1.059x
59 2011-05-31 … 2016-05-31 21.69% 12.94% 1.077x
60 2011-06-30 … 2016-06-30 22.67% 13.30% 1.083x
61 2011-07-29 … 2016-07-29 25.11% 14.52% 1.093x
62 2011-08-31 … 2016-08-31 26.23% 15.19% 1.096x
63 2011-09-30 … 2016-09-30 29.70% 16.32% 1.115x
64 2011-10-31 … 2016-10-31 25.97% 14.02% 1.105x
65 2011-11-30 … 2016-11-30 28.71% 14.66% 1.123x
66 2011-12-30 … 2016-12-30 29.29% 14.92% 1.125x
67 2012-01-31 … 2017-01-31 29.91% 14.63% 1.133x
68 2012-02-29 … 2017-02-28 28.21% 14.78% 1.117x
69 2012-03-30 … 2017-02-28 27.88% 14.43% 1.118x
70 2012-04-30 … 2017-04-28 26.30% 14.61% 1.102x
71 2012-05-31 … 2017-05-31 28.04% 15.98% 1.104x
72 2012-06-29 … 2017-05-31 27.72% 15.44% 1.106x
73 2012-07-31 … 2017-07-31 28.42% 15.43% 1.113x
74 2012-08-31 … 2017-08-31 28.47% 15.12% 1.116x
75 2012-09-28 … 2017-08-31 28.05% 14.77% 1.116x
76 2012-10-31 … 2017-10-31 30.66% 16.12% 1.125x
77 2012-11-30 … 2017-11-30 30.65% 16.79% 1.119x
78 2012-12-31 … 2017-12-29 29.35% 16.93% 1.106x
79 2013-01-31 … 2018-01-31 31.83% 17.57% 1.121x
80 2013-02-28 … 2018-02-28 30.69% 16.21% 1.125x
81 2013-03-28 … 2018-02-28 29.05% 15.81% 1.114x
82 2013-04-30 … 2018-04-30 26.92% 14.25% 1.111x
83 2013-05-31 … 2018-05-31 21.30% 14.57% 1.059x
84 2013-06-28 … 2018-05-31 24.57% 14.97% 1.084x
85 2013-07-31 … 2018-07-31 23.14% 14.83% 1.072x
86 2013-08-30 … 2018-07-31 25.34% 15.59% 1.084x
87 2013-09-30 … 2018-09-28 29.15% 15.84% 1.115x
88 2013-10-31 … 2018-10-31 20.48% 12.89% 1.067x
89 2013-11-29 … 2018-10-31 20.05% 12.60% 1.066x
90 2013-12-31 … 2018-12-31 17.49% 9.93% 1.069x
91 2014-01-31 … 2019-01-31 18.70% 12.37% 1.056x
92 2014-02-28 … 2019-02-28 17.22% 12.38% 1.043x
93 2014-03-31 … 2019-03-29 19.14% 12.76% 1.057x
94 2014-04-30 … 2019-04-30 20.14% 13.73% 1.056x
95 2014-05-30 … 2019-04-30 19.78% 13.54% 1.055x
96 2014-06-30 … 2019-06-28 21.22% 12.81% 1.074x
97 2014-07-31 … 2019-07-31 21.50% 13.30% 1.072x
98 2014-08-29 … 2019-07-31 20.87% 12.80% 1.072x
99 2014-09-30 … 2019-09-30 22.13% 12.70% 1.084x
100 2014-10-31 … 2019-10-31 22.16% 12.91% 1.082x
101 2014-11-28 … 2019-10-31 21.29% 12.60% 1.077x
102 2014-12-31 … 2019-12-31 23.99% 14.16% 1.086x
103 2015-01-30 … 2019-12-31 23.38% 14.85% 1.074x
104 2015-02-27 … 2020-01-31 23.35% 14.04% 1.082x
105 2015-03-31 … 2020-03-31 17.16% 8.56% 1.079x
106 2015-04-30 … 2020-04-30 22.98% 11.65% 1.101x
107 2015-05-29 … 2020-05-29 22.87% 12.61% 1.091x
108 2015-06-30 … 2020-06-30 23.92% 13.64% 1.090x
109 2015-07-31 … 2020-07-31 28.07% 14.60% 1.118x
110 2015-08-31 … 2020-08-31 33.77% 18.07% 1.133x
111 2015-09-30 … 2020-09-30 34.64% 17.05% 1.150x
112 2015-10-30 … 2020-10-30 31.70% 14.60% 1.149x
113 2015-11-30 … 2020-11-30 38.59% 17.43% 1.180x
114 2015-12-31 … 2020-12-31 39.08% 18.65% 1.172x
115 2016-01-29 … 2021-01-29 48.69% 19.26% 1.247x
116 2016-02-29 … 2021-02-26 48.23% 19.79% 1.237x
117 2016-03-31 … 2021-03-31 48.63% 19.42% 1.245x
118 2016-04-29 … 2021-03-31 50.36% 19.66% 1.257x
119 2016-05-31 … 2021-05-28 48.71% 20.42% 1.235x
120 2016-06-30 … 2021-06-30 48.24% 21.06% 1.225x
121 2016-07-29 … 2021-06-30 48.41% 20.63% 1.230x
122 2016-08-31 … 2021-08-31 49.20% 21.75% 1.225x
123 2016-09-30 … 2021-09-30 47.39% 20.22% 1.226x
124 2016-10-31 … 2021-10-29 51.61% 22.50% 1.238x
125 2016-11-30 … 2021-11-30 50.19% 21.87% 1.232x
126 2016-12-30 … 2021-11-30 51.85% 21.75% 1.247x
127 2017-01-31 … 2022-01-31 45.23% 20.17% 1.208x
128 2017-02-28 … 2022-02-28 47.42% 18.51% 1.244x
129 2017-03-31 … 2022-03-31 51.96% 19.46% 1.272x
130 2017-04-28 … 2022-03-31 52.82% 19.46% 1.279x
131 2017-05-31 … 2022-05-31 52.11% 15.59% 1.316x
132 2017-06-30 … 2022-06-30 45.66% 13.08% 1.288x
133 2017-07-31 … 2022-07-29 47.15% 15.16% 1.278x
134 2017-08-31 … 2022-08-31 47.73% 13.72% 1.299x
135 2017-09-29 … 2022-08-31 47.74% 13.56% 1.301x
136 2017-10-31 … 2022-10-31 46.04% 11.86% 1.305x
137 2017-11-30 … 2022-11-30 45.78% 12.52% 1.296x
138 2017-12-29 … 2022-11-30 46.38% 12.46% 1.302x
139 2018-01-31 … 2023-01-31 41.55% 11.01% 1.275x
140 2018-02-28 … 2023-02-28 42.36% 11.03% 1.282x
141 2018-03-29 … 2023-02-28 43.59% 11.72% 1.285x
142 2018-04-30 … 2023-04-28 42.81% 13.01% 1.264x
143 2018-05-31 … 2023-05-31 44.25% 12.95% 1.277x
144 2018-06-29 … 2023-05-31 44.96% 13.01% 1.283x
145 2018-07-31 … 2023-07-31 48.50% 14.67% 1.295x
146 2018-08-31 … 2023-08-31 44.30% 13.51% 1.271x
147 2018-09-28 … 2023-08-31 43.94% 13.56% 1.268x
148 2018-10-31 … 2023-10-31 42.16% 12.60% 1.263x
149 2018-11-30 … 2023-11-30 43.97% 14.58% 1.256x
150 2018-12-31 … 2023-12-29 52.19% 17.26% 1.298x
151 2019-01-31 … 2024-01-31 50.41% 16.27% 1.294x
152 2019-02-28 … 2024-01-31 49.77% 15.94% 1.292x
153 2019-03-29 … 2024-03-28 58.73% 17.50% 1.351x
154 2019-04-30 … 2024-04-30 56.53% 15.50% 1.355x
155 2019-05-31 … 2024-05-31 59.86% 18.12% 1.353x
156 2019-06-28 … 2024-06-28 57.61% 17.99% 1.336x
157 2019-07-31 … 2024-07-31 54.08% 17.70% 1.309x
158 2019-08-30 … 2024-08-30 52.65% 18.41% 1.289x
159 2019-09-30 … 2024-09-30 58.19% 18.65% 1.333x
160 2019-10-31 … 2024-10-31 61.32% 17.87% 1.369x
161 2019-11-29 … 2024-11-29 66.97% 18.64% 1.407x
162 2019-12-31 … 2024-12-31 61.45% 17.62% 1.373x
163 2020-01-31 … 2025-01-31 64.65% 18.07% 1.395x
164 2020-02-28 … 2025-02-28 63.76% 19.00% 1.376x
165 2020-03-31 … 2025-03-31 63.00% 19.24% 1.367x
166 2020-04-30 … 2025-04-30 60.37% 16.49% 1.377x
167 2020-05-29 … 2025-04-30 59.46% 15.80% 1.377x
168 2020-06-30 … 2025-06-30 67.59% 18.19% 1.418x
169 2020-07-31 … 2025-07-31 64.98% 17.87% 1.400x
170 2020-08-31 … 2025-08-29 60.75% 16.69% 1.378x
171 2020-09-30 … 2025-09-30 63.46% 18.57% 1.379x
172 2020-10-30 … 2025-09-30 66.58% 19.43% 1.395x
173 2020-11-30 … 2025-11-28 61.14% 17.77% 1.368x
174 2020-12-31 … 2025-12-31 64.89% 16.92% 1.410x
175 2021-01-29 … 2025-12-31 59.68% 17.20% 1.363x
176 2021-02-26 … 2026-01-30 63.69% 17.04% 1.399x
177 2021-03-31 … 2026-03-31 63.42% 14.07% 1.433x
178 2021-04-30 … 2026-04-30 71.94% 16.03% 1.482x
179 2021-05-28 … 2026-04-30 73.34% 16.22% 1.492x
Notes
mode=explore; family=regime-momentum-recovery-quality-contrarian-52w-hybrid New hybrid family that combines the strongest orthogonal edges from regime-momentum-quality-value, recovery-quality-contrarian-52w-hybrid, and contrarian-52w into a four-branch arbitration system rather than a blended average. In strong tapes, repaired names with real momentum are allowed to lead; in mixed tapes, quality-backed recovery gets priority and deep drawdown names must prove trend repair before they can outrank; in risk-off tapes, only durable low-vol names with tradability and modest value support survive; in washed-out rebound states, contrarian entries are allowed back in, but only when short-term repair is visible and the stock is not simply a falling knife. Conflicts between momentum and contrarian signals are resolved explicitly through stock-state gates based on 52-week drawdown, 200-day distance, and 3-month return. Deliberate metric coverage this run: momentum uses 12_1 plus 6m in leadership branches and 3m only for rebound confirmation; trend/recovery uses both 200d distance and 52-week-high distance in every branch; volatility is active only in defensive and rebound branches; liquidity uses trading_days plus dollar volume while share volume is deliberately zeroed; income uses dividend yield only in the defensive branch; valuation uses forward_pe and peg as a selective support block rather than a global anchor; growth uses operating-income growth and free-cash-flow growth while revenue/eps growth are deliberately zeroed this run; quality uses operating margin and free-cash-flow margin across non-pure-momentum branches; size uses market_cap only as a modest bull-rebound tilt. Deliberate weight-0 metrics this run: return_1m_pct, return_12m_pct, avg_daily_volume_3m, pe, revenue_growth_pct, eps_growth_pct, forward_eps, shares_outstanding, close, adj_close, high_52w, ma_200d, eps_ttm, revenue_ttm, operating_income_ttm, free_cash_flow_ttm.
Lesson notes
#837 · degrade · relative_return Δ -0.2691 · parent exp_1123 · Jul 21, 2026 · auto/explore; benchmark CAPW_UNIV
explore/regime-momentum-recovery-quality-contrarian-52w-hybrid: relative_return 1.1594x (delta -0.2691 vs exp_1123); win-rate 89.9441%, worst-window 0.947533, dispersion 18.6971%.
Monthly picks — top stocks selected each month (whole timeline)
timeline — 240 months · top 15 each
Month 123456789101112131415
2006-07-31 MNST ATI GRMN EXPD AKAM TEX ADM FTI STLD NUE LVS ILMN MTW SLG CMI
2006-08-31 ILMN GRMN AKAM NVDA LVS ADM AT MRK SLG MTW BXP CTSH EME FCX DDS
2006-09-29 ILMN AKAM LVS T MRK BKNG CTSH AT DDS AAPL GRMN INCLF ORCL MAY KSS
2006-10-31 AKAM ILMN AT BKNG MRK ALGN GRMN INCLF ORCL ATI NVDA MAY T TEX AAL
2006-11-30 ICE AKAM ILMN ALGN NVDA AT ATI REGN LVS BMET ORCL SLG KMX DECK CTSH
2006-12-29 ICE MAY AKAM NVDA ATI WYNN ALGN ILMN AT EQIX TEX EOP KMX MTW LVLT
2007-01-31 ICE MAY AT LVS ATI MGM WYNN BMET AKAM KMX CBRE BKNG CSCO ALXN GS
2007-02-28 ICE WYNN ATI GT MGM AKAM CBRE TEX KMX ALGN STLD AT GS SPG EOP
2007-03-30 ICE CF MGM MAY ON GT ATI WYNN MOS ALGN BKNG NRG MAT TEX VMC
2007-04-30 CF ICE MOS ATI GT MAY TEX PCAR CMI ANDV ALGN MGM STLD MAT INCY
2007-05-31 ICE ON AMZN GT CF CMI ANDV ALGN MA BKNG CLF PWR MOS STLD NRG
2007-06-29 CLF AMZN ANDV GT NRG ICE MGM MA MOS AAPL DLX MLM NOV CF CMI
2007-07-31 AMZN CF KMG AAPL AXON MOS MA BKNG CLF CE MTW TEX GME AL DJ
2007-08-31 AXON AMZN FCX DECK ISRG AAPL NOV KMG CMI CF MOS GME GRMN AL NVDA
2007-09-28 NOV WYNN CMI AMZN GRMN AXON GME CF MOS FCX AL ISRG NVDA AAPL BKNG
2007-10-31 GRMN AMZN NOV WYNN FTI MOS LVS NVDA AAPL FLR ISRG MA CMI AXON CF
2007-11-30 GRMN NOV AMZN CF FTI AAPL WYNN FLR FSLR MOS ISRG FCX AL BKNG GME
2007-12-31 ISRG FSLR CF NOV BKNG MOS FLR AAPL DECK J MA CMG CNX GRMN AMZN
2008-01-31 FSLR MOS CF ISRG BKNG ESRX MA PRGO CNX CMG J DECK WDC OI BG
2008-02-29 FSLR CF BKNG MOS CNX CLF INCY MA RRC ILMN OI J OXY WDC PRGO
2008-03-31 MOS FSLR CF BKNG ILMN MA CLF CNX RRC APA FLS OI MEE PRGO STLD
2008-04-30 CF MOS MA FSLR CNX CLF RRC FLS BKNG STLD CSX OI ILMN WDC HP
2008-05-30 MA MOS CF CLF CNX RRC MEE CSX HP WDC FLS APA BTUUQ ESV X
2008-06-30 CLF MOS CF MA CNX HP MEE X CTRA BTUUQ ESV CSX APOL BCR WWY
2008-07-31 CLF MEE HP CF MOS BTUUQ ESV BCR APOL FLS ATGE FSLR X WWY SWN
2008-08-29 CLF ESV BCR APOL ATGE CEPH CF BTUUQ SWN SRCL CELG MEE HRS FSLR DF
2008-09-30 BCR APOL ATGE CEPH SWN SRCL ESV ROH CELG HRS FDO DF ACS FI COG
2008-10-31 BCR MRSH ROH SWN CELG FDO DF TFC FI WWY CHD BRL WFC GIS STE
2008-11-28 DLTR BCR ROH SWN BRL DF CASY BBT MCD CHD SJM WMT GIS AMGN TSCO
2008-12-31 DLTR BRL SHW MCD HRB AMGN BBT VRTX AJG UAL NFLX FHN WRB ALK HUM
2009-01-30 DLTR BRL BMY GILD ROH VRTX SJM ALK SWN WRB DGX AZO LDOS EW NFLX
2009-02-27 VRTX PCG DLTR AZO ORLY NFLX AXON TDG ANDV VTRS ALK ROH ADM TMUS NVDA
2009-03-31 DLTR VTRS AAP ROH AZO EW PCG NFLX ORLY AKAM MU ADM CMG NVDA CF
2009-04-30 NEM AAP VTRS MNST BR AZO NFLX ORLY EW ROH ROST TYL VRTX DLTR FHN
2009-05-29 DRI AN NFLX AAP MKTX ROST DHI AZO MNST ORLY TYL FHN EW KSS DLTR
2009-06-30 F AN PALM FFIV WBD TLAB PENN NFLX GPS ESRX ROST CCU KDP AAP EW
2009-07-31 F AN PALM TPR SWKS KMX MU WBD ULTA FFIV TDC CMG ICE FIS KDP
2009-08-31 F CAR MU PALM EXPE BLDR BKNG WDC SNDK AN GMCR CTSH TPR SWKS ULTA
2009-09-30 FMCC FNMA GNW F MTG PALM MU CAR EXPE BKNG ASH STX SW GT SNDK
2009-10-30 GNW HIG CAR FCX STX BC SANM PALM BKNG EXPE ASH FLEX FMCC INCY SSP
2009-11-30 GNW CAR HIG LVS STX BC MAC FLEX BKNG UIS SLG FCX JBL PSKY SSP
2009-12-31 BKNG AMD KMG DDS GNW FCX WLL UIS F LPX MU CAR SSP DD THC
2010-01-29 AMD BKNG SLG LVS JBL STX MU F SSP MAC KMG GNW DDS BC CLF
2010-02-26 AMD F GNW JBL UIS MTW NYT STX DD WLL INCY DAL CLF ULTA UAL
2010-03-31 UAL SANM CLF AAL F GNW MAC AMD DDR LVS INCY MTW FFIV WLL DDS
2010-04-30 CLF UAL MTG GNW LVS INCY VIAV AMD DDS SANM LYV BC CAR AAL LPX
2010-05-28 UAL MTG BC ZION VIAV LVS WLL SANM LYV GNW INCY CLF AAL ASH PVH
2010-06-30 LVS AAL UAL ZION CMI AKAM WLL ALK EQR DECK AIV DDS SANM PRGO FFIV
2010-07-30 AIG LVS AKAM UAL FFIV DECK AAL CLF BC EQR NTAP NFLX WLL CMI AVB
2010-08-31 LVS AAL AKAM FFIV CMI NTAP BKNG CLF EQR AVB CTSH ETFC WLL EW CCU
2010-09-30 AKAM LVS AAL WLL BKNG FFIV NTAP CMI BWA EQR EW CCU NEM ETFC CTSH
2010-10-29 LVS BKNG WLL FFIV CMI AKAM MBI NTAP AAL SWKS ULTA BWA ETFC CTSH IPGP
2010-11-30 LVS BKNG FFIV MBI WLL NTAP EC URI DECK SWKS CMI AKAM AAL BWA ILMN
2010-12-31 LVS FFIV DECK BKNG MBI VRTS WLL URI SWKS CMI FTNT BWA TPR AIG IPGP
2011-01-31 LVS WLL CIEN ETFC FCX BKNG CLF BWA DECK CXO SWKS DDS PXD ACAS XEC
2011-02-28 VIAV MAY URI NVDA ETFC WLL ANDV TEX SWKS NOV DECK ACAS CXO LVS PXD
2011-03-31 VIAV CIEN MAY NOV SWKS ANDV PSKY TER DECK IPGP ETFC URI DDS BKNG VLO
2011-04-29 VIAV ANDV MAY MTW URI CIEN LYB ECHO ETFC HP CXO IPGP BKR BIIB FTNT
2011-05-31 MAY BIIB ANDV CXO VIAV PXD GR FDO KSU GMCR LYB SBNY PETM IPGP CIEN
2011-06-30 IPGP MAY BIIB PSKY DDS GR FTNT KSU ULTA ADS EP WCG PETM GMCR SBNY
2011-07-29 WCG IPGP EP COG CEPH ULTA ABMD PSKY ADS BIIB DDS CTRA GR KSU MNST
2011-08-31 ULTA CTRA CF BKNG WCG EQT CEPH BIIB RRC COG WYNN EP MNST ABMD VFC
2011-09-30 MNST CTRA VFC BIIB DECK EQT DLTR ULTA AAPL RRC PRGO CEPH MKTX MTCH CNP
2011-10-31 RRC CTRA MNST DECK ULTA BIIB EQT VFC DLTR RL TIN AAPL WCG COG EP
2011-11-30 CTRA BIIB RRC VFC MNST ULTA TIN DECK EQT GWW OKE HUM DLTR WCG COG
2011-12-30 CTRA DLTR TIN VFC TJX OKE MNST KLAC GWW PM MA VRTS GNRC FICO HUM
2012-01-31 WCG MNST COG ADS TIN GWW GNRC TJX DLTR ABMD GR KSU CNC EP ULTA
2012-02-29 WCG AAPL LYB COG ADS EQIX GR KSU MOH URI CBS ULTA TYL HFC CNC
2012-03-30 AAPL EQIX LYB ADS BKNG WCG MOH HFC GR KSU CBS URI DFS CNC PETM
2012-04-30 AAPL EQIX BKNG TJX BLDR MNST URI ULTA HFC SHW EC ADS PSKY FICO FFIV
2012-05-31 AAPL EQIX STX TJX EC MNST SHW BLDR BKNG ULTA HOG INCY URI TDG DLTR
2012-06-29 MNST EQIX AAPL SHW STX TJX BLDR DLTR ULTA TDG VRTX DAL BKNG CF ALGN
2012-07-31 EQIX AAPL MNST SHW TJX BLDR ALGN STX BUD EW BIIB STZ SBAC LEN LPX
2012-08-31 STX BLDR EQIX AAPL SHW TJX STZ ALGN BUD PHM SBAC EBAY LPX RF BIIB
2012-09-28 LPX STX VLO KBH ANDV STZ PHM EQIX LYB ALGN SHW AAPL CF MAS LEN
2012-10-31 ANDV KBH LYB STZ SHW LEN ALL LPX PHM VLO EQIX BUD SBAC AOS BLDR
2012-11-30 KBH GNRC ANDV PHM STZ LYB LPX LEN BAC EBAY PVH BLDR BBBY SBAC MAS
2012-12-31 KBH BAC BBBY GNRC ANDV LYB PVH LPX PHM TEX STX APTV STZ EMN MTW
2013-01-31 BAC LPX LEN PHM AXON ANDV KBH HCA GNRC DXC BBBY LYB TEX THC BLDR
2013-02-28 KBH GNRC DAL LPX THC HCA PHM BAC ANDV LYB MAS CAR CTRA GS MS
2013-03-28 APO TEX KBH CTRA STZ LPX AAL HRB ANDV THC CPAY DXC GNRC VLO HCA
2013-04-30 FNMA FMCC ANDV THC HRB CTRA GNW KBH FSLR DXC MTG HCA BIIB ALK CPAY
2013-05-31 FNMA FMCC KBH MTG APO FSLR ANDV BX THC VRTS WDC CTRA KKR VLO STZ
2013-06-28 FNMA FSLR FMCC CAR BIIB CPAY APO MTG WDC BX STZ OMX GNW BSX EA
2013-07-31 FNMA FSLR FMCC WDC CAR GNW EA MU MTG DXCM ILMN OMX BBBY APTV BSX
2013-08-30 MTG TRIP BBBY DAL FNMA SVU GNW FMCC BSX LYV META EA REGN CSGP OMX
2013-09-30 GME META MTG BBBY TRIP EA FNMA FMCC DAL BSX FL OMX GT ILMN MGM
2013-10-31 META FNMA FMCC GT BSX INCY CIEN FANG MTG DXCM OMX TSLA BKNG MGM DAL
2013-11-29 META INCY FANG PBI FNMA ALGN AXON DAL FL OMX WEN BKNG GT TRIP AAL
2013-12-31 FNMA META FMCC PBI DECK AAL DAL INCY AXON FANG BBY MU BKNG ALGN FLT
2014-01-31 FNMA FMCC MGM DAL META DECK ILMN STZ MU INCY AAL KATE AXON FLT ALGN
2014-02-28 ILMN META INCY MU TKO AAL BIIB AXON MGM SMCI DAL FNMA FRX KATE FLT
2014-03-31 ILMN FNMA FMCC INCY FSLR FRX DXCM META TKO MGM VTRS MU AYI TPL BX
2014-04-30 FNMA FMCC ILMN MGM VTRS NXPI TKO FRX HP TSN META MU URI FANG FSLR
2014-05-30 ILMN FNMA META FMCC MU HP NXPI TSN WLL SWKS URI DD FRX SMCI NBR
2014-06-30 META SWKS FNMA TRGP FANG FMCC URI MU ILMN FRX WLL DAL EA NXPI NBR
2014-07-31 MU FANG TRGP FNMA NBR NFX SWKS FMCC CAR NXPI URI WMB EOG META WLL
2014-08-29 MU FANG TRGP CAR SWKS GILD WMB HCA NBR TWX FSLR LYB NFX NXPI GMCR
2014-09-30 TPL GILD HCA UHS SWKS NXPI WMB LYB MU THC LUV TRGP MNST STLD URI
2014-10-31 SIAL SWKS GILD HCA MU MNST ILMN EW GMCR LUV PANW WMB CNC SMCI MMI
2014-11-28 SWKS MNST SMCI MMI EW NXPI MU GMCR SIAL LUV PANW EA LRCX INCY IRM
2014-12-31 EW SWKS MNST INCY PANW SIAL EA SMCI ZTS CNC DXCM ANDV SAPE IRM RCL
2015-01-30 EW SWKS EA MNST AXON ALK KR RCL MAC PANW CNC MMI KMX IRM ULTA
2015-02-27 AXON KR ANDV ALK SWKS EA MNST SMCI EW CNC HSP PANW MAC UAL LUV
2015-03-31 SWKS INCY ANDV EA MNST DLTR EW KR PANW CNC ALK COR HUM BIIB NXPI
2015-04-30 SWKS INCY CNC PAYC KR PANW ANDV MNST NXPI EA DLTR CI EPAM SSP HUM
2015-05-29 AXON SWKS BLDR VTRS INCY PANW PAYC EA CNC HSP HUM KMG KR ELV COR
2015-06-30 HUM SWKS PANW INCY AET CI ELV HSP EA VTRS GILD DXCM AXON BLDR CNC
2015-07-31 CI PANW BTUUQ INCY COTY EA CNC AET HUM MNST IBKR HSP ABMD MOH DXCM
2015-08-31 EA PANW INCY IBKR SBUX DXCM ALK AYI MOH HSP ABMD CI COTY FIX ULTA
2015-09-30 INCY DXCM EA TKO BLDR PANW SBUX AAP ANDV ALK ABMD FIX HSP EVHC CZR
2015-10-30 INCY SBUX EA ABMD ANDV AAP DXCM EQIX FIX COTY GPN CZR CVC AMZN VLO
2015-11-30 ANDV GOOG GPN ABMD VLO AMZN MAS TYL AYI FIX ATVI EQIX STZ VRSN EVHC
2015-12-31 GOOG GPN VRSN ANDV AYI ARG ABMD AMZN TYL CVC CZR VLO FIX ATVI MAS
2016-01-29 ABMD FSLR GOOG EQIX TSN STZ GE ATVI ARG MKTX CZR AVGO TAP NDAQ NVDA
2016-02-29 TSN EQIX ABMD DLR KMB ATO FSLR AWK EW NI MKTX NDAQ STZ T KDP
2016-03-31 TSN MAT FSLR KLAC EQIX DLR GE ATO T NI ABMD PM ARG MKTX AWK
2016-04-29 TSN MAT EW DLR ABMD AWK EVRG NI AVGO ULTA MKTX CZR ARG T STZ
2016-05-31 ULTA DLR EW MTW ABMD EVRG AWK WB TSN EQIX CZR NEM MDR MKTX STJ
2016-06-30 ALB DXC DLR ULTA AWK EQIX STJ EVRG WB WCG MTW MDR MKTX MLM NI
2016-07-29 DXC OKE ALB CLF WB DLR ULTA IRM NFX WCG TSN MDR WOR STLD EW
2016-08-31 CLF ULTA ALB DXC NEM WB WCG JOY OKE SIVB ALGN LLTC WOR XEC CMA
2016-09-30 CLF WB NVDA AMD OKE NEM CNX WCG GEN X DXC VEEV SIVB JOY XEC
2016-10-31 WB LITE TPL HPE DXC GEN NVDA OKE VEEV X NAV WPX JOY CMA MRVL
2016-11-30 CLF WB LITE WOR NVDA STLD GEN TPL X MRVL CNX HPE OKE COHR DXC
2016-12-30 CLF FNMA FMCC NVDA STLD NBR RF TRGP COHR SLM AMD MS LITE TEX ZION
2017-01-31 NBR WB FMCC CSX NVDA FNMA CFG ZION STLD MS KEY RF FITB AMD TRGP
2017-02-28 CLF NVDA RF CFG STLD MS CSX LNC TPL COHR DXC SLM TRGP NBR KEY
2017-03-31 INCY CSX RF BAC NVDA MS CFG COHR DXC PNC KEY X GS SLM JPM
2017-04-28 INCY BAC CSX DXC AMAT NVDA AMD CFG FMC SLM VIAV X ALGN MS SWKS
2017-05-31 WB CSX ADSK TTWO LRCX WDC XYZ AMAT VEEV LITE NVDA ALGN KMG APO AVGO
2017-06-30 WB NVDA XYZ LITE TTWO ADSK VEEV LRCX CSX AMAT WDC BCR ALGN APO AVGO
2017-07-31 LITE WB XYZ ALGN NVDA AMAT LRCX TTWO ADSK VEEV VRTX PYPL KMG KBH IPGP
2017-08-31 XYZ VRTX NRG TTWO ALGN WB LRCX NVDA RCL BA ADSK NOW IPGP FMC EA
2017-09-29 WB VRTX NVDA XYZ LRCX TTWO ALGN NRG AMAT BA IPGP ADSK FMC RCL TTD
2017-10-31 WB NRG MU XYZ ALGN TTWO LRCX AMAT NVDA MTW BA LITE TTD IPGP NVR
2017-11-30 XYZ BBBY WB MU TTWO NRG IPGP ALGN LRCX NVDA FSLR ANET NVR ON PODD
2017-12-29 XYZ BBBY ALGN WB TTWO IPGP MU FSLR NRG NVDA MRVL ANET TKO CZR IBKR
2018-01-31 BBBY ALGN XYZ WB FSLR IPGP MU KBH TTWO EC TROW ANET CPRI ON PENN
2018-02-28 BBBY XYZ ALGN EC FSLR ANET MU CPRI WB IPGP NKTR NOW ON NVDA TROW
2018-03-29 XYZ MU NKTR ANET ALGN NOW WB FSLR IBKR BA IPGP ABMD ON DDS PANW
2018-04-30 NKTR XYZ CVNA GWW NOW FSLR PANW ABMD NTAP MU ANET HET DDS WYNN EC
2018-05-31 NKTR MU XYZ SEDG ABMD ETSY EC PANW ALGN ANDV MTCH GWW NOW TKO CVNA
2018-06-29 XYZ ALGN NKTR MU THC AXON EC ABMD ETSY PANW RL NOW TKO CPRT GDDY
2018-07-31 XYZ ALGN AXON ETSY TKO ABMD TTD CVNA MU SEDG GWW PANW GDDY ILMN DXCM
2018-08-31 XYZ ABMD AXON GWW TKO ILMN ALGN ETSY THC CVNA MOH HET PANW HCA ANDV
2018-09-28 CVNA XYZ ABMD DXCM AXON ILMN MOH ETSY TKO ALGN HCA HET VEEV ANDV TJX
2018-10-31 XYZ ABMD MOH ETSY DXCM TKO VEEV CVNA HCA AAP HET CLF UIS ESRX SVU
2018-11-30 ABMD HCA MOH DXCM MRK ESRX AAP CVNA HET SVU TKO KDP ETSY MKC AMD
2018-12-31 DXCM HET MRK RHT MKC KDP NRG CIEN HCA AAP MOH BALL WDAY CME VEEV
2019-01-31 DXCM RHT HET AMD CIEN NRG KEYS BALL NOW MOH VEEV WELL WDAY MTCH AVGO
2019-02-28 HET FNMA RHT FMCC CIEN MRK KEYS XLNX NOW AES BALL TDG WDAY NRG ULTA
2019-03-29 RHT HET FNMA FMCC LLY ULTA NOW SSP CIEN KEYS ETSY XLNX AVGO BALL WDAY
2019-04-30 KEYS HET NOW VEEV CVNA FNMA FMCC XLNX ETSY TDG AMD WDAY AZO TSS GRMN
2019-05-31 CVNA VEEV HET NOW MTCH BALL ERIE MSCI AVP FNMA WDAY HSY CDNS TDG AZO
2019-06-28 VEEV CVNA HET NOW MTCH MKTX BALL FNMA FMCC GPN MSCI APD ERIE FDS AVP
2019-07-31 MKTX VEEV ERIE HET CVNA MTCH GPN NOW AVP BALL MSCI CSGP APD HSY MSI
2019-08-30 HET VEEV MKTX BALL HSY MTCH ENPH SBAC FICO CSGP TDG TSN EW AVP GPN
2019-09-30 HET ENPH MKTX HSY BALL TSN KLAC PODD FNMA CSGP MLM FMCC CPRT SBAC GNRC
2019-10-31 PODD HET MKTX KLAC KBH EW BLDR GNRC EQIX SHW ENPH ETR CVNA MLM CPRT
2019-11-29 KLAC HET CVNA PODD MKTX QCOM KBH BLDR WU APO GNRC KEYS TER EW AVP
2019-12-31 PODD HET DXCM CVNA QRVO ENPH KLAC BLDR WU GNRC THC APO ANSS LITE KBH
2020-01-31 QRVO SWKS HET THC APO ANSS LITE DXCM BLDR PODD GNRC CDAY TDG BMY CPRT
2020-02-28 TSLA HET SWKS LITE DXCM ENPH LDOS PODD GNRC QRVO MSCI MSFT NOW TDG ARES
2020-03-31 ENPH TSLA DXCM GEN MSCI UIS BIIB NOW DVA NEM LM SBAC MSFT EQIX GNRC
2020-04-30 ENPH DXCM GEN HUM LLY NEM MSCI EQIX PODD TSLA VEEV KR SBAC DLR CNC
2020-05-29 DXCM ENPH NEM BBBY GEN CNX ODFL HUM WST MRNA LLY NOW TSLA MKTX SWKS
2020-06-30 ENPH DXCM PENN NOW WST NEM CVNA CLX GEN ABBV VEEV MRNA TSLA MKTX MRVL
2020-07-31 ENPH DXCM CVNA NEM TSLA XYZ VEEV WST MRNA GNRC MRVL NOW CLX PENN SWKS
2020-08-31 BBBY PENN XYZ CVNA ENPH RRC DXCM ETSY VEEV WST MRNA TSLA GNRC NOW MRVL
2020-09-30 BBBY XYZ ENPH PENN CRWD CVNA TSLA RRC ETSY GNRC VEEV MRNA WST FDX NOW
2020-10-30 PENN BBBY CVNA XYZ ENPH CRWD FDX TSLA ETSY VEEV NVDA GNRC DDOG GME MRVL
2020-11-30 BBBY MRNA PENN XYZ CVNA GNRC FDX CRWD ENPH ETSY ALGN FSLR TSLA PWR ABMD
2020-12-31 MRNA XYZ PENN CVNA CRWD FSLR FDX ETSY ENPH ALGN ALB GNRC PBI TSLA GME
2021-01-29 CLF MRNA PBI CVNA XYZ ENPH ALB CRWD PENN ALGN GNRC ETSY TUP COHR TSLA
2021-02-26 MRNA PENN CLF GME ENPH CRWD TUP GNRC AXON COHR ALB PBI ALGN PSKY DDS
2021-03-31 DVN NBR CPRI TRIP TPR FANG MRNA GME VIAC GNRC FCX ETSY TPL CLF PENN
2021-04-30 CLF MRNA VIAC TRIP TPL CZR DISCA DISCK WSM LPX NBR BBWI CPRI DDS GME
2021-05-28 CLF TPL LPX GME DDS TPR TDC CAR DISCA BBWI DVN DISCK FCX CPRI MAC
2021-06-30 NUE CAR CLF BBBY MRNA LPX DVN GME COF NBR TPL STLD FCX XEC F
2021-07-30 MRNA DVN GNRC NUE CLF BBWI TRGP RRC CAR COF TPL DDS MTW TDC XEC
2021-08-31 MRNA CLF NUE DDS BBWI BX STLD CAR DVN GME RRC ALB COF TRGP XEC
2021-09-30 MRNA BX NUE ALB SIVB DDS SBNY NAVI DVN IT CAR XEC EPAM RRD MDP
2021-10-29 MRNA RRC DVN CAR BX NUE SBNY APA FANG MRO ALB IT MUR ASO PANW
2021-11-30 CAR MRNA DDS RRC DVN DXCM BX KKR APA M FANG MRO ALB COP DDOG
2021-12-31 CAR DDS BX DVN DDOG AMD PFE NVDA ALB APA MRO SBNY M KKR PANW
2022-01-31 CAR DDS BLDR DVN PFE EOG ON APA LYV COP F FANG MRO PANW DDOG
2022-02-28 CAR DVN COP FANG APA DDS EOG BLDR RRC MRO PANW OXY TRGP MUR ON
2022-03-31 CAR COP OXY DDS CF DVN EOG FANG NUE APA MRO FCX BKR MUR RRC
2022-04-29 CAR OXY EQT CF COP NUE BKR APA NBR DDS DVN KR RRC EOG MCK
2022-05-31 EOG CF OXY APA VLO EQT COP CTRA NUE DVN MOS RRC NBR MCK EXE
2022-06-30 EQT VLO OXY APA CTRA EOG DVN CF MCK COP XOM MRO HP EXE RRC
2022-07-29 VLO OXY CTRA EQT DVN MCK MRO COP EXE RRC CF PXD APA HP DLTR
2022-08-31 CF OXY EQT VLO DVN EXE MCK CTRA COP APA XOM VRTX HRB PXD RRC
2022-09-30 OXY EQT DVN VLO COP CF SMCI MCK MRO EXE HRB FSLR EOG VRTX CAH
2022-10-31 DVN COP OXY MRO FSLR HES HRB CAH TE EOG MCK XOM SMCI CF APA
2022-11-30 FSLR TPL FTI CAH SMCI HES MRK COP FICO ACGL BIIB PCG ODP GPC MPC
2022-12-30 FSLR TPL SMCI COP STLD APA FTI HES CAH MPC PCG BIIB ODP FICO SANM
2023-01-31 FSLR HES STLD SMCI ODP VLO RE MPC FTI UCL ABC DDS ABMD ATI ACGL
2023-02-28 UCL STLD RE SMCI FSLR LVS FTI AXON HES ASO DYN ACGL ABC FICO URI
2023-03-31 UCL FSLR STLD SMCI FTI TEX AXON LVS URI BKNG FICO MTW RE ASO VLO
2023-04-28 FSLR SMCI UCL AXON LVS PHM FICO MTW BLDR BKNG RE DECK ASO COTY ACGL
2023-05-31 SMCI FSLR BLDR PHM FICO GE TKO ANET DECK LW CPRT LVS COTY VRT BKNG
2023-06-30 SMCI PLTR BLDR AVGO PHM VRT PANW MRVL GE JBL CPRT BKNG RCL KLAC DECK
2023-07-31 SMCI PANW BLDR AVGO PLTR VRT PHM JBL BKNG FTI WDAY GE HUBB FSLR MTW
2023-08-31 SMCI PLTR COIN BLDR CVNA PHM VRT AVGO GP RCL DASH BKNG KBH CCL KLAC
2023-09-29 CVNA SMCI PLTR VRT BLDR APP JBL DASH DELL FTI NVDA BKNG PHM APO RCL
2023-10-31 SMCI CVNA APP PLTR JBL DELL VRT FTI ANET DECK LII VST DASH AVGO PANW
2023-11-30 CVNA COIN CRWD VRT DELL FNMA PANW PLTR FMCC APP SMCI FTI DECK WSM NOW
2023-12-29 COIN CVNA CRWD VRT FNMA KKR DELL DASH WSM FMCC APP PHM NOW FICO SMCI
2024-01-31 COIN SMCI CRWD PANW FMCC FNMA FICO DELL VRT APP NVDA WSM ANF ANET X
2024-02-29 SMCI CVNA CRWD COIN PLTR VRT FNMA DELL META NVDA FMCC DASH DECK VST CRM
2024-03-28 SMCI COIN DELL CVNA CRWD FNMA FMCC ADCT VRT APP ANF NVDA VST DASH META
2024-04-30 SMCI COIN NVDA HOOD CVNA CRWD APP FNMA FMCC WSM DELL ADCT VRT DYN DASH
2024-05-31 DELL COIN CVNA SMCI VRT VST NVDA APP FNMA WSM NRG HOOD ANF FMCC DYN
2024-06-28 DELL VST VRT SMCI NVDA COIN NRG CVNA DECK FMCC APP FSLR HOOD CRWD EME
2024-07-31 VST NVDA COIN CVNA HOOD APP ANF KLAC NRG WSM KKR COHR EME THC DYN
2024-08-30 NVDA CVNA LUMN VST APP GDDY FICO THC NRG PBI HWM DYN PLTR PGR IRM
2024-09-30 NVDA PLTR CVNA LUMN VST COHR APP VRT THC PBI HWM TRGP DYN FICO KKR
2024-10-31 VST LUMN PLTR NVDA COHR CVNA HOOD APP FICO HWM KKR THC IRM ECHO VNO
2024-11-29 LUMN VST TPL APP COHR HOOD FMCC CVNA FNMA VRT TRGP AXON PLTR FICO VNO
2024-12-31 APP CVNA VST TPL HOOD AXON LUMN VRT TRGP FICO APO PLTR MRVL COHR FIX
2025-01-31 VST APP TPL FNMA CVNA AXON FMCC HOOD VRT MRVL COIN TRGP TPR CIEN PLTR
2025-02-28 HOOD APP PLTR CVNA IBKR FNMA FMCC VST AXON TPL WSM ALK DASH TPR HWM
2025-03-31 HOOD APP TPR PLTR TPL FNMA FMCC PM CVNA GEV HWM DASH TRGP AXON ETR
2025-04-30 APP HOOD PM TPR FNMA GEV FMCC HWM AXON TTWO DASH PLTR TKO VRSN GME
2025-05-30 APP HOOD CVNA GEV PM HWM PLTR FNMA VRSN GILD AXON TPR CME DASH NRG
2025-06-30 HOOD GEV CVNA FNMA HWM DASH NRG PM AXON VST PLTR CAH JBL APP FMCC
2025-07-31 HOOD GEV FNMA CAR CVNA NRG HWM DASH VST TPR FMCC VRT JBL FIX PLTR
2025-08-29 HOOD CAR GEV APP CVNA VST PLTR UCL COIN FIX LITE SSP JBL NRG TPR
2025-09-30 GEV APP ECHO HOOD FNMA LITE FMCC CVNA AVGO TE CAR FIX UCL COIN TPR
2025-10-31 APP TE ECHO LITE HOOD FMCC NEM CIEN FIX AVGO KLAC WDC STX GLW FNMA
2025-11-28 HOOD ECHO APP LITE TE CIEN LUMN VRT NEM GLW FIX KLAC GOOG WDC MPWR
2025-12-31 LITE WDC FIX LUMN COHR CIEN NEM SSP GLW APP GOOG SANM STX KLAC ECHO
2026-01-30 ECHO WDC NEM KLAC ALB TE LITE COHR CIEN SSP GLW FIX MU GOOG WBD
2026-02-27 TE ECHO LITE WDC COHR GLW KLAC ALB CIEN FIX VRT NEM SSP MU GEV
2026-03-31 COHR LITE GLW WDC CIEN MU VRT ECHO KLAC NEM ALB ATI FIX VIAV LRCX
2026-04-30 COHR LITE CIEN GLW GEV WDC ECHO VRT ALB KLAC MU FIX VIAV APA KEYS
2026-05-29 LITE GLW COHR VRT FIX VIAV CIEN MU GEV ECHO WDC DELL KLAC FLEX NBR
2026-06-26 LITE CIEN WDC DELL HPE COHR VRT FLEX VIAV KLAC FIX MU MRVL GLW SANM
Scoring script (python)
FORMULA_NAME = "Regime Momentum Recovery Quality Contrarian 52-Week Hybrid (Arbitrated State Relay, v1127)"
LOGIC_VARIANT_COUNT = 4
NOTES = """mode=explore; family=regime-momentum-recovery-quality-contrarian-52w-hybrid
New hybrid family that combines the strongest orthogonal edges from regime-momentum-quality-value, recovery-quality-contrarian-52w-hybrid, and contrarian-52w into a four-branch arbitration system rather than a blended average. In strong tapes, repaired names with real momentum are allowed to lead; in mixed tapes, quality-backed recovery gets priority and deep drawdown names must prove trend repair before they can outrank; in risk-off tapes, only durable low-vol names with tradability and modest value support survive; in washed-out rebound states, contrarian entries are allowed back in, but only when short-term repair is visible and the stock is not simply a falling knife. Conflicts between momentum and contrarian signals are resolved explicitly through stock-state gates based on 52-week drawdown, 200-day distance, and 3-month return.
Deliberate metric coverage this run: momentum uses 12_1 plus 6m in leadership branches and 3m only for rebound confirmation; trend/recovery uses both 200d distance and 52-week-high distance in every branch; volatility is active only in defensive and rebound branches; liquidity uses trading_days plus dollar volume while share volume is deliberately zeroed; income uses dividend yield only in the defensive branch; valuation uses forward_pe and peg as a selective support block rather than a global anchor; growth uses operating-income growth and free-cash-flow growth while revenue/eps growth are deliberately zeroed this run; quality uses operating margin and free-cash-flow margin across non-pure-momentum branches; size uses market_cap only as a modest bull-rebound tilt. Deliberate weight-0 metrics this run: return_1m_pct, return_12m_pct, avg_daily_volume_3m, pe, revenue_growth_pct, eps_growth_pct, forward_eps, shares_outstanding, close, adj_close, high_52w, ma_200d, eps_ttm, revenue_ttm, operating_income_ttm, free_cash_flow_ttm."""

BULL_LEADERS = {
    "momentum_12_1_pct": (0.25, +1),
    "return_6m_pct": (0.19, +1),
    "from_200d_ma_pct": (0.17, +1),
    "from_52w_high_pct": (0.08, -1),
    "operating_income_growth_pct": (0.10, +1),
    "free_cash_flow_margin_pct": (0.09, +1),
    "forward_pe": (0.07, -1),
    "avg_daily_dollar_volume_3m": (0.05, +1),
}

MIXED_REPAIR = {
    "from_200d_ma_pct": (0.21, +1),
    "from_52w_high_pct": (0.19, -1),
    "return_3m_pct": (0.13, +1),
    "momentum_12_1_pct": (0.08, +1),
    "operating_margin_pct": (0.12, +1),
    "free_cash_flow_margin_pct": (0.10, +1),
    "free_cash_flow_growth_pct": (0.08, +1),
    "peg": (0.05, -1),
    "trading_days_3m": (0.04, +1),
}

RISK_OFF_DURABLE = {
    "realized_vol_3m": (0.20, -1),
    "from_200d_ma_pct": (0.16, +1),
    "from_52w_high_pct": (0.09, -1),
    "operating_margin_pct": (0.15, +1),
    "free_cash_flow_margin_pct": (0.11, +1),
    "dividend_yield_ttm_pct": (0.07, +1),
    "forward_pe": (0.08, -1),
    "peg": (0.05, -1),
    "trading_days_3m": (0.05, +1),
    "avg_daily_dollar_volume_3m": (0.04, +1),
}

WASHOUT_REBOUND = {
    "from_52w_high_pct": (0.27, -1),
    "from_200d_ma_pct": (0.17, +1),
    "return_3m_pct": (0.15, +1),
    "momentum_12_1_pct": (0.08, +1),
    "realized_vol_3m": (0.09, -1),
    "operating_margin_pct": (0.08, +1),
    "free_cash_flow_growth_pct": (0.07, +1),
    "market_cap": (0.05, -1),
    "avg_daily_dollar_volume_3m": (0.04, +1),
}


def score_universe(stocks, regime, ctx):
    def _safe_float(value):
        if value is None:
            return None
        try:
            value = float(value)
        except (TypeError, ValueError):
            return None
        if value != value:
            return None
        return value

    def _metric_value(stock, metric):
        return _safe_float(stock.get(metric))

    def _regime_name(value):
        if value is None:
            return ""
        return str(value).strip().lower()

    def _percentile_map(universe, metric, direction):
        vals = []
        for stock in universe:
            v = _metric_value(stock, metric)
            if v is not None:
                vals.append(v)
        if not vals:
            return {}

        vals = sorted(vals)
        n = len(vals)
        ranks = {}
        i = 0
        while i < n:
            j = i + 1
            while j < n and vals[j] == vals[i]:
                j += 1
            if n == 1:
                pct = 0.5
            else:
                pct = ((i + j - 1) * 0.5) / (n - 1)
            ranks[vals[i]] = pct
            i = j

        out = {}
        for stock in universe:
            sym = stock.get("symbol")
            if not sym:
                continue
            v = _metric_value(stock, metric)
            if v is None:
                continue
            pct = ranks.get(v, 0.5)
            out[sym] = pct if direction > 0 else 1.0 - pct
        return out

    def _weighted_score(stock, sleeve, rank_cache):
        total = 0.0
        present = 0.0
        sym = stock.get("symbol")
        if not sym:
            return 0.0
        for metric, spec in sleeve.items():
            weight, direction = spec
            if weight <= 0:
                continue
            cache_key = metric + "|" + str(direction)
            metric_ranks = rank_cache.get(cache_key)
            if metric_ranks is None:
                metric_ranks = _percentile_map(stocks, metric, direction)
                rank_cache[cache_key] = metric_ranks
            if sym in metric_ranks:
                total += weight * metric_ranks[sym]
                present += weight
        if present <= 0:
            return 0.0
        return total / present

    def _branch_for(stock, regime_name):
        d52 = _metric_value(stock, "from_52w_high_pct")
        d200 = _metric_value(stock, "from_200d_ma_pct")
        r3 = _metric_value(stock, "return_3m_pct")
        m12 = _metric_value(stock, "momentum_12_1_pct")

        deep_drawdown = d52 is not None and d52 <= -0.22
        repaired_trend = d200 is not None and d200 >= -0.02
        strong_trend = d200 is not None and d200 >= 0.06
        positive_rebound = r3 is not None and r3 >= 0.04
        strong_momentum = m12 is not None and m12 >= 0.0

        risk_words = ("risk", "off", "bear", "defen", "drawdown", "crash")
        bull_words = ("bull", "risk_on", "uptrend", "strong", "momo")
        mixed_words = ("mixed", "neutral", "sideways", "chop", "range")

        is_risk_off = False
        is_bull = False
        is_mixed = False

        for word in risk_words:
            if word in regime_name:
                is_risk_off = True
                break
        if not is_risk_off:
            for word in bull_words:
                if word in regime_name:
                    is_bull = True
                    break
        if not is_risk_off and not is_bull:
            for word in mixed_words:
                if word in regime_name:
                    is_mixed = True
                    break

        if is_risk_off:
            if deep_drawdown and repaired_trend and positive_rebound:
                return "washout_rebound"
            return "risk_off_durable"

        if is_bull:
            if repaired_trend and strong_trend and strong_momentum:
                return "bull_leaders"
            if deep_drawdown and positive_rebound:
                return "washout_rebound"
            return "mixed_repair"

        if is_mixed:
            if deep_drawdown and repaired_trend and positive_rebound:
                return "washout_rebound"
            return "mixed_repair"

        if deep_drawdown and repaired_trend and positive_rebound:
            return "washout_rebound"
        if repaired_trend and strong_momentum:
            return "bull_leaders"
        return "mixed_repair"

    sleeve_map = {
        "bull_leaders": BULL_LEADERS,
        "mixed_repair": MIXED_REPAIR,
        "risk_off_durable": RISK_OFF_DURABLE,
        "washout_rebound": WASHOUT_REBOUND,
    }

    regime_name = _regime_name(regime)
    rank_cache = {}
    scores = {}

    for stock in stocks:
        sym = stock.get("symbol")
        if not sym:
            continue

        branch = _branch_for(stock, regime_name)
        sleeve = sleeve_map[branch]
        base = _weighted_score(stock, sleeve, rank_cache)

        d52 = _metric_value(stock, "from_52w_high_pct")
        d200 = _metric_value(stock, "from_200d_ma_pct")
        r3 = _metric_value(stock, "return_3m_pct")
        vol = _metric_value(stock, "realized_vol_3m")
        opm = _metric_value(stock, "operating_margin_pct")
        fcfm = _metric_value(stock, "free_cash_flow_margin_pct")

        bonus = 0.0

        if branch == "bull_leaders":
            if d200 is not None and d200 > 0.10:
                bonus += 0.035
            if d52 is not None and d52 > -0.12:
                bonus += 0.020
            if r3 is not None and r3 < -0.02:
                bonus -= 0.030

        elif branch == "mixed_repair":
            if d52 is not None and -0.35 <= d52 <= -0.10:
                bonus += 0.040
            if d200 is not None and d200 < -0.08:
                bonus -= 0.045
            if opm is not None and opm < 0:
                bonus -= 0.020

        elif branch == "risk_off_durable":
            if vol is not None and vol > 0.42:
                bonus -= 0.050
            if d200 is not None and d200 < -0.05:
                bonus -= 0.030
            if fcfm is not None and fcfm > 0:
                bonus += 0.020

        elif branch == "washout_rebound":
            if d52 is not None and -0.45 <= d52 <= -0.18:
                bonus += 0.050
            if d200 is not None and d200 < -0.12:
                bonus -= 0.060
            if r3 is not None and r3 < 0:
                bonus -= 0.035

        scores[sym] = base + bonus

    return scores