Success Feed
Trade-now spans detected for the last 24 hours across active opportunities.
Using preset Balanced (max gap 2m), min edge 3¢.
Times shown in UTC (UTC).
API: https://api.cornice.dev
Min edge (¢)
The Success feed is built from the Time Alignment Approximation strategy, which compares Polymarket BTC hourly “Up/Down” markets to Kalshi’s hourly BTC strike grid to find overlapping payout ranges.
Data captured each scan: Polymarket event metadata and CLOB best asks (Up/Down), Kalshi strike markets with YES/NO asks, the BTC hourly open price (Binance) used as the price-to-beat, and timestamps for both venues.
Alignment logic: The system picks the current (or next) Polymarket hour, then targets the closest Kalshi event (usually the next hour, or inferred from Polymarket start/end times). If the exact Kalshi event is missing, it chooses the nearest close time within the series.
Edge calculation: Around the closest Kalshi strike to the price-to-beat, the system pairs legs (Poly Down + Kalshi Yes when poly strike > Kalshi strike, or Poly Up + Kalshi No when poly strike < Kalshi strike). It computes total cost in cents and edge = 100 - total_cost, and keeps the best edge.
Success signal: Each scan becomes an observation in the database. The Success page groups consecutive observations where edge ≥ your min threshold, allowing small gaps (preset). Each span is a trade-now window, with duration, max edge, avg edge, and number of observations.
The opportunity loop runs every 10 seconds by default and writes one observation per scan into the database. This cadence is controlled by opportunity_interval_s.
Each observation includes the best candidate edge, total cost, and the full Polymarket/Kalshi snapshots used to compute it. These rows live in opportunity_observations.
Backend references: app/opportunities/time_alignment.py (core logic), app/data/ingest.py (opportunity loop + writes), app/infra/db.py (DB insert), and docs/opportunities/time-alignment-approx.md (strategy spec).
No opportunities configured.