Case study, retired

Copy-edge

Every trade on a prediction market is public. If the informed traders can be picked out of that record, they can be copied. Six versions of the test, six kill conditions written down before the data was pulled, and every one of them fired.

Run in June 2026 over about a week. Killed by its own criteria and not resumed. Written up because the result is useful and the method is reusable. Listed under retired work on the Applied Continuity site. Code, frozen rules and the full findings are public at github.com/kbaas-ai/polymarket-copyedge.

Question

Why it was started

Prediction markets settle in cash against a public outcome, and every fill is visible: wallet, price, size, timestamp. That is a rare thing. In most markets you cannot see who traded, only that a trade happened.

So there is an obvious question. If some wallets are informed, or simply good, and the whole trade history is public, it should be possible to find them from past behavior and ride their future bets. The idea is not new. It is the same logic as following disclosed institutional filings. What is different here is that the record is complete and free.

The point was to find out whether that could be turned into something worth running, or killed cheaply. A validation experiment with a kill switch, not a mandate to make it work. That distinction is the reason it cost a week.

Method

How it was tested

Six guards, all set before any result was seen. Each one exists to close a specific way this kind of analysis lies to you.

Pre-registration

The selection rule was written to a file, every parameter pinned to an exact value, and committed to git before the holdout was touched. The commit order is checkable. Changing a threshold after seeing the result voids the experiment, so the rule was not changed after the result.

A universe that includes the dead

The wallet pool includes wallets that are now inactive or net negative. Build the universe from wallets that are still around and you have selected winners by construction, and every number after that is fiction.

Adverse fills

A copier never gets the price the wallet got. Execution was modeled at the post-trade price plus adverse slippage, net of fees and gas. A zero-friction run was not accepted as evidence of anything.

De-correlated observations

Nine selected wallets entering the same market on the same side is one bet, not nine. Simultaneous entries collapse to a single independent observation, and that is what the sample size and the significance test run on.

Walk-forward, no lookahead

Markets ordered by resolution date. Selection for each fold uses only markets that had already resolved, rolling forward in monthly steps. The final holdout is the most recent fifth of the timeline, and it is evaluated once.

Out-of-regime check

Added later, and the guard that earned its keep. Anything that survives gets re-run, same frozen rule, on a corpus from different market conditions. A rule that only works where it was found has not been validated.

The rule

What was frozen

The first version blended two hypotheses: that informed money enters early relative to price discovery, and that it beats the closing line.

Closing line value measures whether an entry was good at the moment it was made, independently of how the market happened to resolve. For a long on the chosen outcome it is the last traded price before resolution minus the entry price, sign-adjusted for side.

CLV = P_close - P_entry      per entry, sign-adjusted for side and outcome

A wallet qualified only if it cleared every gate. The qualifying set was then ranked on a composite score and cut to a top decile.

1  Track record   traded >= 10 resolved markets AND >= $5,000 notional
2  Closing line   mean CLV >= +0.03
3  Early entry    >= 50% of winning entries placed before the market
                    moved 0.15 toward the eventual outcome
4  Rank           composite score, keep the top decile

One independent copied bet is a unique combination of market, outcome and side that at least one selected wallet entered during the holdout window. That is the count the thresholds are measured on.

Net ROI per bet    >= 0.05     kill if <= 0
Significance       p < 0.05     kill if not significant
Independent bets   N >= 200     kill if unreachable
Mean CLV           > 0

Result

What happened

Run on a corpus of 900 resolved markets, 486,000 trades and 74,000 wallets. All three kill conditions fired at once.

Version 1, frozen rule, final holdout
CriterionHoldoutWalk-forward, 6 foldsResult
Net ROI per bet, target 0.05-1.0052-0.378Kill
Significance, target p below 0.05p = 1.0p = 0.989Kill
Independent bets, target 200N = 4N = 54Kill
Mean CLV, target above 0-0.056+0.148Mixed

The root cause was not that the selected wallets lost. It was that the rule was too selective to be testable at all. The funnel across 720 training markets:

74,000  wallets in the universe
 1,370  traded >= 10 resolved markets
   391  and >= $5,000 notional
    60  and mean CLV >= +0.03
     4  and cleared the early-entry gate
     1  after the top-decile cut

One wallet. With a sample of one, the return and the p-value are not measurements of anything, and the few bets it did produce lost money. The early-entry gate was the binding constraint, and it stayed binding under four times the data.

That is a narrower conclusion than it looks, and it was recorded as such at the time. Version 1 was dead by its own criteria, but a failure driven by over-selectivity is not a powered disproof of the general idea. So the idea got five more attempts, each pre-registered, each on data the previous version had not touched.

The whole arc
VersionIdeaOutcome
v1Copy generic smart moneyKilled. Negative return on a sample of one
v2Insider co-betting clustersKilled. Real coordination, but bots and copy-traders
v3Abnormal wins plus co-occurrenceFailed. The pattern was skilled strategy, not information
v3.1Restricted to discrete unpredictable eventsClean kill. No edge above chance
v4Copy proven category specialistsFailed. Specialists too episodic to copy at scale
v6Fade cheap longshotsPositive, then killed by the out-of-regime check

Version 4 is the one worth reading twice. Copying proven specialists returned plus 34 percent, which looks like a finding until you see it rests on 40 bets at p = 0.20. The high-conviction subset, the bets the signal was most sure about, returned minus 25 percent. The signal was inverted exactly where it should have been strongest.

The structural reason it cannot work is that proven winners are episodic. A trader who reliably fades one kind of market is tied to one class of event. A corpus of 1,413 markets yielded roughly 40 copyable future bets. The sample never reaches significance, not because the edge is absent but because the people who have it do not trade often enough to follow.

The check that mattered

A positive result, killed on purpose

Version 6 found something. Fading cheap longshots on a corpus of geopolitical markets returned plus 8.4 percent at p = 0.02. Significant, in the right direction, and large enough to act on.

It was re-run, same frozen rule, no retuning, on 1,566 markets from a different regime.

One conflict, retail-heavy      +8.4%    p = 0.02    significant
Other conflicts, 1,566 markets  -1.1%    p = 0.69    gone

The favorite-longshot bias was real and it was local to one emotional, retail-flooded episode. In ordinary markets the favorites were priced fairly. A 75 percent win rate that is still net negative is what fair pricing looks like from the inside.

Without that check this would have been the finding. It cleared every other gate. The check caught a false positive before any money was committed, which is the entire reason the check exists.

Outcome

Killed, and what it bought

On accessible prediction-market data there is no reliable, scalable, prospectively profitable copy or detection edge. What looks like edge is consistently skill, strategy, bots or noise, and the rare genuine winners do not generate enough future volume to follow. The one positive result was an artifact of a single market regime.

That also kills the product behind it. A service promising winning trade ideas, built on an edge that does not generalize, is a tout service. The honest version would be analytics and transparency with no profit promise, which is a different business and not the one being tested.

The cost was compute and about a week. The alternative cost, which is the whole point of running it this way, was learning the same thing with a funded position.

Transfer

What carried over

Write the kill condition first

The threshold that ends the project has to exist before the first result does. Afterwards it is not a threshold, it is a negotiation, and the person on the other side of it is you.

A positive result is a hypothesis

Version 6 was significant and it was wrong. Anything that survives gets re-run against conditions it was not found in, before it is believed and long before it is funded.

Sample size is a design decision

Three of the six versions failed on sample size rather than on returns. A selection rule tight enough to be convincing can be tight enough to be untestable, and that is knowable in advance.

Say what was not shown

Version 1 killed version 1. It did not disprove the general idea. Recording that difference honestly is what made the next five attempts worth running instead of a rerun of an argument already lost.