pam ▸ docs/prds/PRD_001_eventful_market_observation.md
updated 2026-03-28
PRD 001: Eventful Market Observation
Goal
Make Pam observe the parts of Kalshi that are most likely to contain real dislocations instead of repeatedly journaling calm snapshots.
Problem
Pam’s replay loop currently learns from many snapshots with:
- no meaningful price change
- no meaningful spread change
- no real modeled edge
That makes the research loop honest but weak. We need to bias collection toward moments where a trade could plausibly exist.
Requirements
- Persist eventfulness features per observation: - yes price move since prior observation - spread move since prior observation - tradeability move since prior observation - time to resolution - eventful score and reasons
- Prefer journaling eventful rows by default.
- Preserve a small fallback sample when nothing eventful exists so the loop still advances.
- Surface the top eventful tickers in
research/latest_state.json.
Success Criteria
- At least 50% of newly journaled rows have non-zero
eventful_score. - Replay rows include eventful metadata.
- Human and Discord status summaries expose eventful scan strength.
Non-Goals
- Live execution
- Cross-venue arbitrage
- A production-quality fair value model
Notes
This is the collection-quality layer. It should be optimized for learning signal, not for triggering trades directly.