exp_1110

Sponsored 52-Week Repairs with Regime Arbitration (v1110)

← All V2 experiments
Relative return
1.324x
Excess vs bench
32.40%
Benchmark
CAPW_UNIV
Rolling windows
179 · monthly
Mean strategy gain
51.69%
Mean benchmark gain
14.08%
Mean excess gain
37.61%
Dispersion (ref)
31.16%
Win-rate vs bench (ref)
100.00%
Worst / best ratio (ref)
1.002x / 1.738x
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.
WindowStrategyBenchmarkRatio
2006-07-03 … 2011-06-30 21.43% 2.22% 1.188x
2011-07-01 … 2016-06-30 30.38% 13.74% 1.146x
2016-07-01 … 2021-06-30 103.78% 20.63% 1.689x
2021-07-01 … 2026-06-26 77.03% 15.48% 1.533x
All rolling windows — the objective set (equal-weighted mean ratio)
Strategy Benchmark (CAPW_UNIV) Excess
2006200720082009201020112012201320142015201620172018201920202021 -20%0%20%40%60%80%100%120%
rolling 5y windows, monthly step — 179 windows · mean ratio 1.324x · beat benchmark in 179/179
#WindowStrategyBenchmarkRatio
1 2006-07-31 … 2011-07-29 18.92% 1.79% 1.168x
2 2006-08-31 … 2011-08-31 19.34% 0.21% 1.191x
3 2006-09-29 … 2011-08-31 15.89% -0.14% 1.160x
4 2006-10-31 … 2011-10-31 15.34% 0.23% 1.151x
5 2006-11-30 … 2011-11-30 13.35% -0.05% 1.134x
6 2006-12-29 … 2011-11-30 14.26% -0.32% 1.146x
7 2007-01-31 … 2012-01-31 12.32% 0.93% 1.113x
8 2007-02-28 … 2012-01-31 11.12% 1.43% 1.096x
9 2007-03-30 … 2012-03-30 11.97% 3.09% 1.086x
10 2007-04-30 … 2012-04-30 9.98% 2.42% 1.074x
11 2007-05-31 … 2012-05-31 7.36% 0.60% 1.067x
12 2007-06-29 … 2012-06-29 6.61% 1.92% 1.046x
13 2007-07-31 … 2012-07-31 6.37% 2.69% 1.036x
14 2007-08-31 … 2012-08-31 6.78% 2.95% 1.037x
15 2007-09-28 … 2012-09-28 5.41% 3.20% 1.021x
16 2007-10-31 … 2012-10-31 4.71% 2.60% 1.021x
17 2007-11-30 … 2012-11-30 3.91% 3.45% 1.004x
18 2007-12-31 … 2012-12-31 3.87% 3.69% 1.002x
19 2008-01-31 … 2013-01-31 8.00% 5.85% 1.020x
20 2008-02-29 … 2013-02-28 8.45% 6.82% 1.015x
21 2008-03-31 … 2013-03-28 11.71% 7.73% 1.037x
22 2008-04-30 … 2013-04-30 12.17% 7.51% 1.043x
23 2008-05-30 … 2013-04-30 10.70% 7.81% 1.027x
24 2008-06-30 … 2013-06-28 16.88% 9.33% 1.069x
25 2008-07-31 … 2013-07-31 21.68% 10.48% 1.101x
26 2008-08-29 … 2013-07-31 22.45% 10.52% 1.108x
27 2008-09-30 … 2013-09-30 26.63% 11.48% 1.136x
28 2008-10-31 … 2013-10-31 35.72% 15.76% 1.172x
29 2008-11-28 … 2013-10-31 37.02% 17.46% 1.167x
30 2008-12-31 … 2013-12-31 39.50% 18.44% 1.178x
31 2009-01-30 … 2013-12-31 41.61% 20.64% 1.174x
32 2009-02-27 … 2014-01-31 45.48% 21.63% 1.196x
33 2009-03-31 … 2014-03-31 45.08% 20.60% 1.203x
34 2009-04-30 … 2014-04-30 42.88% 19.00% 1.201x
35 2009-05-29 … 2014-04-30 44.26% 18.32% 1.219x
36 2009-06-30 … 2014-06-30 44.74% 19.01% 1.216x
37 2009-07-31 … 2014-07-31 40.09% 17.39% 1.193x
38 2009-08-31 … 2014-08-29 38.25% 17.70% 1.175x
39 2009-09-30 … 2014-09-30 35.58% 16.64% 1.162x
40 2009-10-30 … 2014-09-30 40.08% 17.08% 1.197x
41 2009-11-30 … 2014-11-28 38.11% 16.82% 1.182x
42 2009-12-31 … 2014-12-31 34.78% 16.28% 1.159x
43 2010-01-29 … 2014-12-31 36.81% 17.23% 1.167x
44 2010-02-26 … 2015-01-30 34.49% 15.80% 1.161x
45 2010-03-31 … 2015-03-31 33.86% 15.40% 1.160x
46 2010-04-30 … 2015-04-30 33.05% 15.38% 1.153x
47 2010-05-28 … 2015-04-30 36.10% 17.09% 1.162x
48 2010-06-30 … 2015-06-30 39.82% 17.45% 1.190x
49 2010-07-30 … 2015-06-30 39.05% 16.43% 1.194x
50 2010-08-31 … 2015-08-31 35.30% 15.76% 1.169x
51 2010-09-30 … 2015-09-30 30.30% 13.61% 1.147x
52 2010-10-29 … 2015-09-30 29.33% 13.06% 1.144x
53 2010-11-30 … 2015-11-30 29.65% 15.09% 1.127x
54 2010-12-31 … 2015-12-31 28.51% 13.55% 1.132x
55 2011-01-31 … 2016-01-29 26.08% 11.90% 1.127x
56 2011-02-28 … 2016-01-29 27.37% 11.53% 1.142x
57 2011-03-31 … 2016-03-31 27.91% 12.90% 1.133x
58 2011-04-29 … 2016-04-29 26.02% 12.39% 1.121x
59 2011-05-31 … 2016-05-31 26.37% 12.94% 1.119x
60 2011-06-30 … 2016-06-30 28.40% 13.30% 1.133x
61 2011-07-29 … 2016-07-29 33.39% 14.52% 1.165x
62 2011-08-31 … 2016-08-31 34.95% 15.19% 1.171x
63 2011-09-30 … 2016-09-30 37.85% 16.32% 1.185x
64 2011-10-31 … 2016-10-31 33.68% 14.02% 1.172x
65 2011-11-30 … 2016-11-30 37.79% 14.66% 1.202x
66 2011-12-30 … 2016-12-30 37.45% 14.92% 1.196x
67 2012-01-31 … 2017-01-31 36.96% 14.63% 1.195x
68 2012-02-29 … 2017-02-28 35.07% 14.78% 1.177x
69 2012-03-30 … 2017-02-28 35.55% 14.43% 1.185x
70 2012-04-30 … 2017-04-28 32.55% 14.61% 1.156x
71 2012-05-31 … 2017-05-31 34.59% 15.98% 1.160x
72 2012-06-29 … 2017-05-31 34.50% 15.44% 1.165x
73 2012-07-31 … 2017-07-31 35.07% 15.43% 1.170x
74 2012-08-31 … 2017-08-31 35.84% 15.12% 1.180x
75 2012-09-28 … 2017-08-31 35.93% 14.77% 1.184x
76 2012-10-31 … 2017-10-31 40.71% 16.12% 1.212x
77 2012-11-30 … 2017-11-30 42.29% 16.79% 1.218x
78 2012-12-31 … 2017-12-29 40.79% 16.93% 1.204x
79 2013-01-31 … 2018-01-31 42.08% 17.57% 1.209x
80 2013-02-28 … 2018-02-28 43.36% 16.21% 1.234x
81 2013-03-28 … 2018-02-28 40.56% 15.81% 1.214x
82 2013-04-30 … 2018-04-30 35.97% 14.25% 1.190x
83 2013-05-31 … 2018-05-31 29.21% 14.57% 1.128x
84 2013-06-28 … 2018-05-31 31.96% 14.97% 1.148x
85 2013-07-31 … 2018-07-31 30.15% 14.83% 1.133x
86 2013-08-30 … 2018-07-31 31.21% 15.59% 1.135x
87 2013-09-30 … 2018-09-28 32.93% 15.84% 1.148x
88 2013-10-31 … 2018-10-31 23.19% 12.89% 1.091x
89 2013-11-29 … 2018-10-31 23.25% 12.60% 1.095x
90 2013-12-31 … 2018-12-31 19.55% 9.93% 1.087x
91 2014-01-31 … 2019-01-31 21.52% 12.37% 1.081x
92 2014-02-28 … 2019-02-28 21.03% 12.38% 1.077x
93 2014-03-31 … 2019-03-29 22.82% 12.76% 1.089x
94 2014-04-30 … 2019-04-30 24.80% 13.73% 1.097x
95 2014-05-30 … 2019-04-30 24.58% 13.54% 1.097x
96 2014-06-30 … 2019-06-28 27.05% 12.81% 1.126x
97 2014-07-31 … 2019-07-31 29.00% 13.30% 1.139x
98 2014-08-29 … 2019-07-31 28.70% 12.80% 1.141x
99 2014-09-30 … 2019-09-30 29.35% 12.70% 1.148x
100 2014-10-31 … 2019-10-31 29.40% 12.91% 1.146x
101 2014-11-28 … 2019-10-31 29.30% 12.60% 1.148x
102 2014-12-31 … 2019-12-31 33.94% 14.16% 1.173x
103 2015-01-30 … 2019-12-31 33.96% 14.85% 1.166x
104 2015-02-27 … 2020-01-31 35.35% 14.04% 1.187x
105 2015-03-31 … 2020-03-31 32.59% 8.56% 1.221x
106 2015-04-30 … 2020-04-30 38.50% 11.65% 1.241x
107 2015-05-29 … 2020-05-29 38.76% 12.61% 1.232x
108 2015-06-30 … 2020-06-30 40.78% 13.64% 1.239x
109 2015-07-31 … 2020-07-31 50.48% 14.60% 1.313x
110 2015-08-31 … 2020-08-31 57.39% 18.07% 1.333x
111 2015-09-30 … 2020-09-30 58.58% 17.05% 1.355x
112 2015-10-30 … 2020-10-30 54.64% 14.60% 1.349x
113 2015-11-30 … 2020-11-30 62.65% 17.43% 1.385x
114 2015-12-31 … 2020-12-31 64.92% 18.65% 1.390x
115 2016-01-29 … 2021-01-29 104.41% 19.26% 1.714x
116 2016-02-29 … 2021-02-26 101.43% 19.79% 1.682x
117 2016-03-31 … 2021-03-31 104.83% 19.42% 1.715x
118 2016-04-29 … 2021-03-31 107.92% 19.66% 1.738x
119 2016-05-31 … 2021-05-28 104.93% 20.42% 1.702x
120 2016-06-30 … 2021-06-30 105.63% 21.06% 1.699x
121 2016-07-29 … 2021-06-30 103.78% 20.63% 1.689x
122 2016-08-31 … 2021-08-31 100.73% 21.75% 1.649x
123 2016-09-30 … 2021-09-30 95.59% 20.22% 1.627x
124 2016-10-31 … 2021-10-29 101.76% 22.50% 1.647x
125 2016-11-30 … 2021-11-30 100.66% 21.87% 1.647x
126 2016-12-30 … 2021-11-30 103.37% 21.75% 1.670x
127 2017-01-31 … 2022-01-31 90.11% 20.17% 1.582x
128 2017-02-28 … 2022-02-28 92.19% 18.51% 1.622x
129 2017-03-31 … 2022-03-31 97.26% 19.46% 1.651x
130 2017-04-28 … 2022-03-31 100.89% 19.46% 1.682x
131 2017-05-31 … 2022-05-31 99.07% 15.59% 1.722x
132 2017-06-30 … 2022-06-30 90.41% 13.08% 1.684x
133 2017-07-31 … 2022-07-29 90.69% 15.16% 1.656x
134 2017-08-31 … 2022-08-31 90.32% 13.72% 1.673x
135 2017-09-29 … 2022-08-31 90.89% 13.56% 1.681x
136 2017-10-31 … 2022-10-31 83.37% 11.86% 1.639x
137 2017-11-30 … 2022-11-30 83.32% 12.52% 1.629x
138 2017-12-29 … 2022-11-30 85.14% 12.46% 1.646x
139 2018-01-31 … 2023-01-31 81.24% 11.01% 1.633x
140 2018-02-28 … 2023-02-28 77.47% 11.03% 1.598x
141 2018-03-29 … 2023-02-28 79.61% 11.72% 1.608x
142 2018-04-30 … 2023-04-28 76.20% 13.01% 1.559x
143 2018-05-31 … 2023-05-31 76.86% 12.95% 1.566x
144 2018-06-29 … 2023-05-31 77.15% 13.01% 1.568x
145 2018-07-31 … 2023-07-31 83.24% 14.67% 1.598x
146 2018-08-31 … 2023-08-31 80.44% 13.51% 1.590x
147 2018-09-28 … 2023-08-31 80.01% 13.56% 1.585x
148 2018-10-31 … 2023-10-31 77.97% 12.60% 1.581x
149 2018-11-30 … 2023-11-30 81.26% 14.58% 1.582x
150 2018-12-31 … 2023-12-29 89.59% 17.26% 1.617x
151 2019-01-31 … 2024-01-31 86.71% 16.27% 1.606x
152 2019-02-28 … 2024-01-31 85.60% 15.94% 1.601x
153 2019-03-29 … 2024-03-28 97.85% 17.50% 1.684x
154 2019-04-30 … 2024-04-30 93.43% 15.50% 1.675x
155 2019-05-31 … 2024-05-31 96.43% 18.12% 1.663x
156 2019-06-28 … 2024-06-28 93.73% 17.99% 1.642x
157 2019-07-31 … 2024-07-31 89.32% 17.70% 1.609x
158 2019-08-30 … 2024-08-30 92.39% 18.41% 1.625x
159 2019-09-30 … 2024-09-30 96.33% 18.65% 1.655x
160 2019-10-31 … 2024-10-31 97.74% 17.87% 1.678x
161 2019-11-29 … 2024-11-29 105.24% 18.64% 1.730x
162 2019-12-31 … 2024-12-31 97.68% 17.62% 1.681x
163 2020-01-31 … 2025-01-31 98.93% 18.07% 1.685x
164 2020-02-28 … 2025-02-28 96.28% 19.00% 1.649x
165 2020-03-31 … 2025-03-31 95.74% 19.24% 1.642x
166 2020-04-30 … 2025-04-30 90.15% 16.49% 1.632x
167 2020-05-29 … 2025-04-30 89.12% 15.80% 1.633x
168 2020-06-30 … 2025-06-30 95.65% 18.19% 1.655x
169 2020-07-31 … 2025-07-31 86.49% 17.87% 1.582x
170 2020-08-31 … 2025-08-29 83.28% 16.69% 1.571x
171 2020-09-30 … 2025-09-30 86.98% 18.57% 1.577x
172 2020-10-30 … 2025-09-30 90.73% 19.43% 1.597x
173 2020-11-30 … 2025-11-28 81.63% 17.77% 1.542x
174 2020-12-31 … 2025-12-31 84.79% 16.92% 1.580x
175 2021-01-29 … 2025-12-31 58.47% 17.20% 1.352x
176 2021-02-26 … 2026-01-30 64.70% 17.04% 1.407x
177 2021-03-31 … 2026-03-31 60.59% 14.07% 1.408x
178 2021-04-30 … 2026-04-30 70.23% 16.03% 1.467x
179 2021-05-28 … 2026-04-30 70.89% 16.22% 1.470x
Notes
mode=explore; family=contrarian-52w-hybrid New hybrid family that combines the champion contrarian-52w repair ladder with the recovery-quality arbitration idea, but changes the structure: instead of blending sleeves at fixed weights, each regime runs a sponsored-repair relay where price-repair candidates earn rank only when the kind of repair matches the regime and the sponsorship evidence is strong enough. Calm bulls reward shallower, trend-confirmed repairs; choppy bulls allow deeper rebounds only with liquidity/profitability sponsorship; risk-off flips the stack and lets durable sponsorship veto fragile repairs. Deliberate metric coverage this run: actively use one momentum cluster (1m, 6m, 12m, and 12_1 in different roles), one recovery cluster (from_52w_high_pct plus from_200d_ma_pct), one volatility check, two liquidity checks, one income check, one valuation cluster (forward_pe plus peg), one growth cluster (revenue_growth_pct plus forward_eps), one quality cluster (operating_margin_pct plus free_cash_flow_margin_pct), and one size tilt. Deliberately weight return_3m_pct, avg_daily_volume_3m, dividend_ttm, pe, eps_growth_pct, operating_income_growth_pct, free_cash_flow_growth_pct, shares_outstanding, close, adj_close, high_52w, ma_200d, eps_ttm, revenue_ttm, operating_income_ttm, and free_cash_flow_ttm at zero this run so the backtest can isolate whether regime-specific sponsorship gating improves on the pure repair ladder.
Lesson notes
#826 · degrade · relative_return Δ -0.1017 · parent exp_758 · Jul 21, 2026 · auto/explore; benchmark CAPW_UNIV
explore/contrarian-52w-hybrid: relative_return 1.3240x (delta -0.1017 vs exp_758); win-rate 100.0%, worst-window 1.001729, dispersion 31.1557%.
Monthly picks — top stocks selected each month (whole timeline)
timeline — 240 months · top 15 each
Month 123456789101112131415
2006-07-31 MNST ILMN GOOGL GOOG XOM ATI BAC ADM AKAM T SLG MRK GS NUE AAPL
2006-08-31 MAY AAPL GOOGL GOOG MNST ATI XOM ILMN ICE AKAM INTC ADM STLD GEN GRMN
2006-09-29 MAY GOOGL GOOG AAPL INTC XOM AKAM ATI MNST T ORCL AAL MSFT ILMN BAC
2006-10-31 MAY AKAM ALGN INTC AAPL ILMN ATI AT GOOG GT GEN UAL GOOGL BKNG EXPD
2006-11-30 MAY MA GOOG ICE GOOGL AKAM REGN INTC AAPL EXPE AT ILMN NDAQ AMZN CRM
2006-12-29 MAY ICE ALGN MA GOOG AT AAPL EXPE AKAM GOOGL ATI CF GT ILMN DCNAQ
2007-01-31 MAY ICE AAPL GT ALGN CF MGM MA AT LVS CSCO EXPE GOOG KBH WYNN
2007-02-28 MAY ICE CF ALGN MGM GT UAL DLX AAPL MA ON FSLR ATI VMC ALB
2007-03-30 MAY CF GT DLX ICE AAPL MGM HP WYNN MAT MOS GOOG MA ANDV CLF
2007-04-30 MAY GT CF ICE ALGN ANDV AMZN MOS CMI DLX OI ON TTWO HP NRG
2007-05-31 MAY GT CLF CF ICE FSLR HES MA AAPL DLX ALGN AMZN OI ANDV MNST
2007-06-29 KMG MAY FSLR CF AL GT MA NOV AAPL AMZN DLX MOS ANDV CLF DECK
2007-07-31 AAPL FSLR AL CF AMZN ALGN JEC KMG MA NOV GOOGL GOOG AXON FCX OI
2007-08-31 AAPL AL AMZN FSLR CF KMG ALGN GRMN ISRG NOV OI GME GOOGL GOOG MA
2007-09-28 AAPL GRMN CF AMZN MOS AL NOV KMG GME MPWR CMG WYNN GOOGL GOOG FTI
2007-10-31 AAPL ISRG MOS CF FSLR GOOGL GOOG CMG AL AMZN GRMN BBBY NOV FTI FCX
2007-11-30 FSLR AAPL ISRG GOOG GOOGL CF MOS AL CMG BKNG JEC WYNN MSFT AMZN GRMN
2007-12-31 FSLR AAPL MOS GOOG GOOGL ISRG CF MSFT OI JEC CMG XOM ESRX PRGO AMZN
2008-01-31 FSLR MOS AAPL CF MSFT ISRG JEC ESRX CNX PRGO GOOG GOOGL BKNG HES MA
2008-02-29 MOS FSLR CF PRGO AAPL CNX RRC OI CLF ILMN XOM MA JEC APA FLS
2008-03-31 FSLR MOS PRGO ILMN CF MEE MA AAPL RRC OI APA CLF BTUUQ DVN FLS
2008-04-30 FSLR MOS AAPL MA CF MEE CLF PRGO ESV ILMN APA SWN RRC BTUUQ XOM
2008-05-30 MEE ESV CLF MOS FSLR AAPL SWN BTUUQ MA BCR CF GOOG HP JCI TTWO
2008-06-30 MEE ESV MOS CLF AAPL SWN BTUUQ FSLR BCR HP CNX APOL ATGE X NBR
2008-07-31 SWN ESV MEE MOS BCR CLF BTUUQ APOL ATGE FSLR DF AAPL CF HRS CEPH
2008-08-29 SWN BCR AAPL ESV DF MEE CLF APOL ATGE FDO CELG BTUUQ CEPH FI ROH
2008-09-30 SWN BCR DF APOL CELG ATGE ESV CEPH FDO HRS ROH FI SRCL ACS HCBK
2008-10-31 SWN BCR DF WWY ROH WMT WFC CHD BRL CLX MRSH DLTR FDO GIS MCD
2008-11-28 SWN BCR DLTR WMT DF BRL ROH CHD MCD CLX KR GIS SHW AMGN SJM
2008-12-31 DLTR XOM AMGN BRL MCD GILD SHW WMT WFC VRTX BMY AZO WRB HRB LDOS
2009-01-30 SWN XOM ROH DLTR VRTX GILD AMGN BRL LDOS MNST SJM NFLX HSY AZO ABT
2009-02-27 XOM VRTX DLTR AZO NFLX VTRS PCG AAP MNST ORLY AAPL GOOG ROH WMT LDOS
2009-03-31 AZO ROH DLTR XOM NFLX VTRS AAP MNST NEM PCG BMY EW DRI BALL ED
2009-04-30 F ROH AN AAPL AZO NFLX GOOG MNST IBM AAP DRI DLTR VTRS BR GOOGL
2009-05-29 F AAPL GOOG AZO AN IBM MNST BKNG FFIV NFLX MS DRI NEM ORLY DLTR
2009-06-30 CAR AAPL ASH GNW GS F STX FCX BAC WDC GOOG PALM ON CE JPM
2009-07-31 CAR F ASH THC GT BLDR STX MTG BAC BC CBRE PALM GNW GGP FITB
2009-08-31 CAR FNMA GNW FMCC AIG LVS LPX UIS BAC SSP ASH F HIG SANM FITB
2009-09-30 CAR GNW PALM LVS MGM DDR SLG SANM MAC UIS SSP C MTG HIG THC
2009-10-30 CAR GNW SW SSP HIG UIS GGP C INCY THC BC LVS PALM DDR SLG
2009-11-30 CAR VSTNQ KMG GNW BC GGP STI UIS SSP INCY ASH LVS PALM STX HIG
2009-12-31 CAR SANM VSTNQ UAL GGP STI AMD SSP DDS FMCC UIS AAL FNMA THC INCY
2010-01-29 SANM CAR UAL ACS VSTNQ GGP MTW INCY LVS LYV AMD F UIS NYT HIG
2010-02-26 SANM UAL CAR ACS AMD AAL CLF UIS GNW GGP MTW INCY MU AAPL DDS
2010-03-31 SANM UAL CLF INCY F GNW ETFC LULU SMCI LYV MTG AAL WLL DDS GGP
2010-04-30 UAL SANM MTG MBI INCY LYV BC ETFC DDS LPX GNW VIAV CAR ZION NFLX
2010-05-28 UAL ETFC SANM MTG BC AAPL MBI AAL ZION LYV WLL TMUS SSP CLF LPX
2010-06-30 AAPL UAL ETFC AAL SANM WLL NFLX AKAM LVS PRGO COR DECK KDP ALK INCY
2010-07-30 AAPL ETFC UAL AAL LVS AIG C FFIV AKAM WLL DECK MBI PRGO NFLX AIV
2010-08-31 AAPL ETFC FFIV AKAM LVS NFLX AAL UAL AZO BKNG PRGO WLL EW CMI CCU
2010-09-30 ETFC NFLX AKAM LVS FFIV AAPL MBI AAL VSTNQ CCU WLL MAY CMI CASY BKNG
2010-10-29 ETFC LVS NFLX FTNT AAPL AAL FFIV MBI UAL CMG EC WLL VRTS URI BKNG
2010-11-30 ETFC LVS BKNG NFLX VRTS CMG FFIV URI MBI DECK WLL AAPL UAL FTNT EC
2010-12-31 ETFC LVS VRTS ACAS WLL URI DECK FFIV LULU NFLX BKNG MBI LPX LYB BWA
2011-01-31 MAY ETFC LVS LPX FFIV WLL FNMA FMCC AIG ACAS DECK MBI MAS AAPL CMG
2011-02-28 MAY ETFC VIAV IPGP URI ANDV MTW FFIV NFLX LULU NVDA LVS MBI LPX NXPI
2011-03-31 MAY IPGP ETFC URI VIAV NXPI AAPL ANDV TSLA LPX LULU MAS PSKY CIEN DF
2011-04-29 MAY IPGP NVDA VIAV FMCC BIIB LULU NXPI FNMA TSLA ETFC PHM REGN AAPL DF
2011-05-31 MAY IPGP NXPI VIAV EP NVDA URI LULU WCG MTW AAPL BKNG DPZ COG ETFC
2011-06-30 MAY IPGP EP WCG ULTA NXPI COG BKNG LULU ABMD CTRA AAPL MTW ANDV NFLX
2011-07-29 IPGP AAPL CTRA ULTA LULU WCG EP COG BIIB CEPH ABMD MNST KSU DPZ ADS
2011-08-31 AAPL MAY CTRA BIIB AZO LULU BKNG CF ULTA MNST IBM DLTR MSFT WYNN DPZ
2011-09-30 AAPL MAY AZO MNST DLTR BIIB VFC ULTA CTRA IBM KMB DPZ DG INTC HSY
2011-10-31 MAY AAPL CTRA BIIB DLTR VFC AZO ULTA GOOG DPZ INTC DG KLAC MNST IBM
2011-11-30 AAPL MAY CTRA GOOG DLTR VFC BIIB MA INTC OKE ULTA GOOGL ISRG GWW PM
2011-12-30 AAPL MAY GOOG DLTR PM OKE ISRG MA XOM GOOGL TJX V INTC MCD MSFT
2012-01-31 URI WCG REGN COG GNRC AAPL AAL MBI TIN GWW DPZ AKAM EP ABMD STX
2012-02-29 STX URI AAPL MOH REGN TEX MTG KBH WCG HCA COG MTW SWKS SANM NXPI
2012-03-30 BLDR AAPL STX MTG URI MOH EQIX RF NXPI LYB BAC MTW HFC REGN COG
2012-04-30 AAPL BLDR REGN URI STX EQIX RF EC AAL MNST FBHS ULTA ITT SBUX BKNG
2012-05-31 AAPL AAL BLDR STX BKNG MNST SHW EQIX EC VRTX ILMN REGN URI TJX ISRG
2012-06-29 AAPL AAL BLDR STX BKNG MNST EQIX VRTX SHW SBAC TJX EC ILMN DLTR TDG
2012-07-31 AAPL AAL BKNG VRTX EQIX SHW MNST STX V SBAC ALGN EW EBAY DG TJX
2012-08-31 AAPL AAL VRTX STX PHM EQIX LPX ANDV SHW BKNG STZ UIS GPS EBAY SBAC
2012-09-28 AAPL PHM VRTX ANDV STX KBH LPX AAL STZ DHI SHW EQIX GOOG LYB GILD
2012-10-31 AAPL BBBY PHM VRTX KBH LPX STZ GNRC ANDV STX LEN BLDR LYB GILD GOOG
2012-11-30 AAPL BBBY LPX PHM FSLR KBH ANDV STZ GNRC STX PSX GILD BLDR REGN GOOG
2012-12-31 FSLR LPX KBH GNRC PHM BBBY GNW REGN ANDV THC AXON AAPL STX LYB WDC
2013-01-31 NFLX PHM LPX OMX THC KBH VRTS FSLR META APO GNW SVU ANDV BBBY VLO
2013-02-28 NFLX OMX MTG VRTS LPX APO THC VLO PHM KBH GNRC CPAY ANDV MPC CAR
2013-03-28 FNMA FMCC MTG OMX NFLX SVU VRTS THC GNW APO HRB CPAY GNRC ALK CAR
2013-04-30 FNMA FMCC OMX MTG NFLX FSLR THC META APO VRTS BBBY SVU GILD HRB GNW
2013-05-31 FNMA FMCC OMX MTG TSLA NFLX SVU VRTS AAPL FSLR KBH AMD REGN PHM ENPH
2013-06-28 FNMA FMCC OMX TSLA MTG SVU NFLX BBBY MU FSLR REGN VRTS CPAY ENPH GME
2013-07-31 FNMA FMCC OMX TSLA MTG BBBY FSLR SVU VRTS AAPL GME NFLX MU FANG REGN
2013-08-30 OMX FNMA TSLA FMCC MTG BBBY AAPL INCY GME SVU FANG BBY FL TRIP MU
2013-09-30 OMX TSLA FNMA FMCC BBBY MTG META AAPL FSLR AXON GME FANG BBY FL MU
2013-10-31 OMX FNMA FMCC TSLA META FANG AAPL AXON MU MTG CLF GT CIEN TLAB TYL
2013-11-29 OMX FNMA FMCC META INCY CLF TSLA MU AXON PBI FANG GME TLAB BBY NFLX
2013-12-31 FNMA FMCC META INCY CLF MU KATE TSLA TLAB AAPL AXON FANG NFLX RRD AAL
2014-01-31 FNMA FMCC INCY TKO ILMN SMCI META AAL KATE MU MGM AXON AAPL ETFC STZ
2014-02-28 FMCC FNMA ILMN TKO INCY AAL META FRX TSLA MU AAPL TPL DXCM AXON FSLR
2014-03-31 FMCC FNMA TKO ILMN AAL FRX META FSLR DXCM INCY TSLA SWKS FANG WYNN AAPL
2014-04-30 FMCC FNMA TKO FRX META FANG ILMN CAR TSLA SMCI AAL SWKS HP VTRS MU
2014-05-30 FMCC FNMA META ILMN FRX TPL TSLA SWKS CAR WLL AAL FANG WYNN NBR MU
2014-06-30 TRGP FNMA FMCC FANG NFX META SWKS FRX NBR WLL WMB AAL MU MMI ILMN
2014-07-31 FMCC FNMA SWKS FANG NFX MU NBR AAPL TRGP CAR FRX TWX ZBRA ENPH META
2014-08-29 ENPH MMI SWKS CAR MU TRGP TPL AAPL NFX FANG FNMA FMCC LUV ATI NBR
2014-09-30 AAPL GILD META ENPH SWKS TPL MU CAR TRGP LUV WMB GMCR HCA AVGO INTC
2014-10-31 ENPH BBBY AAPL EW PANW SMCI META MMI VEEV SWKS MU WMB GILD FL TWX
2014-11-28 PAYC AAPL SMCI SWKS MNST EW BBBY LUV PANW VEEV DXCM GMCR ZTS GILD META
2014-12-31 AXON ENPH AAPL SWKS PAYC EW SMCI LUV AMGN PANW DXCM EA CNC MNST INCY
2015-01-30 AAPL SWKS AXON GILD EA MNST KR CNC EW ALK META PANW LUV PAYC LULU
2015-02-27 PAYC SWKS AAPL MNST CNC EA PANW BBBY LUV SMCI HSP ALK KR TKO LULU
2015-03-31 SWKS INCY CNC AAPL PAYC NXPI EA EW AVGO AXON ALK BTUUQ COR SSP BIIB
2015-04-30 BLDR SWKS INCY PAYC CZR AAPL DXCM BTUUQ CNC KMG EPAM AXON HSP MNST PANW
2015-05-29 CNXT BTUUQ AXON CZR BLDR SWKS PAYC INCY CNC HUM AVGO BIIB MMI NFLX ABMD
2015-06-30 BTUUQ AAPL GILD SWKS CNC CI DXCM CZR AXON ABMD EA AET INCY HSP COTY
2015-07-31 BLDR AAPL BTUUQ GILD ABMD META DXCM EA CZR KRFT HSP AMZN NFLX PANW INCY
2015-08-31 BLDR DXCM AAPL ABMD META BKNG EA HSP AYI GILD EPAM INCY ULTA CCI ALK
2015-09-30 AAPL META BKNG DXCM BLDR ABMD EA HSP ALK GPN HUM AZO SBUX EQIX TYL
2015-10-30 AAPL ABMD BKNG META GILD FIX GOOG AMZN AZO GPN CCI EQIX EA SBUX GOOGL
2015-11-30 AMZN ABMD AAPL META GOOG GE GOOGL GILD FIX ATVI VRSN NFLX GPN BKNG TYL
2015-12-31 ABMD GE AMZN GOOG META ATVI GOOGL BKNG AAPL VRSN TSS AYI CCI PSA MSFT
2016-01-29 ABMD GE META GOOG AMZN GOOGL ATVI EQIX MSFT AAPL STZ MCD TSN FSLR CASY
2016-02-29 META ABMD TSN GE GOOG AMZN GOOGL ATO MAT T BKNG NI AWK MSFT KMB
2016-03-31 META TSN AAPL ABMD MAT GE AMZN GILD GOOG GOOGL MSFT NVDA LITE FSLR DLR
2016-04-29 CLF CNX NEM RRC MTW MUR WB LITE X TSN SEDG WPX MAT NVDA ABMD
2016-05-31 CNX X DXC AMD NVDA MTW NAV CLF TSN CZR WB ALB RRC NEM NRG
2016-06-30 CLF CNX X OKE DXC AXON TRGP NEM ALB NVDA AMD DLR MTW MDR CTRA
2016-07-29 CLF AMD X WB CNX NVDA JOY OKE NEM ATI WPX WLL DHR TRGP SWN
2016-08-31 WB AMD CLF X GNW WMB NVDA OKE CNX TRGP DXC NEM JOY ULTA WPX
2016-09-30 WB CLF X AMD WMB NVDA TRGP GNW LITE KMI WPX NEM TPL OKE CNX
2016-10-31 WB X NVDA LITE TPL WMB AAPL CLF JOY AMD DXC CNX SPGI META NAV
2016-11-30 FMCC CLF FNMA WB X NVDA AMD LITE WOR NBR TPL XYZ JOY ETSY DHR
2016-12-30 NVDA CLF AMD FMCC X FNMA UIS NBR SLM BAC WB STLD UAL KSS CFG
2017-01-31 FMCC FNMA NVDA CLF X TPL CSX NBR AMD WB URI COHR BAC WDC SLM
2017-02-28 AMD CLF NVDA X COHR NBR CSX FNMA FMCC TPL WB LITE BAC SLM STLD
2017-03-31 AMD NVDA CLF INCY BAC CSX MU X URI RF COHR ANET UIS CFG KEY
2017-04-28 AMD NVDA FMCC FNMA KMG TTD INCY BAC CSX WDC ANET CFG SLM ALGN URI
2017-05-31 TTD NVDA WB XYZ KMG VEEV TTWO CSX INCY ADSK ANET ALGN MU LRCX FSLR
2017-06-30 NVDA XYZ WB CVNA TTD ANET LITE VRTX TTWO VEEV TSLA LRCX ADSK PAYC ALGN
2017-07-31 XYZ NVDA VRTX ALGN WB LITE TTD NRG ANET KMG VEEV LRCX AMAT TTWO SEDG
2017-08-31 WB NVDA TTWO SEDG XYZ VRTX ALGN NRG IPGP LITE ANET KMG VEEV NFLX AMAT
2017-09-29 WB NVDA BBBY TTWO XYZ SEDG ALGN FSLR IPGP TTD VRTX MTW MU FMCC ANET
2017-10-31 BBBY XYZ NVDA ALGN FSLR WB MU MTW SEDG TTWO IPGP TTD NRG LITE FMCC
2017-11-30 BBBY ENPH XYZ SEDG IPGP ALGN MU NVDA NRG WB ANET TTWO MAY COHR LRCX
2017-12-29 BBBY ENPH XYZ SEDG FSLR MU WB ALGN IPGP NVDA IBKR TTWO TKO NRG LRCX
2018-01-31 BBBY NKTR EC XYZ MAY ALGN WB MU ANF ENPH ANET KBH IPGP SEDG ABBV
2018-02-28 NKTR BBBY AMZN XYZ EC NVDA AAPL MU META ANET BKNG KBH ALGN SEDG TWTR
2018-03-29 NKTR AMZN XYZ MU BBBY ENPH SEDG META EC NVDA AAPL MTCH HET ABBV IBKR
2018-04-30 NKTR MU HET EC AMZN XYZ META SEDG TWTR ABMD NVDA BKNG ETSY FSLR IBKR
2018-05-31 NKTR AXON THC MU TKO HET ENPH AMZN SEDG META EC ETSY CVNA AAPL NVDA
2018-06-29 NKTR TKO HET AXON ENPH MU THC CVNA AMZN XYZ ETSY NFLX META SEDG NVDA
2018-07-31 HET TKO AXON CVNA NKTR THC ETSY AMZN MU SEDG ENPH META XYZ ABMD DXCM
2018-08-31 HET CVNA TKO AXON XYZ DXCM AMZN TTD CCI AMD ABMD ETSY AAPL MOH NFLX
2018-09-28 HET CVNA TKO AMD XYZ TTD AMZN DXCM CCI ABMD AXON ETSY UIS AAPL MOH
2018-10-31 HET CCI DXCM TKO AAPL ABMD AXON MOH XYZ UIS CVNA ETSY KDP CLF AAP
2018-11-30 HET CCI TKO TTD DXCM ABMD AMZN ETSY KDP MOH MRK CVNA EXR HCA MKC
2018-12-31 HET CCI TKO MRK AMZN KDP EXR DXCM MKC TTD CIEN NRG ETSY AAP SCG
2019-01-31 HET CCI AMZN RHT DXCM TKO CIEN TTD EXR ETSY FNMA XLNX MRK BALL KEYS
2019-02-28 HET FNMA FMCC TTD ENPH ETSY RHT CIEN ERIE AMD XYZ CAR NYT CLF XLNX
2019-03-29 HET AMZN FNMA CCI TTD META FMCC ENPH RHT LLY AAPL XLNX EXR ETSY AZO
2019-04-30 HET ENPH TTD SMCI ALGN FNMA FMCC CVNA AMD IPGP ETSY FSLR KEYS META AMAT
2019-05-31 HET CCI AMZN ENPH ERIE VEEV AZO FNMA META MSFT BALL MKTX EXR FICO HSY
2019-06-28 HET ENPH AVP CVNA FNMA ERIE TTD VEEV FMCC MKTX AMD META AMZN PAYC MTCH
2019-07-31 ENPH HET TTD AVP BBBY QCOM XYZ MKTX ERIE VEEV AAPL CVNA SBUX FICO AMZN
2019-08-30 HET ENPH CCI AAPL AMZN AVP EXR MKTX MSFT META BALL SEDG QCOM HSY SBAC
2019-09-30 HET ENPH SEDG AVP EXR PODD MKTX FNMA QCOM GNRC PRGO FMCC HWM KBH BALL
2019-10-31 HET ENPH SEDG GNRC AVP BLDR TSLA PODD MKTX EXR KBH TER PHM KLAC BIIB
2019-11-29 HET ENPH DXCM PODD TSLA BLDR KLAC AAPL AVP SEDG GNRC QRVO CVNA TER QCOM
2019-12-31 HET ENPH TSLA THC MAT AAPL QRVO SWKS CVNA PODD JBL DXCM FNMA NBR AVP
2020-01-31 HET TSLA AAPL ENPH GNRC SEDG CDAY APO SWKS PODD BLDR ANSS LM FBHS TER
2020-02-28 HET CCI TSLA ENPH AAPL DXCM MSFT LM PODD TYL LLY GNRC GEN MSCI GOOG
2020-03-31 ENPH DXCM TSLA AAPL GEN MSFT KR CCI DVA PODD TYL GNRC LM AMZN BIIB
2020-04-30 ENPH DXCM TSLA AAPL PODD GEN AMZN MSFT NEM CCI KR WST REGN LM GOOG
2020-05-29 DXCM TSLA ENPH AAPL GEN AMZN DDOG WST MSFT CCI NEM BIO ODFL GOOG LM
2020-06-30 TSLA BBBY DXCM DDOG AAPL AMZN ENPH NEM MSFT REGN WST NVDA META CLX VEEV
2020-07-31 BBBY TSLA AMZN AAPL DXCM NVDA ENPH ETSY NEM CNX DDOG MSFT XYZ WST CVNA
2020-08-31 BBBY TSLA CVNA PENN RRC MRNA TUP ETSY XYZ PBI EQT NVDA AAPL AMD GNRC
2020-09-30 BBBY TSLA PENN TUP AAPL CVNA XYZ ENPH NVDA AMZN CZR ETSY EXR RRC VIAC
2020-10-30 TUP TSLA BBBY PENN ENPH AAPL XYZ VIAC ETSY FDX SEDG CVNA GNRC EXR NVDA
2020-11-30 TUP BBBY TSLA MRNA GME ENPH CPRI PBI TTD COTY NBR GP PENN XYZ SEDG
2020-12-31 TUP TSLA ENPH PENN GME BBBY CPRI CLF MRNA XYZ CRWD NBR PBI DDS CVNA
2021-01-29 GME TSLA BBBY ENPH CLF TUP LRCX FDX TTD CAR OKE SEDG ETSY OXY WPX
2021-02-26 GME TSLA TUP DDS TDC XYZ VIAC OKE PENN ENPH AXON CLF TTD COTY WBD
2021-03-31 GME VIAC TSLA TPL TUP NBR PSKY TRIP CPRI PENN MAC BBBY M SSP DDS
2021-04-30 GME TSLA MAC VIAC TPL NBR QEP TUP CAR PSKY AXON BBBY LPX PD DISCA
2021-05-28 GME DDS MAC TSLA PBI TPL PSKY NBR VIAC DISCA DISCK MTW OXY LPX BBBY
2021-06-30 GME DDS PSKY TSLA BBBY MAC TPL DISCK PBI PLTR DISCA CAR MUR TRGP RRD
2021-07-30 MRNA GME RRD DDS NUE CAR MDP TPL ASO GNRC MBI TDC TSLA MUR BX
2021-08-31 GME MRNA RRD DDS MDP NUE SBNY MAC TSLA NAVI STLD XEC CLF BX FTNT
2021-09-30 MRNA RRD MDP RRC DDS SBNY TSLA GME AAPL BX MAC CAR NVDA IT KKR
2021-10-29 GME CAR RRC MRNA RRD DDS TSLA MAC MDP DVN MUR SBNY MRO M JWN
2021-11-30 CAR DDS MRNA TSLA RRD DVN NVDA AMD RRC M MDP JWN AAPL EXR DDOG
2021-12-31 CAR RRD TSLA DDS BLDR NVDA AMD DDOG APP ON EXR DVN M MRVL ALB
2022-01-31 DVN RRD EXR TSLA EOG AAPL MRO AZO COP TRGP FANG NVDA DDS XOM CVX
2022-02-28 DVN RRD CAR AAPL EXR TRGP TSLA EOG MRO DDS FANG COP MCK AZO XOM
2022-03-31 RRD CAR DVN EXR TSLA TRGP MUR RRC MRO COP CVX AAPL OXY EQT CF
2022-04-29 RRC EQT DVN DDS TRGP MUR CAR CVX MCK COP HP MRO APA NUE OXY
2022-05-31 EQT APA DVN OXY CTRA RRC MRO XOM CVX COP MCK EOG CCI HP EXE
2022-06-30 AMT APA MCK OXY DVN XOM FHN EXC HRB WRB CVX BMY EQT EOG MRO
2022-07-29 EQT AMT OXY APA DVN XOM CTRA HRB MCK CCI CVX MRO AAPL FHN PXD
2022-08-31 DVN EXR AMT HRB EQT OXY MCK CTRA XOM COP CF MRO CVX CAH TSLA
2022-09-30 HRB DVN FSLR MCK EQT OXY COP CAH EXR TSLA XOM HES LW UNM FHN
2022-10-31 DVN FSLR MCK HES UNM HRB CAH XOM TPL AZO COP ODP LW FHN GPC
2022-11-30 UCL FSLR TPL SMCI DYN HES AXON ODP HRB NFLX UNM TE FTI ERIE SANM
2022-12-30 FSLR HES SMCI UCL ODP FTI BKNG EXR TPL AAPL CCI AXON AMT TSLA XOM
2023-01-31 UCL HES FSLR NFLX DXCM ODP FTI SMCI CLF UNM AXON GP STLD TPL MPC
2023-02-28 UCL TSLA FTI EXR CCI BKNG HES NVDA AMT FSLR STLD AXON TEX CLF CAR
2023-03-31 UCL TSLA SMCI NVDA EXR CCI FSLR AMT AXON BKNG FTI COTY MTW TEX ALGN
2023-04-28 UCL NVDA TSLA EXR AMT META CCI FSLR COTY SMCI LVS BKNG AXON FICO PHM
2023-05-31 SMCI BKNG EXR NVDA BLDR FICO TSLA FSLR LW CPRT META MSFT AVGO COTY DECK
2023-06-30 SMCI CVNA NVDA TSLA EXR APP RCL BLDR META AMT VRT BKNG CCI AAPL AVGO
2023-07-31 CVNA SMCI APP NVDA TSLA PLTR META GP VRT BLDR RCL GNRC NFLX CRWD TTD
2023-08-31 CVNA SMCI NVDA APP EXR VRT TSLA PLTR RCL META BLDR BKNG AMT CCI AVGO
2023-09-29 SMCI VRT NVDA EXR TSLA BKNG APP FTI META CVNA RCL APO EME FICO ANF
2023-10-31 VRT NVDA EXR SMCI META BKNG FTI APP ANF JBL DELL VST LII CBOE CNX
2023-11-30 CVNA EXR VRT NVDA ANF TSLA SMCI APP CPRI META BKNG GPS DELL KKR WSM
2023-12-29 CVNA COIN ANF FNMA GPS VRT APP FMCC TSLA SMCI KEY VNO ZION CRWD SLG
2024-01-31 FNMA SMCI ANF ADCT VRT FMCC CVNA NVDA CRWD APP DYN ANET GPS FICO COIN
2024-02-29 SMCI ADCT CVNA ANF NVDA COIN DYN VRT FNMA VST CRWD APP BBBY FIX EXR
2024-03-28 SMCI ADCT COIN FNMA CVNA NVDA VRT ANF DYN VST FMCC APP GPS WSM AAP
2024-04-30 SMCI ADCT CVNA NVDA VRT DYN VST FNMA ANF APP DELL COIN FMCC WSM NKTR
2024-05-31 CVNA VST NVDA SMCI VRT DELL ANF DYN ADCT COIN FNMA APP HOOD NRG AMD
2024-06-28 NVDA SMCI CVNA VST ANF DYN DELL VRT APP HOOD LU COIN FNMA THC EME
2024-07-31 LUMN CVNA NVDA DYN VST ANF LU VRT APP COIN HOOD THC DELL SMCI EXR
2024-08-30 LUMN CVNA NVDA VST DYN FSLR VRT PBI THC DELL ANF TER FICO HOOD SOLV
2024-09-30 LUMN CVNA NVDA APP DYN VST FSLR ECHO LU PBI GME GEV TPL PLTR COHR
2024-10-31 LUMN CVNA APP NVDA VST PLTR COHR TPL GEV GME VNO HOOD EXR CNX JEF
2024-11-29 LUMN APP CVNA FMCC TPL FNMA PLTR VST NVDA AXON GEV HOOD COHR TSLA VRT
2024-12-31 APP LUMN NVDA PLTR TSLA CVNA CCI FMCC TPL VST AXON HOOD FNMA EXR LB
2025-01-31 APP FNMA FMCC PLTR HOOD TSLA NVDA LUMN CCI CVNA EXR TPL VST GEV AXON
2025-02-28 FNMA FMCC APP HOOD PLTR NVDA CCI TPR EXR TPL CVNA VST GEV ALK LUMN
2025-03-31 FNMA FMCC APP PLTR FOXA TPL PM EXR HWM VRSN ETR HOOD TPR TRGP WELL
2025-04-30 FNMA PLTR FMCC HOOD VRSN PM APP GEV NFLX EXR CNP AMT CME BKNG HWM
2025-05-30 FNMA FMCC PLTR APP NVDA HOOD GEV PM AXON TSLA HWM CVNA VRSN AMT EXR
2025-06-30 FNMA FMCC HOOD PLTR CAR APP TSLA NVDA GEV HWM WDC SMCI NRG AXON CVNA
2025-07-31 HOOD FNMA NVDA PLTR GEV WDC FMCC APP CAR TSLA SMCI TPR CVNA FIX STX
2025-08-29 HOOD FNMA ECHO UCL PLTR FMCC CAR GEV APP LITE ATI AAP FIX CVNA AMD
2025-09-30 FNMA FMCC HOOD ECHO APP WDC LITE STX COIN CAR CIEN PLTR GEV FIX AVGO
2025-10-31 HOOD FMCC FNMA WDC NVDA LITE TE APP CIEN MU TSLA STX LUMN ECHO PLTR
2025-11-28 LITE ECHO TE WDC NVDA CIEN HOOD MU STX TSLA LUMN GOOG NKTR GOOGL FMCC
2025-12-31 LITE TE ECHO CIEN WDC NVDA MU HOOD TSLA STX FMCC LUMN WBD GOOG ALB
2026-01-30 TE MU ECHO WDC LITE STX ALB LRCX CIEN NEM LUMN WBD COHR TER VIAV
2026-02-27 LITE TE WDC MU CIEN GLW TER COHR ECHO STX VIAV ALB LRCX FIX AMAT
2026-03-31 LITE CIEN CCI ECHO WDC MU EXR FIX VIAV ATI FTI GOOG NVDA COHR GLW
2026-04-30 LITE MU CIEN VIAV WDC CCI STX COHR NVDA EXR ECHO NBR FIX ALB GLW
2026-05-29 MU LITE WDC DELL CIEN CCI STX VIAV NVDA AMD INTC EXR COHR MRVL ECHO
2026-06-26 MU WDC DD STX DELL MRVL LITE INTC CIEN VIAV AMD FLEX AMAT COHR LRCX
Scoring script (python)
FORMULA_NAME = "Sponsored 52-Week Repairs with Regime Arbitration (v1110)"
LOGIC_VARIANT_COUNT = 3
NOTES = """mode=explore; family=contrarian-52w-hybrid
New hybrid family that combines the champion contrarian-52w repair ladder with the recovery-quality arbitration idea, but changes the structure: instead of blending sleeves at fixed weights, each regime runs a sponsored-repair relay where price-repair candidates earn rank only when the kind of repair matches the regime and the sponsorship evidence is strong enough. Calm bulls reward shallower, trend-confirmed repairs; choppy bulls allow deeper rebounds only with liquidity/profitability sponsorship; risk-off flips the stack and lets durable sponsorship veto fragile repairs.
Deliberate metric coverage this run: actively use one momentum cluster (1m, 6m, 12m, and 12_1 in different roles), one recovery cluster (from_52w_high_pct plus from_200d_ma_pct), one volatility check, two liquidity checks, one income check, one valuation cluster (forward_pe plus peg), one growth cluster (revenue_growth_pct plus forward_eps), one quality cluster (operating_margin_pct plus free_cash_flow_margin_pct), and one size tilt. Deliberately weight return_3m_pct, avg_daily_volume_3m, dividend_ttm, pe, eps_growth_pct, operating_income_growth_pct, free_cash_flow_growth_pct, shares_outstanding, close, adj_close, high_52w, ma_200d, eps_ttm, revenue_ttm, operating_income_ttm, and free_cash_flow_ttm at zero this run so the backtest can isolate whether regime-specific sponsorship gating improves on the pure repair ladder."""

# Deliberate weight-0 metrics this run:
# - Momentum/return: return_3m_pct
# - Liquidity: avg_daily_volume_3m
# - Income: dividend_ttm
# - Valuation: pe
# - Growth: eps_growth_pct, operating_income_growth_pct, free_cash_flow_growth_pct
# - Size/raw levels: shares_outstanding, close, adj_close, high_52w, ma_200d,
#   eps_ttm, revenue_ttm, operating_income_ttm, free_cash_flow_ttm

CALM_BULL = {
    "from_52w_high_pct": (0.22, -1),
    "from_200d_ma_pct": (0.18, +1),
    "return_6m_pct": (0.12, +1),
    "momentum_12_1_pct": (0.08, +1),
    "return_1m_pct": (0.06, +1),
    "realized_vol_3m": (0.07, -1),
    "avg_daily_dollar_volume_3m": (0.05, +1),
    "trading_days_3m": (0.04, +1),
    "forward_pe": (0.04, -1),
    "operating_margin_pct": (0.05, +1),
    "market_cap": (0.05, -1),
}

CHOPPY_BULL = {
    "from_52w_high_pct": (0.16, -1),
    "from_200d_ma_pct": (0.16, +1),
    "return_6m_pct": (0.08, +1),
    "momentum_12_1_pct": (0.07, +1),
    "realized_vol_3m": (0.09, -1),
    "avg_daily_dollar_volume_3m": (0.07, +1),
    "trading_days_3m": (0.05, +1),
    "revenue_growth_pct": (0.05, +1),
    "forward_eps": (0.04, +1),
    "operating_margin_pct": (0.07, +1),
    "free_cash_flow_margin_pct": (0.08, +1),
    "peg": (0.04, -1),
}

RISK_OFF = {
    "from_52w_high_pct": (0.08, -1),
    "from_200d_ma_pct": (0.16, +1),
    "return_12m_pct": (0.06, +1),
    "momentum_12_1_pct": (0.04, +1),
    "realized_vol_3m": (0.13, -1),
    "avg_daily_dollar_volume_3m": (0.07, +1),
    "trading_days_3m": (0.06, +1),
    "dividend_yield_ttm_pct": (0.07, +1),
    "forward_pe": (0.06, -1),
    "revenue_growth_pct": (0.04, +1),
    "forward_eps": (0.05, +1),
    "operating_margin_pct": (0.08, +1),
    "free_cash_flow_margin_pct": (0.10, +1),
}


def _branch(regime):
    if regime.get("bull"):
        breadth = regime.get("breadth", 0.0)
        vol = regime.get("avg_realized_vol_3m", 0.0)
        med_trend = regime.get("median_from_200d_ma_pct", 0.0)
        if breadth >= 0.64 and vol <= 27 and med_trend >= 2:
            return CALM_BULL, "calm_bull"
        return CHOPPY_BULL, "choppy_bull"
    return RISK_OFF, "risk_off"


def _clamp(value, low, high):
    if value < low:
        return low
    if value > high:
        return high
    return value


def score_universe(stocks, regime, ctx):
    book, branch = _branch(regime)
    zmaps = {metric: ctx.z(metric) for metric in book}
    scores = {}

    for row in stocks:
        sym = row["symbol"]

        base_total = 0.0
        base_weight = 0.0
        for metric, (weight, sign) in book.items():
            z = zmaps[metric].get(sym)
            if z is not None:
                base_total += weight * sign * z
                base_weight += weight
        total = base_total / base_weight if base_weight > 0 else 0.0

        drawdown = row.get("from_52w_high_pct")
        trend = row.get("from_200d_ma_pct")
        ret1 = row.get("return_1m_pct")
        ret6 = row.get("return_6m_pct")
        ret12 = row.get("return_12m_pct")
        mom = row.get("momentum_12_1_pct")
        vol = row.get("realized_vol_3m")
        dollar_vol = row.get("avg_daily_dollar_volume_3m")
        trading_days = row.get("trading_days_3m")
        div_yield = row.get("dividend_yield_ttm_pct")
        forward_pe = row.get("forward_pe")
        peg = row.get("peg")
        revenue_growth = row.get("revenue_growth_pct")
        forward_eps = row.get("forward_eps")
        op_margin = row.get("operating_margin_pct")
        fcf_margin = row.get("free_cash_flow_margin_pct")
        cap = row.get("market_cap")

        repair_score = 0.0
        repair_weight = 0.0

        if drawdown is not None:
            repair_weight += 1.3
            if branch == "calm_bull":
                if drawdown < -40:
                    repair_score -= 0.90
                elif drawdown < -28:
                    repair_score += 0.28
                elif drawdown < -16:
                    repair_score += 1.05
                elif drawdown < -7:
                    repair_score += 0.48
                elif drawdown < -3:
                    repair_score += 0.05
                else:
                    repair_score -= 0.32
            elif branch == "choppy_bull":
                if drawdown < -45:
                    repair_score -= 0.65
                elif drawdown < -30:
                    repair_score += 0.18
                elif drawdown < -18:
                    repair_score += 0.80
                elif drawdown < -8:
                    repair_score += 0.42
                else:
                    repair_score -= 0.18
            else:
                if drawdown < -34:
                    repair_score -= 0.62
                elif drawdown < -18:
                    repair_score -= 0.08
                elif drawdown < -6:
                    repair_score += 0.72
                else:
                    repair_score -= 0.20

        if trend is not None:
            repair_weight += 1.0
            if branch == "calm_bull":
                if trend > 12:
                    repair_score += 0.88
                elif trend > 4:
                    repair_score += 0.42
                elif trend < -3:
                    repair_score -= 0.95
            elif branch == "choppy_bull":
                if trend > 9:
                    repair_score += 0.62
                elif trend > 1:
                    repair_score += 0.28
                elif trend < -2:
                    repair_score -= 0.88
            else:
                if trend > 7:
                    repair_score += 0.60
                elif trend > 1:
                    repair_score += 0.22
                elif trend < 0:
                    repair_score -= 0.92

        if ret6 is not None:
            repair_weight += 0.9
            if ret6 > 18:
                repair_score += 0.46
            elif ret6 > 7:
                repair_score += 0.26
            elif ret6 < -8:
                repair_score -= 0.66
            elif ret6 < 0:
                repair_score -= 0.22

        if mom is not None:
            repair_weight += 0.8
            if branch == "risk_off":
                if mom >= 2 and mom <= 18:
                    repair_score += 0.34
                elif mom < -10:
                    repair_score -= 0.62
                elif mom > 22:
                    repair_score -= 0.08
            else:
                if mom >= 4 and mom <= 24:
                    repair_score += 0.46
                elif mom > 24:
                    repair_score += 0.12
                elif mom < -12:
                    repair_score -= 0.70
                elif mom < 0:
                    repair_score -= 0.18

        if ret1 is not None:
            repair_weight += 0.6
            if branch == "calm_bull":
                if ret1 > 2 and ret1 < 12:
                    repair_score += 0.26
                elif ret1 >= 16:
                    repair_score -= 0.20
                elif ret1 < -8:
                    repair_score -= 0.42
            elif branch == "choppy_bull":
                if ret1 > 4 and ret1 < 14:
                    repair_score += 0.18
                elif ret1 < -9:
                    repair_score -= 0.38
            else:
                if ret1 > 10:
                    repair_score -= 0.16
                elif ret1 < -8:
                    repair_score -= 0.26

        if vol is not None:
            repair_weight += 0.7
            if vol < 22:
                repair_score += 0.24
            elif vol > 44:
                repair_score -= 0.48
            elif vol > 34:
                repair_score -= 0.18

        if repair_weight > 0:
            repair_score = repair_score / repair_weight

        sponsor_score = 0.0
        sponsor_weight = 0.0

        if fcf_margin is not None:
            sponsor_weight += 1.0
            if fcf_margin > 12:
                sponsor_score += 1.00
            elif fcf_margin > 5:
                sponsor_score += 0.55
            elif fcf_margin < 0:
                sponsor_score -= 1.00
            elif fcf_margin < 3:
                sponsor_score -= 0.25

        if op_margin is not None:
            sponsor_weight += 0.9
            if op_margin > 18:
                sponsor_score += 0.82
            elif op_margin > 8:
                sponsor_score += 0.38
            elif op_margin < 0:
                sponsor_score -= 0.92
            elif op_margin < 4:
                sponsor_score -= 0.20

        if revenue_growth is not None:
            sponsor_weight += 0.7
            if revenue_growth > 16:
                sponsor_score += 0.62
            elif revenue_growth > 5:
                sponsor_score += 0.28
            elif revenue_growth < -10:
                sponsor_score -= 0.80
            elif revenue_growth < 0:
                sponsor_score -= 0.24

        if forward_eps is not None:
            sponsor_weight += 0.5
            if forward_eps > 0:
                sponsor_score += 0.25
            else:
                sponsor_score -= 0.75

        if forward_pe is not None:
            sponsor_weight += 0.6
            if forward_pe > 0 and forward_pe < 18:
                sponsor_score += 0.32
            elif forward_pe > 35:
                sponsor_score -= 0.40

        if peg is not None:
            sponsor_weight += 0.4
            if peg > 0 and peg < 1.6:
                sponsor_score += 0.24
            elif peg > 3.0:
                sponsor_score -= 0.28

        if dollar_vol is not None:
            sponsor_weight += 0.6
            if dollar_vol > 40000000:
                sponsor_score += 0.40
            elif dollar_vol > 12000000:
                sponsor_score += 0.18
            elif dollar_vol < 3000000:
                sponsor_score -= 0.45

        if trading_days is not None:
            sponsor_weight += 0.4
            if trading_days >= 62:
                sponsor_score += 0.18
            elif trading_days <= 57:
                sponsor_score -= 0.32

        if div_yield is not None:
            sponsor_weight += 0.4
            if div_yield >= 0.8 and div_yield <= 4.5:
                sponsor_score += 0.22
            elif div_yield > 5.5:
                sponsor_score -= 0.18
            elif div_yield == 0 and branch == "risk_off":
                sponsor_score -= 0.15

        if cap is not None and branch == "calm_bull":
            sponsor_weight += 0.3
            if cap < 2500000000:
                sponsor_score += 0.18
            elif cap > 150000000000:
                sponsor_score -= 0.10

        if sponsor_weight > 0:
            sponsor_score = sponsor_score / sponsor_weight

        if branch == "calm_bull":
            relay = 0.70 * repair_score + 0.30 * sponsor_score

            if repair_score > 0.30 and sponsor_score < -0.15:
                relay -= 0.30
            if repair_score > 0.55 and sponsor_score > 0.10:
                relay += 0.22
            if drawdown is not None and drawdown > -4:
                relay -= 0.22
            if trend is not None and trend > 20:
                relay -= 0.10
        elif branch == "choppy_bull":
            relay = 0.52 * repair_score + 0.48 * sponsor_score

            deep_repair = drawdown is not None and drawdown < -20
            if deep_repair and sponsor_score < 0.08:
                relay -= 0.48
            elif deep_repair and sponsor_score > 0.20:
                relay += 0.26

            if repair_score > 0.45 and sponsor_score > 0.18:
                relay += 0.18
            if repair_score < -0.10 and sponsor_score > 0.35:
                relay += 0.10
        else:
            relay = 0.30 * repair_score + 0.70 * sponsor_score

            if sponsor_score < 0.05 and repair_score > 0.25:
                relay -= 0.42
            if sponsor_score > 0.28 and repair_score >= 0.0:
                relay += 0.20
            if vol is not None and vol > 38:
                relay -= 0.16
            if trend is not None and trend < 0:
                relay -= 0.18

        total += _clamp(relay, -1.4, 1.4)
        scores[sym] = total

    return scores