Short-Term Trading Decision System
The actions ahead, in order
What's finished, what's waiting on you, and what unlocks next. Follow it top to bottom — nothing below a gate starts before the gate opens.
- Setup candidates
- 3,737
- Out-of-sample trades
- 785
- Expectancy
- −0.0002 R/trade
- Win rate
- 50.1%
- Profit factor
- 0.999
- Null check
- 0/10 passed · clean
Read this as the system working, not failing. The current technical setups have no edge after costs on real data, and the gates correctly refuse to trade. The machine that can now measure any strategy honestly is built and verified end-to-end — finding a strategy worth promoting is the next campaign.
Step 0 — Decisions only you can make
These three are blocking. Everything in Phase A starts the moment they're answered — reply in chat with your choices.
-
1 · Rotate the pasted keysYou · ~5 min
The Alpaca paper keys and the Resend key were pasted into chat in plaintext. Regenerate the Alpaca pair in the Alpaca dashboard and the Resend key at resend.com, then paste the new ones — I'll update
.envand the Keychain. Nothing secret was ever committed to git.DONE WHEN — new keys verified with a live 200-status probe.
-
2 · Approve the pushYou · one word
Say “push it” and I push
feature/strategy-engineand open a PR to main. I haven't pushed because a push to main triggers your Railway deploy. Safe: the deployed site keeps demo mode; production behavior is identical until you setMODEL_ARTIFACT_PATHthere.DONE WHEN — PR merged, Railway deploy green,
/healthreturns ok. -
3 · Pick an earnings-calendar sourceYou · or delegate
Alpaca doesn't provide earnings dates, and the earnings-blackout gate currently runs blind. Options: Finnhub (free tier, simplest), Financial Modeling Prep, or Polygon. Say “you pick” and I'll go with Finnhub's free tier.
DONE WHEN — earnings dates flow into the labeling engine and the blackout gate uses real data.
Phase A — Hunt for a real edge
My work, iterative, starts after Step 0. Each experiment is judged by the same locked gates plus the null check — most will fail, and failures are discarded, never tuned until they pass. The exit bar for every idea: expectancy lower bound > 0 under 2× modeled costs, clean null, all locked gates green.
-
A1 · Cross-sectional rankingClaude runs
Replace the absolute probability threshold with daily top-k ranking across the universe — take the strongest few names each session instead of asking each name to clear a fixed bar. This is the highest-probability structural improvement.
-
A2 · Event-driven featuresClaude runs
Gap statistics, overnight-vs-intraday return decomposition, and — once Step 0.3 lands — post-earnings drift. Event conditioning is where short-horizon retail edges are historically most plausible.
-
A3 · Widen the universeClaude runs
Grow from 20 mega-caps to ~150 liquid names so the 300-trade and concentration gates become reachable and cross-sectional ranking has something to rank.
DONE WHEN — a research summary reports PROMOTABLE, or the idea list is exhausted and I report that honestly.
Phase B — Intraday depth
Parallel track, not blocking Phase A.
-
B1 · 5-minute labelingGated · after A1
Extend the labeling engine to intraday bars so VWAP and EMA-based exit plans (P11–P13) can be researched with real fills instead of daily approximations.
Phase C — Promotion to the live dashboard
-
C1 · Serve the validated modelGated · needs a PROMOTABLE artifact
Set
MODEL_ARTIFACT_PATHandDEMO_MODE=falseon Railway. The dashboard and MCP tools then issue real gated decisions — LONG only when every gate, the regime filter, and the spread check all pass; NO_TRADE otherwise, with reasons listed.DONE WHEN — status page shows “Model artifact configured: Yes” in production.
Phase D — 20-day forward paper portfolio
-
D1 · Execute the approved planGated · after C1
The US$30,000 simulated forward portfolio you already specced: 20 NYSE sessions, locked universe, P03 official exits, hash-chained event journal, pre-entry email alerts, auditable dashboard. Runs on its own branch per the plan. Forward-testing starts only when there's a validated model to test.
How to follow along
- Email — you get a status mail from
alerts@stratexai.ioat every milestone (one already sent today). - Reports — every research run writes
artifacts/research/research-summary.jsonandout-of-sample-trades.csv; the verdict is thestatusfield. - Dashboard — the local or deployed status page shows mode, Alpaca, and model-artifact state at a glance.