From a list to a shortlist you can defend
Your screener returns forty names. Forty is still too many to think about, and the ordering decides which five you actually read. Choose it deliberately.
Sorting is a claim
Course 1 said an ordering is an opinion. In a screener it is stronger than that: the sort decides what gets attention, and everything below the fold effectively does not exist.
So the sort field is not a UI preference, it is part of the question. "Largest market cap" and "highest yield" produce different shortlists from identical filters, and neither is more correct — they answer different questions. Make the person choose, and show what they chose.
Composite scores, and why they mislead
The tempting next step is one number: weight a few fields, add them up, rank by the total.
const score = 0.4 * cheapness + 0.3 * yieldRank + 0.3 * sizeRank; // resist
Three problems, and the third is the serious one.
The weights are invented. Why 0.4? Because it looked reasonable. There is nothing behind it, and the output inherits that nothing while looking quantitative.
It hides its own reasoning. A composite of 7.3 cannot be argued with. You cannot tell whether a name ranked high because it is genuinely cheap or because one component was extreme, and you cannot see which.
It launders a guess into a number. This is the real damage. A ranked list with a score reads as analysis; underneath it is your hunch with decimals. The tool has made you more confident without making you more right.
If you want one, keep the components visible beside the total so the score can be taken apart. Better for now: sort on one field you can name, and let the other columns be read.
The shortlist is the artefact, and it carries reasons
The output of a good screening session is not a list of tickers. It is a handful of names with a sentence each:
NVDA — came up on size and momentum. Watching whether the margin holds. Not acting yet.
You already built this: it is the notes feature from course 1, applied to a different surface. Promote a row from the results into a saved shortlist, and require a note when you do.
Requiring it is the design decision that matters. Without a reason, in three weeks you have a list of tickers and no memory of what you were thinking, which is worth precisely nothing. With it, you can review your own judgement later — and reviewing your own past reasoning is the only way anyone gets better at this.
The line this course does not cross
A screener narrows. A shortlist records what you were thinking. Neither is advice, neither is a recommendation, and the tool must never phrase itself as though it were.
Concretely: no "top picks", no "buy signals", no green ticks on rows. Call it "matches your filters", because that is exactly and only what it is. The moment the interface implies a judgement it did not make, it is lying to the person who trusts it most — the person who built it.
The finance behind it
Before you rank on a multiple, know what a low one can hide: Why can a genuinely "cheap" multiple stay cheap forever?
Try it now
Run a screen, promote three names to a shortlist, and write the sentence for each. Then leave it a week and come back. Whether those sentences still make sense to you is the honest measure of whether this tool is useful — and it is a measure no test suite can give you.