Finding the handful of names worth looking at on any given day usually means one of two things: paying for a screener subscription, or clicking through dozens of charts by hand. I didn't want either, so I built a local scanner that does it automatically — and it runs on free data with nothing to subscribe to.
The idea
Pull price and volume history for an 80-ticker universe, run each name through the technical signals that actually matter, and roll them into a single ranked list so the interesting setups float to the top.
The signals
Each ticker gets evaluated for:
- Momentum and recent trend
- Volume spikes vs. its own average
- Golden / death crosses (moving-average crossovers)
- RSI conditions
- Proximity to 52-week high / low
- Breakout setups
Instead of reading six indicators per name, each rolls up into one composite score. You get a ranked shortlist, not a spreadsheet you have to interpret.
The stack
Python, Flask, and yfinance for free OHLCV data — no paid feed. A signal-processing layer computes the indicators and combines them into the composite ranking. The front end is a sortable dashboard: every column sorts, inline sparklines show recent price action, filters narrow by signal type, and auto-refresh keeps the board current. Click any ticker for a detail chart.
The part I care about: speed
It processes roughly 54 tickers in about one second. That number matters more than it looks. A scanner you have to wait on is a scanner you stop opening. When the broad universe collapses into a ranked shortlist almost instantly, checking the market becomes a glance instead of a chore.
What makes it reusable
The signal logic is modular. The universe, the indicators, and the weighting are all things you can change — so your edge (whatever thresholds and signals you actually trust) becomes the thing the scanner optimizes for. It replaces a paid screener and a lot of manual chart-flipping with one local dashboard at zero ongoing cost.
Takeaway
You don't need a paid screener to turn a watchlist into a ranked shortlist. Free data plus a modular signal layer plus a fast dashboard gets you most of the way — and because it's local, there's nothing rate-limiting you out.
If you'd want a breakdown of how the composite score is weighted, drop a comment — that's the piece people usually want to tune first.
Top comments (0)