← All projects
Live Updated: Invalid Date

Prediction-market monitor + paper-trading scanner

A strictly read-only research stack that monitors prediction markets and perpetuals venues and tests copy-trading strategies purely on paper, in DRY-RUN mode, with no funded wallet and zero real risk. It spans four venues under one protocol: Polymarket, Hyperliquid, dYdX v4 and GMX. The full chain runs from whale discovery (high P&L wallets), through strict qualification and fee modeling, to out-of-sample backtests.

It is roughly 90 Python scripts across the four venues, plus paper-trading daemons run through cron jobs and PowerShell watchdogs. Methodological discipline is the core of the project: every hypothesis is pre-registered, tested only on 60/40 out-of-sample data, and checked against noise. The one copy direction that cleared the OOS gate was dYdX v4; the rest were honestly rejected. Real cost stays at $0, everything is paper, and a self-monitor caught a 38-hour failure.

Read the full case study →

The problem and the motivation

Prediction markets (Polymarket) and decentralized perpetuals venues (Hyperliquid, dYdX v4, GMX) expose an enormous amount of public data: order books, trades, and the positions of the most profitable wallets. The question the project set out to answer is simple but hard to answer honestly: is there a real, repeatable edge that a single retail participant can exploit using only public APIs and free infrastructure, with no colocation and no sub-100-millisecond bots?

The market's implicit answer is discouraging. Web research confirmed that binary and combinatorial arbitrage on Polymarket is largely dead: roughly 73 percent of arbitrage profit goes to sub-100-millisecond bots. That is exactly why the project did not start with a funded wallet and greed, but with rigor. The entire stack is read-only, with no funded wallet, and every strategy lives or dies on paper-trading evidence rather than on conviction.

The architecture and how it works

The stack is organized as a single protocol spanning four venues, with roughly 90 Python scripts. The logical chain is the same regardless of venue: discovery, qualification, cost modeling, backtest, then forward paper-trading.

On the discovery side, scripts in the whale_discovery and whale_mirror families track the highest P&L wallets. On Polymarket the source is the leaderboard API plus on-chain wallet scanning; on dYdX v4 the public indexer is used (historical P&L and perpetual positions), although the affiliate endpoint stops at a ceiling of roughly 1173 affiliates and the trades feed is anonymized. On Hyperliquid there is a whole family of scripts (hl_wallet_tracker, hl_active_filter, hl_mirror_daemon) to identify and follow active whales.

On the signal side for Polymarket, several sources are fused: an intra-market scanner for YES plus NO inefficiencies under one dollar, an uncertainty-zone harvester (markets between 30 and 70 percent), and an arbitrage scanner against the Pyth oracle, which compares the fair value implied by Pyth feeds with the Polymarket price on price-linked binary markets. That Pyth scanner uses a 15-pattern blacklist (volatility indices, fear-greed, dominance, gas, floor-price and others) plus a minimum-strike sanity gate, precisely to avoid generating false signals. A decision_board unifies all sources, aligns them by canonical slug, and notionally sizes positions with a Kelly fraction capped at 5 percent.

On the execution side there is an auto_trader, but it remains a scaffold in DRY-RUN mode. It has a three-gate safety, all required simultaneously for any real submission: an environment variable, a command-line flag, and an interactive prompt that requires typing an exact confirmation. In practice the EIP-712 signed orders are built offline and written to logs, never sent.

The key technical decisions and why

The central decision of the project is not one of code but of method: a proof protocol applied to every strategy. A hypothesis must be stated first, with N, target and kill condition pre-registered; testing happens only on out-of-sample data; costs must be complete, including latency; the result must be de-biased and adversarially verified; and final confirmation comes only from a live forward test on paper. This discipline was adopted precisely because the project produced several mirages early on.

That is how the 60/40 out-of-sample test came about. On dYdX v4, discovery scanned all 1173 affiliates and extracted 60 candidates with P&L above 500 dollars. Re-run on those 60, the pool returned plus 35.39 over 4254 round-trips, with a 56 percent win rate and a t-statistic of 6.73; 22 of 39 survived the OOS gate. dYdX v4 was the only copy direction that cleared all the honest bars: pool-positive, t above 3, above noise after de-biasing, and stable on expansion. For comparison, Polymarket copy came out pool-negative, and GMX failed the t-gate.

Another important decision was modeling fees correctly. Many seemingly profitable strategies die once real cost is added. That is why the funding-carry books got a fee correction (maker entry, fee-aware gate, minimum hold to break-even), and the conclusion was that market-making is not a standalone edge: on Hyperliquid the maker rebate is not reached by retail except after enormous volume, and on Polymarket the maker only works as a subsidy on a real fair-value model.

A notable engineering choice was around discovery: the copy scanners initially surfaced historical winners, not currently active traders. The correction, a recency filter, narrowed the list to those active in the last few days, honestly exposing that the real tradeable base was thin rather than a slam-dunk.

Engineering details: anti-fragility, cost and testing

The stack runs continuously through paper-trading daemons launched by cron jobs and hidden VBS files, with PowerShell watchdogs. Anti-fragility was earned through real pain. The Hyperliquid paper daemon was found frozen due to a candidate-file rot (a lexical-newest gotcha), and the self-monitor caught a 38-hour failure. From this came dedicated healthchecks (hl_paper_daemon_healthcheck, paper_daemon_healthcheck) and an explicit daemon-staleness rule.

Another reliability lesson was the forward-only rule: seeding of the copy books must be done per-wallet or with a time floor, never with a global flag, after a bug that replayed 82 closed positions showed that a daemon can be alive without actually working. The WebSocket realtime watcher likewise received incident patches: a 5-second debounce, a 10-per-second token bucket, and an async yield, after a 22-hour freeze.

Cost was a design constraint, not an afterthought. All feeds are free: Polymarket's CLOB and Gamma APIs, the dYdX v4 indexer, the Hyperliquid API, the Pyth Hermes REST feeds. For sports CLV the historical Pinnacle (no-vig) feed was used through a free provider with a budget of 250 requests per month, explicitly guarded in code. The cost discipline went down to details: a known gotcha is that the get_markets call returns stale 2023 sports games, so all code uses get_sampling_markets for live data.

The outcome and current status

The project's most honest result is its own negative: after an adversarial search across the whole strategy space (16 cells, dozens of agents), no candidate survived as a clear retail edge on Polymarket, Hyperliquid or dYdX with public APIs only and free infrastructure. The recorded conclusion was that the wall is the constraint, not the search, and that only structural yield (for example HLP, around 10 percent) works, but that is beta, not alpha.

At the same time, two live leads remain. dYdX v4 is still the project's strongest copy signal, taken through discovery, OOS gating, majors de-risking and a recency correction, with a paper daemon watching the survivor names as the final arbiter. Sports CLV remains the other structural lead, built end-to-end (backtest plus forward test), grounded in the fact that a prediction market cannot limit or ban a sharp participant, accruing toward a 50-settlement verdict.

The current status is therefore one of mature, honest research. The stack produces daily decision reports, realtime snapshots and reproducible backtests, with seven paper books running on valid data, at $0 real risk, all paper and DRY-RUN. Its value lies not in a promise of profit but in a rigorous method that honestly separates signal from noise.

Timeline

  • 28/05/2026 Project start: Phases 1, 2 and 3 of the stack built (data harvest, Kelly decision board, backtest and DRY-RUN auto-trader with three-gate safety); BOOT POLYMARKET trigger added.
  • 10/06/2026 dYdX v4 copy edge confirmed robust: 60 candidates, pool +35.39 over 4254 round-trips, t+6.73, 22 of 39 survive the OOS gate; the only direction clearing all honest bars.
  • 14/06/2026 Proof-protocol sprint: proof protocol written, market-making rejected as a standalone edge, latency cleared as a suspect via latency_decay_sim.
  • 15/06/2026 Sports CLV system built and verified end-to-end on real data (Pinnacle no-vig via OddsPapi, first data point Spain vs Cape Verde); retail Polymarket arbitrage confirmed dead.