Appearance
Thesis Monitors & Fuses
Every prediction starts with a thesis — a qualitative view on where the stock is headed. But a thesis is only useful if it can be tested. Thesis monitors are the system's way of asking: "What would prove me wrong?"
What Are Falsifiable Hypotheses?
When the LLM generates a thesis, it also produces 2–4 falsifiable hypotheses — specific, testable conditions that would invalidate the thesis if they occur.
Think of them as tripwires: if the metric crosses the threshold, the tripwire fires, and the system knows the thesis may need revision.
| Example Hypothesis | What It Means |
|---|---|
| "If RSI crosses above 70, the bullish thesis is weakened" | Overbought conditions could reverse the uptrend |
| "If price falls below $145, the bear case is confirmed" | Key support level broken — downside risk realized |
| "If put/call volume ratio rises above 1.2, hedging pressure is excessive" | Market is betting against the stock |
| "If sentiment drops below 30, the thesis is invalidated" | News has turned decisively negative |
What Makes a Good Hypothesis?
The system validates each hypothesis before registering it:
- Not already breached — if RSI is already 75, a hypothesis saying "RSI above 70" is rejected (it would fire immediately)
- Plausible scale — thresholds are checked against the metric's natural scale:
- Price levels (
current_price,daily_low,daily_high,daily_open) must be within 0.3×–3× of the current price (no "price above $5000" for a $50 stock) - Volume (
daily_volume,volume_vs_5d_avg) must be within 0.1×–10× of the recent 20-day average daily volume - Bounded metrics with a hard operating range are rejected if the threshold falls outside it — e.g. implied volatility 5–300%, put/call ratio 0.1–5, RSI/sentiment/momentum scores 0–100,
re_acceleration/surprise_magnitude−100–100 (a value outside the band is treated as a unit/scale error)
- Price levels (
- Not trivially satisfied — a non-absolute threshold within 15% of the live reading is rejected as "trivially satisfied" (it would fire on noise rather than a real move)
- Strict units — thresholds must use the metric's real units (absolute levels, not multipliers): implied volatility is a percentage, put/call ratios are raw numbers, RSI/sentiment are 0–100 scores
- Baseline correction — if the statement embeds a wrong present-value baseline (e.g. "from current 0.09"), it is automatically rewritten to the actual live value before being stored, so the saved hypothesis text stays factually accurate
- Testable — the metric must be one the system can actually monitor (many are supported, including price, RSI, volume, sentiment, sector-relative strength, beta, and correlation)
What Are Fuses?
A fuse is the outcome of a hypothesis over the prediction period:
- Triggered fuse (red) — the metric crossed the threshold. The condition that could invalidate the thesis was met.
- Safe fuse (green) — the metric never crossed the threshold. The thesis survived on this point.
At resolution time, the retrospective shows which fuses fired and which survived.
The Full Workflow
📝
Day 0 — Generate
LLM produces thesis + 2–4 falsifiable hypotheses
↓
✅
Validate
Reject already-breached or implausible thresholds
↓
💾
Register
Store as active monitors in database — older fuses on the same signal are retired to make room
↓
🔄
Days 1–N — Monitor Daily
Check each monitor against live market data
↓
🚨
Triggered
Metric crossed threshold → injected into next prediction
↓
🛡️
Safe
Threshold not breached → stays active
↓
📊
Day N — Resolution
Prediction resolves → Retrospective shows triggered vs safe fuses
↓
🧠
Post-Mortem
Fuses inform what invalidated the thesis and why
Stage 1: Generation (Day 0)
When a new prediction is made, the LLM produces a thesis with falsifiable hypotheses. Each hypothesis has:
| Field | Description |
|---|---|
| Statement | Human-readable text: "If RSI crosses above 70, the bullish thesis is weakened" |
| Trigger type | Category: price_level, rsi_cross, volume_spike, sentiment_shift |
| Monitoring metric | What to watch: current_price, daily_low, daily_high, daily_volume, rsi_1d, put_call_volume_ratio, implied_volatility_30d, ticker_sentiment, rel_strength_sector, beta_sector, correlation_sector, etc. |
| Threshold direction | above or below |
| Threshold value | The numeric trigger point |
| Impact | Severity if triggered: minor, moderate, or severe |
The system validates each hypothesis, then stores it as an active monitor in the database.
When a new thesis regenerates a signal it already monitors, the older-generation monitor is retired (active → expired) so the fresh fuse takes its place — and only if a valid replacement actually registers, so an implausible new candidate can never destroy the old fuse. Triggered monitors are never auto-retired: they stay as evidence for the retrospective and the next prediction's context.
Stage 2: Continuous Monitoring (Days 1–N)
Every day, the system checks each active monitor against live market data:
- Fetches the current value of the monitored metric
- Compares it against the threshold
- If breached → marks the monitor as triggered and records the actual value
This happens continuously throughout the prediction period — not just at resolution time. A fuse can fire on Day 2, Day 5, or any day before the target date. Before the check, monitors whose lifetime has ended are pruned (see How Long Do Monitors Live?).
Stage 3: Context Injection
When a fuse fires, it's injected into the next prediction as context:
=== PREVIOUSLY TRIGGERED HYPOTHESES ===
• If RSI crosses above 70, the bullish thesis is weakened
Trigger: rsi_1d above 70 (actual: 72.3)
• If price falls below $145, the bear case is confirmed
Trigger: current_price below 145 (actual: 143.21)This tells the LLM: "Your previous thesis had these conditions violated — take that into account."
Stage 4: Resolution & Retrospective
When the prediction's target date passes, the retrospective summarizes the fuse analysis:
- Triggered fuses — which conditions were met (the thesis was invalidated on these points)
- Safe fuses — which conditions never occurred (the thesis survived)
The retrospective generates a 2–3 sentence takeaway explaining what the fuses mean for thesis quality.
How Long Do Monitors Live?
A monitor is a fuse for the thesis generation it was extracted from — the predictions made for that ticker on that prediction_date (short / medium / long horizons, each with its own thesis). It must not outlive the predictions it exists to falsify, so every monitor has a computed expiry:
expires_at= the earlier of: 14 days after registration, or the furthesttarget_dateof its own thesis generation.
- Once every prediction in that generation has resolved (the furthest target date has passed), the monitor is automatically pruned to
expired. The dashboard stops surfacing it, and it stops being evaluated. - For legacy monitors that predate horizon stamping (
horizon_group = NULL), this generation-tied expiry only applies on short-only days (no medium/long predictions for that date), where the link to the short thesis is unambiguous; otherwise they keep the plain 14-day cap.
Seeing It on the Dashboard
On the Monitor card ("Live falsifiable hypotheses"), each fuse shows its computed expiry as fuse expires <date> — for example fuse expires Sep 8, 2026. This is the earlier of the two bounds above, so you can see at a glance how long the tripwire has before it goes dark.
Replacement on Thesis Regeneration
Each time a new thesis is generated for a ticker, only a handful of new monitors can coexist (deduplication keeps near-identical thresholds apart). To avoid an old fuse from a previous week's thesis permanently occupying a signal slot, registration retires superseded monitors:
- When a fresh thesis registers a monitor for a signal, any
activemonitor for the same metric + direction from an olderprediction_dateis retired toexpired, freeing the slot for the new fuse. - Retirement only happens when a valid replacement actually registers — an implausible or already-breached new candidate never deletes the old fuse.
- Triggered monitors are never auto-retired; they stay as evidence for the retrospective and prompt context.
Where You'll See This
All thesis monitor data is available at app.f1n.tech/predictions.
Reasoning
On the Predictions page, click View reasoning for any prediction to see the falsifiable hypotheses listed under the thesis. This tells you what conditions the system is monitoring for that prediction.
Retrospective
On the Predictions page, click the retrospective button (book icon) for a specific prediction to see the fuse analysis.
When is the retrospective available?
The retrospective is generated after the prediction's target date passes and the accuracy validation runs. This typically happens on the next trading day after the target date (default schedule: weekdays at 17:00). Until then, the retrospective button will not appear for that prediction.
The retrospective shows:
- "What are Fuses?" — explanation of the concept
- Triggered Fuses (red section) — conditions that were met during the prediction period
- Safe — Never Fired (green section) — conditions that stayed within bounds
Each fuse shows the metric, threshold, and the actual value when it triggered (or didn't).
Why This Matters
Falsifiable hypotheses make the system self-aware. Instead of blindly trusting its own predictions, the system:
- Defines what would prove it wrong — before the fact, not after
- Monitors continuously — catches invalidation early, not just at resolution
- Incorporates feedback — recently triggered fuses are injected into the next prediction as context ("PREVIOUSLY TRIGGERED HYPOTHESES"), so the LLM sees which of its prior assumptions were violated
- Reviews outcomes — at resolution the retrospective analyzes which fuses triggered and which stayed safe, and presents it to you for review
Where the actual learning happens: the ML models (quantile GBM, direction classifier) are retrained on each resolved prediction's price outcome (the realized return). The fuse outcomes themselves are not yet used as a training signal — they are surfaced for your review and fed back only as next-prediction context, not into the models' weights.
This creates a feedback loop: triggered fuses inform the next forecast, and the models improve as more price outcomes resolve — with the fuse retrospective as a human-in-the-loop check on thesis quality.
Key Terms
| Term | Definition |
|---|---|
| Falsifiable hypothesis | A specific, testable condition from the thesis (e.g., "RSI will cross above 58"). Monitored daily — if triggered, the thesis may need revision |
| Thesis monitor | A database record tracking a falsifiable hypothesis against live market data. Status: active, triggered, or expired |
| Fuse | The outcome of a hypothesis — either "triggered" (metric crossed threshold) or "safe" (never fired) |
| Triggered fuse | A hypothesis that fired during the prediction period. The actual metric value crossed the threshold |
| Safe fuse | A hypothesis that never fired. The metric stayed within bounds throughout the prediction period |
| Proximity gate | Prevents near-duplicate monitors — rejects a new hypothesis if an existing one has a threshold within ±20% on the same metric |
Expiry (expires_at) | When the fuse goes dark: the earlier of 14 days after registration or the furthest target date of its own thesis generation. Shown on the Monitor card as "fuse expires <date>" |
| Replacement retirement | When a regenerated thesis registers a valid monitor for a signal, the older-generation active monitor on the same metric + direction is retired to expired so the new fuse takes its slot |

