Polymarket
/positions, /closed-positions, CLOB, Sports WScondition_id outcomes outcomePrices currentValue cashPnl realizedPnl avgPrice best_bid_ask event.game_id sport_result
Row-level Polymarket data for research: provider IDs, full trade lineage and resolution outcomes in one schema, with daily grades and a daily price series.
Counts from the platform stats service, the same numbers /data and /datasets show. Wallets, markets and days are exact; the position count is the database's row estimate. When the service has no number, the field shows a dash.
Updated hourly. Counts as of Oct 16, 4:37am ET.
P&L comes from the provider's own /positions and /closed-positions endpoints, depth from the CLOB, identifiers from condition_id. Nothing is re-derived locally on the primary path.
condition_id outcomes outcomePrices currentValue cashPnl realizedPnl avgPrice best_bid_ask event.game_id sport_result
Per methodology, markets.platform is the authoritative venue discriminator, never a slug or ID-prefix heuristic.
The same row shape the product uses everywhere. The scenario below is illustrative, and every column it names is a real column in the live schema.
trades with price, fee rate, event identity, and trade time.trader_markets row materializes from Polymarket /positions: size 178,200, currentValue 89,100, cashPnl 0. Provider field, not local math.whale_alerts.best_bid_num, .best_ask_num, .spread_bps_num and .book_depth_usdc_num (depth from 21 Mar), read when the trade was recorded. Later trades come from on-chain fills, which carry no order book, so all four are empty on them./closed-positions emits realizedPnl 89,100; markets.resolution flips to YES, markets.platform stays POLYMARKET. Same wallet, same identifiers, settled lineage.Every figure on those pages comes from a run committed to a public repository. If a number on a page disagrees with the repository, the repository is right.
79,580 buys of $10,000 or more, June 1 to October 6, 2026
Graded as of each trade and scored against settlement, S wallets beat the price they paid by 1.73 points, interval [+0.41, +3.06], and A wallets by 1.12; B wallets came in 0.91 points worse. Corrected October 7, 2026: the first version read grades written after the trade.
416,548 sports buys, $8.25 billion, April 2 to September 11, 2026
Buyers paid 60.6c on average and the side they bought won 60.9% of the time, +0.23 points against the price. The longshot penalty leans only below 10c, and its interval there reaches zero. Corrected October 10, 2026: the first version scored void markets as losses and reported +0.02.
161,128 graded sports buys, June 1 to September 11, 2026
Graded as of each trade, S, A and B wallets came in at +0.50 points, interval [-0.58, +1.59], and D and F wallets at -0.18: no separation across all buys. In play the two cohorts are 2.45 points apart, interval [+0.50, +4.40]. Corrected October 7, 2026: the first version read grades written after the trade and reported +1.25 and -1.21.
401,482 sports buys timed against kickoff, April 2 to September 11, 2026
48.6% land after the start. Money placed one to seven days before kickoff loses 2.19 points, interval [-4.01, -0.43]; from six hours out through in-play the price is calibrated.
The SQL, the raw query output and the market-clustered bootstraps are at github.com/0xinsider/research, under CC BY 4.0. The grade study's market-level export is committed with it, so its bootstrap reproduces the published confidence intervals with no access to this database at all. The three sports bootstraps read exports their queries write, so those need a database; the committed output is the run their figures come from. The sports grade splits were re-run on October 7, 2026 with each buy graded as the wallet stood at the trade, and that run's queries and output sit beside the September files.
Each question names the tables its query touches, every one of them live in the schema today, at the resolution the question asks for. Grades are daily snapshots and the price series is daily; the only sub-daily price is the top of book recorded on large trades from 15 Feb to 17 Jul 2026.
Does a wallet's grade predict outcomes outside sports, where prices are 6 to 10 points less accurate?
whale_alertsmarket_outcomestrader_rankingsFrom February to July 2026, did the top-of-book spread at the moment of a large buy predict how that buy settled?
whale_alerts.spread_bps_numwhale_alerts.best_bid_nummarket_outcomesDay by day, how far does a market's price travel between a large graded buy and its settlement?
whale_alertsoutcome_price_snapshotsmarket_outcomesOne address for collaboration scoping, citation strings, and bulk-export requests.
Email trevor@0xinsider.com with the question you are working on, and the publication target if you have one. One of 3 answers comes back, within 48 hours in most cases: the export, a Neon read replica for ad-hoc queries, or a precise list of what is not yet in the dataset.
Useful next stops: /datasets for current exports, /developers for the REST API and MCP server, /transparency for how identifiers, P&L lineage, grades, and depth are computed.
When dataset rows appear in a paper, working paper, or thesis, use the BibTeX entry below or the plain-text fallback.
@misc{0xinsider2026dataset,
title = {0xinsider: Polymarket trade, position, and orderbook data},
author = {Lasn, Trevor},
year = {2026},
howpublished = {\url{https://0xinsider.com/academic}},
note = {Polymarket prediction-market dataset; access date varies}
}Prediction-market trade, position, and orderbook data sourced from 0xinsider (0xinsider.com/academic). Row-level coverage of Polymarket. Include access date for snapshots.
Send the work scope, the data fields, and the citation requirements. We reply with what is straightforward, what needs a bulk export, and the citation terms.
Read the published picks or follow large trades. The free feed runs 24 hours behind; Pro has no delay.