Building a systematic ETF screen (advanced)
Adjusting filters one at a time, in whatever order they happen to sit on the page, is how a screen quietly turns into a random walk. A systematic screen starts from an actual question and stacks constraints in an order that makes sense.
Start from a real constraint, not a feeling
A screen goes somewhere useful when it starts from one concrete question — "a UCITS-domiciled, physically-replicated, EUR-hedged fund tracking a broad developed-market index, with a published risk score under a certain band" — rather than a vague feeling like "something safe and cheap". Write the actual constraint down first, in plain language, before touching a single filter. It forces you to notice which parts of "safe and cheap" you can actually specify, and which are still a matter of judgement no filter will make for you.
The four-stage screening workflow
-
Write your constraint in plain language
Before touching any filter, write down exactly what you are looking for — asset class, The country where the fund is legally based, which affects its tax treatment and rules. More → , currency, size — in one sentence. This anchors every step that follows and keeps the screen honest about what it is actually for.
-
Apply structural filters first
Start with the hard yes/no facts: A European standard (UCITS) with investor-protection rules on diversification, liquidity and reporting. More → status, The country where the fund is legally based, which affects its tax treatment and rules. More → , How the fund copies its index: by buying the shares directly (physical) or using a swap contract (synthetic). More → method, currency hedging. These are unambiguous and cut the universe hardest with the least room for misreading.
-
Layer on the soft filters
Now add the graduated thresholds — a The yearly running cost of the fund, shown as a % of your money. Lower is cheaper. More → , a minimum fund size, a risk-score band. Remember these are SOFT: a fund without a score for a given metric stays in your results rather than being silently excluded.
-
Read the survivors, not just count them
A shortlist of funds surviving every constraint is a starting point, not a verdict. Open each factsheet and compare cost, size, and tracking record side by side. A systematic screen’s whole value is narrowing the universe to a set worth reading carefully.
Stacking constraints without losing track
A sensible order: apply the structural filters first — A European standard (UCITS) with investor-protection rules on diversification, liquidity and reporting. More → -only, The country where the fund is legally based, which affects its tax treatment and rules. More → , How the fund copies its index: by buying the shares directly (physical) or using a swap contract (synthetic). More → method, currency-hedging — because these are unambiguous yes/no facts about a fund, not judgement calls, and they narrow the universe hardest with the least room for misreading. Only then layer on the softer data filters — a risk ( A standard risk rating from 1 (lowest) to 7 (highest), set to a regulated formula. It reflects how sharply the fund’s value has moved up and down in the past — a higher number means a bumpier ride, not a worse fund. More → ) ceiling, a cost ceiling, a Whether the bonds inside are higher-rated (“Investment Grade”), lower-rated and higher-yielding (“High Yield”), or “Not Rated” because we found no clear signal. More → floor for a bond screen. Doing it in that order means every fund left in your results actually meets the hard facts you specified, and the softer ceilings are only trimming within that already-sensible set.
The SOFT-filter honesty rule
Worth internalising before you rely on a cost or risk ceiling: these filters are deliberately SOFT. A fund we haven’t scored for a given metric stays in your results rather than being silently hidden — only a fund that has the value and genuinely fails your ceiling gets dropped. That’s a data-honesty choice, not a bug: hard-excluding on an unscored field would quietly remove funds that might well have passed, and you’d never know they’d been dropped. A coverage note alongside each SOFT filter tells you what share of funds it actually has real data for.
Reading the survivors, not just counting them
A shortlist of, say, twelve funds surviving every constraint is a starting point, not a verdict. The next step is reading their actual numbers side by side — cost, size, track record, how tightly each has tracked its index — the same comparison discipline a beginner screen uses, just applied to a narrower, more deliberately-constrained set. A systematic screen’s whole value is getting you to a small, honestly-relevant shortlist faster; it was never meant to pick the winner for you.
Saving and revisiting a screen
Once a constraint set earns its keep, it’s worth being able to come back to it without rebuilding it from memory — the exact filter/sort/column state you landed on is the thing worth keeping, not just a mental note of "the EM value screen I did last month". Treat a saved screen as a living question you might re-run periodically (has anything new entered the universe that fits?), not a one-off snapshot.