AIX 9.01 ▲0.33% ALU 0.88 ▼-2.22% DN1 99.70 ▼-0.09% EMUCA 0.89 KIT 1.90 ▲0.00% KKC 2.11 ▲0.00% BST 0.30 ▲3.45% CTS 0.56 ▲1.82% EFR 0.00 ▲0.00% FDC 3.33 ▼-1.19% BHP 60.72 ▲0.68% CBA 177.90 ▲0.21% ANZ 37.29 ▼-0.05% GMG 29.87 ▲0.34% CSL 124.30 ▲1.01% FMG 17.80 ▼-3.84% ALL 64.35 ▲0.41% COL 24.27 ▲0.75% AIX 9.01 ▲0.33% ALU 0.88 ▼-2.22% DN1 99.70 ▼-0.09% EMUCA 0.89 KIT 1.90 ▲0.00% KKC 2.11 ▲0.00% BST 0.30 ▲3.45% CTS 0.56 ▲1.82% EFR 0.00 ▲0.00% FDC 3.33 ▼-1.19% BHP 60.72 ▲0.68% CBA 177.90 ▲0.21% ANZ 37.29 ▼-0.05% GMG 29.87 ▲0.34% CSL 124.30 ▲1.01% FMG 17.80 ▼-3.84% ALL 64.35 ▲0.41% COL 24.27 ▲0.75%

Upward-Move Scorecard

Credit-scorecard methodology applied to price direction: daily trend features are coarse-classed into bins, converted to Weight of Evidence, ranked by Information Value, fitted with logistic regression and scaled into points — the same pipeline used to build a credit scorecard.

Read the numbers with credit-scoring instincts inverted. A credit scorecard separates a rare event (~3% default) from a common one, so IVs of 0.1+ and AUCs of 0.75+ are normal. Predicting whether a stock rises is a near coin flip (~50% base rate), so IVs here are one to two orders of magnitude smaller and an out-of-time AUC of 0.53 is a genuine result, not a broken model. The split is strictly by date, with a gap so no training row's outcome overlaps the test window — a random split would leak the future and produce a flattering, false AUC.
No scorecard fitted yet. Run docker compose exec web python manage.py fit_scorecard.