I built a free scanner that flags quality S&P 500 companies when they dip. Tear my methodology apart.
Author shares a free stock screener methodology for finding quality S&P 500 companies trading at a dip, seeking feedback.
Link: https://moatdip.com
I don't trade; I do check the market once a week for healthy companies I can hold.
I tried Finviz-type screeners, but they're not my jam; 40 columns of ratios is too much for me.
So I build my own thing. It runs every Sunday, checks the S&P 500, and flags companies that are:
- (a) actually good businesses
- (b) currently down.
What "good business" means: ROE over 15%, net margin over 10%, debt-to-equity under 100%, revenue still growing 10%+
What "down" means: 15%+ in a month, 20%+ in a quarter, or 15%+ off the 52-week high.
I do filter out "value traps", companies that are cheap for very good reasons.
It looks at \~4 years of annual results, and if revenue or net income has been declining across those years is a no-no and is filtered out.
It's free, no signup or anything.
The whole methodology is written on a page, including the ugly parts, for example, the data lags. Is SP500 only (if it gets traction, I'll add more), and it has no idea why the stock is down; that's on you to figure out.
Would genuinely love some feedback:
- Are those thresholds reasonable?
- Is 10% revenue growth too strict for mature companies?
- Is the value-trap filter missing something obvious?
Obviously not financial advice; it's a screen, not picks.
Hey man I went through your site and it's pretty great. I'm going to scrape the data and add it to my stocks app. Brilliant work!
API might come soon... I already had it hook up with a CLI to my Hermes agents 😄
Hell yeah free API would be even better! I didn't want to ask and be a leech. But if you're providing it then thank you in advance!
Can you share your app? Now I am curious 😂
An example response from Hermes:
Top opportunities (quality + on sale + stable)
INTU — Intuit @ $296.76
\- ROE: 22.5% | Margin: 21.9% | Debt/Eq: 33%
\- Rev growth: 10.4% | P/E: 18.1
\- Down 63% from 52-week high, -27% in 30 days
\- QoQ numbers look distorted: revenue +84%, income +342%, margin +21%. This smells like acquisition accounting (Mailchimp/ProConnect) or a one-time tax benefit. Don't trust the acceleration signal here without reading the latest 10-Q.
NFLX — Netflix @ $82.18
\- ROE: 48.5% | Margin: 28.5% | Debt/Eq: 54%
\- Rev growth: 16.2% | P/E: 26.5
\- Down 38.7% from high, -6.9% in 30 days
\- QoQ: income +118%, margin +23%. Fundamentals accelerating while price drops. Still a strong compounder; the drop may reflect subscriber saturation fears or competitive pressure.
NEM — Newmont @ $99.71
\- ROE: 25.8% | Margin: 33.9% | Debt/Eq: 16%
\- Rev growth: 45.8% | P/E: 12.9
\- Down 25.8% from high
\- Gold miner = cyclical. That 45% revenue growth and 33% margin could be peak-of-cycle. Low P/E in mining is often a trap, not a bargain. Treat as a commodity bet, not a durable compounder.
RMD — ResMed @ $196.04
\- ROE: 25.2% | Margin: 27.4% | Debt/Eq: 13%
\- Rev growth: 10.8% | P/E: 18.9
\- Down 32.8% from high
\- QoQ is flat (rev +0.6%, income +1.6%). Stable but not accelerating. Medical devices moat is solid; GLP-1/weight-loss drug overhang may be pressuring sleep-apnea sentiment.
MKC — McCormick @ $47.24
\- ROE: 25.3% | Margin: 23.1% | Debt/Eq: 65%
\- Rev growth: 16.7% | P/E: 7.7
\- Down 37.8% from high
\- That P/E 7.7 and QoQ income +351% / margin +42% scream one-time gain or restructuring benefit. Do not trust the screen alone here.
PODD — Insulet @ $153.22
\- ROE: 23% | Margin: 10.4% | Debt/Eq: 78%
\- Rev growth: 33.9% | P/E: 35.8
\- Down 57% from high
\- QoQ revenue -2.8%, income -10%, margin -1%. Slight deterioration — watch closely. Omnipod competition heating up?
ROL — Rollins @ $47.10
\- ROE: 38.7% | Margin: 13.8% | Debt/Eq: 77%
\- Rev growth: 10.2% | P/E: 43.2
\- Down 28% from high
\- QoQ revenue -0.7%, income -7.4%. Pest control is recession-resistant but not immune. High P/E means expectations are still priced in.
Do you have any algo for sentiment or momentum?
I think a tool like this is a great idea for generating ideas of companies to look at. Obviously, if someone took this as gospel and just bought every company the tool flagged, that would probably not work out for them (or maybe it would, there have been crazier strats). But as a tool that present possibilities, I like it a lot.
It's a good landing page that presents the information well without being too cluttered. You might consider adding a few drop downs, where a user could set ROE, drawdown, and revenue growth to higher/lower levels, if they wanted to be more/less selective.
Some questions:
- Have you run this several times? How long?
- If yes, did you notice the same stocks popping up every time, or was there decent variety?
- I see 8 stocks flagged by the screener, is this typical? Low? High? Personally I think a weekly scanner giving <10 ideas is right in the sweet spot, but that depends on if it's the same companies each time or if there's at least a bit of turnover.
Overall I definitely think it's a great way to generate ideas for someone who wants to buy individual companies "on sale", with the obvious caveat that they should investigate things for themselves before buying anything. Mostly it seems like a good way to explore ideas outside the same 10-20 stocks that dominate social media and financial reporting.
Thanks, "ideas to look at, not gospel" is exactly the intent.
\> Have you run this several times? How long?
Only one, the first ran this past Sunday. Every scan gets published with a date and stays unchanged, so the archive builds from here.
\> Did you notice the same stocks popping up every time, or was there decent variety?
Don't know yet. It's the most interesting open question, and the public archive will answer it over the next weeks, anyone will be able to compare scan to scan.
\> I see 8 stocks flagged, is this typical? Low? High?
No baseline yet. The count should swing with the market: in frothy stretches almost nothing quality dips 15%+, and the screen is allowed to come back nearly empty. When fewer than five names pass, the grid pads with companies that cleared the quality bar but aren't on sale, badged as such, so it's visible which is which.
\> You might consider adding a few drop downs, where a user could set ROE, drawdown, and revenue growth to higher/lower levels
A selectivity filter layered on top of the published results, without changing them, could work. Noted.
Can you elaborate? Would love your input.
I think this is interesting. But you should layer in more frequent signals than earnings. Intuit, for example, has fallen through the floor. TurboTax, its famous cash cow, underperformed in April, there’s some chatter about securities claims. Etc etc.
Intuit's actually on this week's scan: down 62% from its high, so fast-moving events show up through the price quickly; only the fundamentals side moves quarterly.
News and product signals stay out on purpose, they're not fundamentals, and weighing them is exactly the research the screen hands off to the reader. What you just did with TurboTax is the intended workflow: the screen surfaces the name, you bring the judgment about why it fell and whether it matters.
Great idea and clean. Congratulations !
I think having the user being able to select his filters (with default that would match yours) would be interesting.
Yes, but to gauge the actual performance, you should be running it over historic data and seeing how your pick list actually performs. Otherwise, it's basically gambling still with extra steps.
Once you test it and have data it becomes more than that.
SEC provides all 10-K and 10-Q forms. They provide an api you can grab all the xbrl tags from. There is a lot of drift in tagging nomenclature so it takes some work to get it right
Leeets goooo! Thank you!
I like this idea. Have you considered programming a shadow book to track how you would have done if you took each investment at Monday open after a business pops up on the scanner?
Anecdotally, I’ve been considering Netflix recently simply because my wife is against me canceling the subscription and that makes me feel like they still have pricing power.
Open Claude Code or Codex and GO!

r/investing