Each name carries a verdict - an action stance, not a price target. The logic:
Buy - the highest-upside names that are actionable today: an uptrend or a washed-out base plus a fresh entry setup right now (breakout, pullback that reclaimed support, reversal, or deep-value stabilising), ranked by opportunity score and not extended above the 50-day.
Hold - quality or neutral: either trending up but with no fresh entry trigger yet, or simply not in a setup. Not a buy (no entry trigger right now - buying mid-range means chasing) and not a sell (it is not broken). You watch for a trigger - a breakout from a base, or a pullback that reclaims the rising 50-day - which would turn it into a Buy. So "up 22% 1-yr but ~8% off its high" is a healthy name resting.
Sell - avoid or exit: fails a hard gate (unprofitable, or a broken / downtrend chart). Off the table regardless of momentum.
This model was built and tuned specifically for the site owner - decision-support, not advice.