Quantitative research · Sydney

S&P 500 screen,
published after the close.

Meridian scores every name in the index against the rest of the market — momentum, fundamentals, sentiment — and publishes the top of the distribution. One engineer. Paper research only. It does not trade money.

NRC v1.0 · cross-sectional 21:55 AEST · weeknights Not investment advice
Nightly screen — one pass 0 tier-1 · 0 watchlist · 0 filtered
INITIALISING

Waiting for the published scan file.

Tier 1 — top quartile Watchlist Filtered
stocks in last screen
nights on this page
last published
next scheduled run
Output

This week’s scans.

Updated automatically after each nightly run. Every signal shows its factor breakdown — why the system ranked it, not just that it did. These are research outputs, not recommendations.

LAST 7 SCANS LOADING FEED

Nightly split — share of the universe

Tier 1 count — top quartile, night by night

Sector mix — tier-1 signals aggregated across the week

Persistent names — held tier 1 on multiple nights

rank = this name’s place among the stocks scored that night (1 = highest composite; typically 502 others when 503 print) · 5d = average rank over the last five sessions, the noise floor · score = nightly composite (not a probability) · z = standard deviations from that night’s cross-section · the six names are the highest composite in Tier 1, not the only Tier 1 names · prices are last close, public data only
System

A small fleet, run unattended.

MERIDIAN is one agent inside a larger autonomous system. A central orchestrator dispatches specialised agents on schedule: MERIDIAN generates the signals, LEDGER manages a simulated portfolio against them, a quantitative advisor reviews the mathematics weekly, and an infrastructure agent handles backups, monitoring and data-integrity guards.

Every number the system reports must cite its source query and sample size — a standing rule adopted after live operation showed how easily a confident-looking figure can be computed on broken data. The system is designed to distrust itself.

GUARD
Halt on degenerate data If a scan returns too few valid signals, the pipeline halts rather than act on a broken universe.
GUARD
No stale prices, ever Missing prices trigger live re-fetch, then a structural halt — never a substituted stale value.
RULE
Source-verified reporting Every reported metric carries its query and sample size. Unverifiable numbers ship labelled as such.
RECORD
Immutable forensics Validation evidence is sealed with filesystem immutability — auditable, not editable.
Live system map — nightly, end to end EVERY NIGHT · 21:55 AEST
SYSTEM
Tap any node to explore Everything inside the dashed frame runs unattended on a small cloud Linux server. Data flows in from public market sources each night; signals, reports, backups and this website flow out.
Select a node
Method

Ranked against the whole market.

Rank is a cross-sectional rank against the other stocks scored the same night — typically 502 others when 503 names print. 1 is the highest composite that session, not a probability of profit. The smaller figure next to it is the average rank over the last five sessions, so a one-night jump is visible as noise rather than as a new truth.

Momentum

35%

Trend strength and persistence — RSI, MACD, moving-average structure, volume confirmation.

In plain termsIs this stock already moving, and is the move backed by real participation?

Fundamentals

35%

Business quality — return on equity, revenue growth, margins, leverage and cash generation.

In plain termsIs there a sound company underneath the price?

Sentiment

15%

News tone over recent coverage, scored for each name and normalised across the universe.

In plain termsWhat is being written about this company right now — and is it unusually positive?

Macro

not in live rank

Market regime context — volatility, rates and policy backdrop. Validation found the original 15% weight structurally inert. It is not in tonight’s rank until the redesign ships.

In plain termsThe live cards use momentum, fundamentals and sentiment only.

Stocks inside an earnings blackout window are excluded before scoring — the system does not take positions into binary event risk. The top quartile of the composite becomes Tier 1; the middle half is held as a watchlist.

The discipline is the product.

Pre-committedPass/fail criteria were locked before the validation began — the test could not move its own goalposts.
Structural haltsSafety checks are enforced by the pipeline itself, not by convention. Bad data cannot reach the portfolio logic.
Honest samplesEvery statistic is reported with its sample size — and flagged when the sample is too small to mean anything.
Sealed recordsValidation evidence is preserved immutably at the moment of close. The history is auditable, not editable.
Validation

Sixty days, measured honestly.

Paper validation · 26 May – 24 Jul 2026 · criteria pre-committed

MERIDIAN completed a 60-day live paper validation against criteria locked before day one. The system ran unattended, generated signals nightly, and a simulated portfolio traded them under fixed rules — stops, targets, sector caps and capital limits — with no human intervention in the trades.

Closed trades in window23
Simulated resultpositive, modest
Average win vs average loss1.49 : 1
Sample required for statistical confidence~100 trades
Verdict on edgecannot yet be confirmed

The honest reading: at 23 trades, the confidence interval around any win rate spans roughly ±20 points — far too wide to distinguish genuine edge from chance. A positive result at this sample is encouraging and statistically silent at the same time. The validation also surfaced real findings — data-freshness gaps, a structurally inert macro factor — now driving the v2 redesign.

“Not a pass. Not a failure. An honest: not enough data — keep testing, deploy nothing.”

The system continues in extended paper validation toward a statistically meaningful sample, across at least one full earnings season. No real capital is deployed, and none will be unless the evidence earns it.

Record sealed at window close