MARKETSBRIEFSIGNALSREGIMEWATCHSTATESLIVERESEARCHEVENTSRATESTRADESCANLEADERSVALUEFORECASTBACKTESTLABARCFUNDSBUSINESSGULFPARLORLABSLOBBY
EXPERIMENTAL · NOT INVESTMENT ADVICE

LABS

A working notebook for experiments built on the DayTraders data spine.

SHIPPED

Works end to end. You can use it now — the data flows and the math is real.

PROTOTYPE

Built, scope is real but limited. May surprise you — the wiring is honest, the scope is just narrow.

IDEA

Described, not built. Could be built — tell us which one matters.

THE DATA SPINE

Every lab reads the same caches the production site already uses. We say what we say because the sign we see tells us what we need to tell you.

prices.json
granger.json
forward-view.json
kronos.json
ledger.json
cohort.json
macro.json
fundamentals
NonFi·SHIPPED
NetNet·SHIPPED
Trace·PROTO
Split·PROTO
Greenblatt·PROTO
Belt·PROTO
Honest·SHIPPED
Voice·PROTO
WhatIf·IDEA
SHIPPED · HONEST

THE HONEST BACKTEST

0 events · Z ≥ 2.5σ · 30D
WIN RATE0.0%
PRECISION0.0%
RECALL0.0%
CONFUSION MATRIX
ACTUAL · UP
ACTUAL · DOWN
SIGNAL
0
TP
0
FP
0
FN
0
TN

FN/TN not modeled in this single-class version — precision/recall computed on the signal set only.

30-DAY RETURN DISTRIBUTION
0
<-20%
0
-20%..-10%
0
-10%..0%
0
0..+10%
0
+10%..+20%
0
>+20%
EVERY EVENT · THE OUTCOME
SUBJECTDATEZFAM30DHIT
WHAT THESE NUMBERS SAY — AND DON'T
  • Z-threshold: 2.5σ · 30-day window · move threshold: 2.0%
  • 0 confluence events met the bar across the backtest window
  • TN/FN not modeled — single-class precision/recall on the signal set
  • Live data sources may yield different results
  • If the numbers embarrass the thesis, the numbers stay.
NORMAL · USEFUL

The two ideas any retail investor can use today. Plain tools, real data, no novelty.

PROTOTYPE

Personal Finance Copilot

NonFi

I have ฿X a month. Help me start — without the spreadsheet.

WHAT
A guided single-page companion for someone who has never invested. Takes income, monthly surplus, target retirement age. Returns: a one-paragraph recommendation, a bucket split (cash / feeders / dream-trades), and the next concrete action this week.
DATA
Plan wizard logic + savings rate + goal ladder (we already compute it on /plan).
DIFF
Not a screener, not a backtest. A 'where do I start' companion. No jargon unless you turn it on.
PROTOTYPE

Graham's Net-Net

NetNet

Stocks trading below the cash on their books — Graham's most extreme test.

WHAT
Graham's 1934 'cigar butt' screen: a stock is interesting when the price is below net current asset value per share (cash + receivables, minus all liabilities). Live filter for SET names currently meeting the bar, with the discount % shown honestly.
DATA
ncavPerShare, ncavDiscountPct (already in MOCK_STOCKS, see src/lib/graham.ts).
DIFF
Most Graham screens start with P/E or P/B. This one starts deeper: with the working capital itself.
MEDIUM · INTERESTING

The ideas that go past the basics — signal backtests, magic formula, the sushi conveyor.

PROTOTYPE

Confluence Tracer

Trace

What happened the 30 days after the bell rang? Replay the moment 3+ signals aligned.

WHAT
Replays every historical moment a SET ticker triggered a 3+ family confluence. Shows the next 30 trading days of price action, side by side with the SET baseline. Honest about the win rate, the average move, and the worst drawdown.
DATA
anomaly.confluence + prices.json. We already build this graph for /signals; this lab shows the post-event window.
DIFF
Most 'signals' tools show the trigger and stop. This one shows the outcome — even when the outcome is uncomfortable.
PROTOTYPE

Pairs Trade Finder

Split

Two names that always moved together — until they didn't.

WHAT
Finds pairs of SET names with high historical correlation that recently decoupled. The 'break' is the moment a relationship snapped — sometimes mean-reverting, sometimes a regime change. Outputs a ranked watchlist with the current correlation vs the 90-day baseline.
DATA
rolling correlation on prices.json (we compute it for the signal web).
DIFF
Most correlation tools show 'current correlation.' We show the BREAK — the moment a relationship snapped, and which way it went.
PROTOTYPE

The Magic Formula (Thai Edition)

Greenblatt

Greenblatt's two ranks on SET50 — earnings yield × return on capital. Not Graham. A complement.

WHAT
Ranks SET50 by Joel Greenblatt's 2006 'Magic Formula' — first by earnings yield (cheap), then by return on capital (good business). The top 5-7 names are the candidates. Pure orthogonal to the Graham shelf.
DATA
pe, roe, marketCap — already aggregated by magicFormulaRanks() in graham.ts. We just need the UI.
DIFF
Not a Graham value screen (we already have that). Greenblatt's complement: cheap AND good, ranked, not picked.
PROTOTYPE

The Sushi Conveyor

Belt

Real-time list of names currently meeting all 7 of Graham's defensive tests.

WHAT
A live tape of SET names whose defensive score (Graham's 7-criteria binary test) is currently 7/7. As prices move, names enter and leave. The conveyor is the watchlist the defensive investor never has to think about.
DATA
defensiveScore (0–7), already in MOCK_STOCKS via defensiveScore() in graham.ts.
DIFF
Not a screener snapshot. A LIVE list — names enter and leave as their defensive tests change day to day.
SHIPPED

The Confusion Matrix

Honest

When the signal system said STRONG BUY, how often was it right? Most tools never tell you.

WHAT
Honest backtest of the signal system. For every confluence event in our history, did the next 30 days actually deliver the direction the signal implied? True positives, false positives, win rate, and a confusion matrix. The system stands or falls by the numbers — no marketing.
DATA
anomaly.confluence + prices.json — same as the PARLOR but with an outcomes overlay.
DIFF
Most signal services never publish their track record. We do. If the numbers are embarrassing, the numbers stay.
WILD · EXPERIMENTAL

The ideas that use the signal web as more than a chart. Counterfactuals, voices, the diary.

PROTOTYPE

Mr. Market's Diary

Voice

A daily first-person voice for the market — built from the actual mood + signal data.

WHAT
A deterministic template that turns today's mood score, the active confluence list, and the top signal into a 200-word first-person paragraph from Mr. Market's perspective. Not a chatbot — a voice grounded in real numbers, refreshed at the same cadence as the data.
DATA
market-mood.json + signal web state + the top confluence subject. The voice never invents — every claim is grounded in one of those three sources.
DIFF
Not a chatbot. A voice that only knows what the data knows — and a click on any sentence shows you which number it's grounded in.
READ THE BRIEF →
IDEA

The Counterfactual Engine

WhatIf

What would SET be doing today if [event] hadn't happened?

WHAT
The structural breaks in SET's price history are dated. Roll back to the day before a chosen break, replay the model forward, and the chart shows ACTUAL vs COUNTERFACTUAL paths. Honest about the limits: structural breaks are detected, not caused, so the counterfactual is a 'what if no shock' world, not a 'what if no cause' world.
DATA
structural breaks timestamps + prices.json + the drift model. We have the breaks; we have the model; we don't have the engine yet.
DIFF
Most 'what if' tools are made up. This one would use the real breaks we already detect. The honest version says what it can't do.
READ THE BRIEF →
WHY THIS PAGE EXISTS

Ideas die in spec docs. The ones worth building are the ones you can show in 30 seconds. Labs is the directory of experiments built on the same data the production site already reads. Some are shipped. Some are prototypes. Some are still just ideas — described honestly, with the data they would need and the reason we haven't built them yet.

None of this is financial advice. The data is real; the math is honest; the recommendations are not. Tell us which lab matters and we'll build it next.