PunkPredictor
CryptoPunks trading research

Is trading CryptoPunks profitable?

Completed price pairs in our public backtest were profitable in ETH before costs. Buying only below PunkPredictor's valuation increased that profit by 49.5%, with 39.7% fewer completed pairs.

Unsold Punks change the answer. In our extended study, both strategies lost in USD when the remaining holdings were valued at the model's October 1, 2026 estimates.

Cumulative gross profit on completed price pairs
Public backtest, before costs and excluding unsold holdings: gross ETH profit on closed price pairs is plus 2,230.8 ETH with the filter, versus plus 1,492.6 ETH for buy-all.
September 24, 2024–October 1, 2026. Monthly endpoints; October is partial. Historical price replay before costs. This is not a customer account or a portfolio equity curve.
01 / PUBLIC BACKTEST

Does buying below the model's valuation improve trading results?

We tested one entry rule: buy only when the Punk's recorded sale price is below its PunkPredictor valuation. The buy-all benchmark accepts every eligible entry. Both replays use the next recorded sale of the same Punk as the exit. The buy-all strategy gives us a benchmark; it does not represent every trader who trades without PunkPredictor.

The public backtest contains 3,628 price observations and 1,820 completed price pairs. Each pair joins a purchase price to the next sale price in that dataset. The model filter retains 1,098 pairs.

Public backtest · October 1, 2026 · Closed price pairs only; before costs; unsold holdings excluded
MeasureBuy every eligible entryPunkPredictor filter
Completed price pairs1,8201,098
Gross ETH profit+1,492.6 ETH+2,230.8 ETH
Gross USD-equivalent profit−$3.05m+$3.73m
Profitable pairs in ETH67.4%74.7%
Profitable pairs in USD57.5%62.2%
Median ETH gain per pair+3.82%+4.95%
Median USD gain per pair+2.79%+4.31%
Gross purchase outlay74,580 ETH42,409 ETH

USD equivalents use the ETH price on each purchase and resale day, with the previous available day for a missing rate. The stored series is ETH/USDT, used as a USD proxy. Gross purchase outlay counts capital again whenever it is used for another purchase.

At the October 1, 2026 snapshot, the filter produced 49.5% more closed-pair ETH profit while reducing gross purchase outlay by 43.1%. That supports a practical use for valuation: passing on entries where the asking price leaves little room.

The buy-all strategy led in cumulative gross ETH profit through January 2026; the filter was ahead by the February month-end. The ending date matters.

These totals assume enough capital was available for every entry. The replay assumes historical transaction prices were available and follows the next observed resale rather than a live exit signal. It does not model competition for fills, gas, marketplace costs, financing or taxes.

A stricter ownership check narrows the advantage. Of 1,820 public backtest pairs, 490 (26.9%) do not pass every additional check for matching ownership, consecutive ordinary cash sales and a later resale. When we require consecutive ordinary cash sales with matching ownership, the filter still leads, but both groups show positive gross USD profit. The ETH advantage narrows to about 110 ETH, compared with 738 ETH in the public backtest.

Ownership-checked subsetBuy every eligible entryPunkPredictor filter
Ownership-linked pairs1,330843
Gross ETH profit+1,873.9+1,983.8
Gross USD-equivalent profit+$0.83m+$3.01m

PunkPredictor's current curated wallet-to-entity map links purchases and resales across an owner's wallets. These are ownership-linked gross price outcomes, not audited investor net profits. Records that fail this check are unverified here, not necessarily invalid sales.

02 / EXTENDED STUDY

Realized profit and unsold CryptoPunks

After a sale

Measure what the owner paid against what they received. A transfer between the owner's own wallets carries the original purchase cost forward. The resale is what realizes the trading gain or loss.

Net realized profit = sale proceeds − purchase cost − transaction costs

While still held

A listing price is a seller's ask. A model valuation estimates a possible sale price. Neither is cash received, and neither guarantees a buyer at that price.

We can estimate an unsold Punk's value with the model. We keep that estimate separate from the money received on completed sales.

The unsold holdings change the picture

We checked the last performance observation for each Punk against the fuller sales database. For entries with no later recorded sale, the October 1, 2026 model estimates show losses in both currencies:

Unrealized estimates · October 1, 2026Buy every eligible entryPunkPredictor filter
Open positions with a current estimate1,741658
Estimated unrealized ETH P&L−9,176.7−1,006.7
Estimated unrealized USD P&L−$40.04m−$7.97m

Hypothetical open positions under the resale rule, not verified current investor holdings. Estimates captured at 10:30 UTC; USD proxy 2,681.63 per ETH. Entries with unmatched records or a later sale are excluded. Current model values are estimates, not executable bids.

The positive USD claim applies to the public backtest. For the extended study, we used the next sale in the fuller sales database, then added estimated gains and losses on the remaining holdings. The filter's combined result is about −$4.62m, versus −$42.08m for buy-all, before costs. The same extended study shows +968 ETH for the filter versus −8,000 ETH for buy-all. The filter improves the result in both currencies, while the USD total remains negative.

The extended study covers 1,737 filtered entries and 3,511 buy-all entries, including 658 and 1,741 open positions respectively. It excludes 117 unresolved buy-all entries (49 filtered). It uses different entries and resale records from the public backtest. Do not add the earlier tables together. See the methodology.

03 / HISTORICAL RESALES

CryptoPunks trading profits by resale year

An all-time average can be dominated by Punks bought cheaply in the early years. We matched 22,969 ordinary cash purchase/resale pairs across the longer history, including years before PunkPredictor's recorded performance dataset began. Our wallet groups let us link a purchase in one wallet to a resale from another wallet belonging to the same owner.

This table groups trades by the year of resale. A purchase may have happened years earlier. It shows the median completed trade, not the return from buying on January 1 and selling on December 31.

Resale yearPairsMedian ETH gainMedian USD gainProfitable in ETH
2017162+49.6%+47.4%68.5%
2018118+50.0%+11.1%68.6%
2019302+56.0%+27.2%90.7%
20202,852+39.3%+49.5%89.8%
20217,765+33.1%+50.7%87.6%
20222,397+6.9%+2.0%70.2%
20236,283+0.0%+0.0%49.6%
20241,295+1.1%+6.6%52.6%
20251,184+4.1%+5.7%64.4%
2026 YTD611+1.7%−1.8%56.0%

V2 CryptoPunks only. 22,969 consecutive ordinary cash-sale pairs with matching buyer-to-seller entities. Before costs; unsold holdings omitted. 2026 ends October 1. Current entity links are used retrospectively. ETH and USD have complete coverage in this table.

The typical completed trade made far larger ETH gains in 2020 and 2021 than in recent years. In 2023 the median ETH price change was zero. And a positive ETH outcome can still mean a dollar loss when ETH falls while the Punk is held.

The table only includes Punks that sold again. Owners who did not sell are absent, and Punks that traded repeatedly appear more than once. Historical success does not tell us that the remaining holdings can be sold profitably today.

04 / WHAT SURVIVES THE STRESS TEST?

How much do trading costs change the profit?

We applied an illustrative 1% cost to both the purchase and the resale of every completed pair. This is a stress test, not a statement of the fees on a particular marketplace.

On the public backtest, the filtered result falls to about +1,360 ETH and +$1.10m. Buy-all falls to about −14 ETH and −$7.65m. At 2% per leg, the filtered closed-pair USD result also turns negative.

The positive filtered gross result is not entirely due to one spectacular trade: removing its five largest winning pairs still leaves about +1,976 ETH, or +$2.85m when the five largest dollar winners are removed separately. Neither check accounts for the unsold positions.

05 / COMMON QUESTIONS

Understanding CryptoPunks returns

Why can a CryptoPunk gain in ETH and lose in dollars?

The ETH exchange rate can move more than the Punk's ETH price. For example, buying at 20 ETH when ETH is $3,000 costs $60,000. Selling at 24 ETH when ETH is $2,000 returns $48,000. That hypothetical trade gains 20% in ETH and loses 20% in dollars, before costs.

Does a profitable ETH trade mean CryptoPunks beat holding ETH?

For a completed purchase and resale, a positive ETH gain leaves you with more ETH than you spent, before costs. But this study does not show that an entire CryptoPunks portfolio beat holding ETH: that comparison also needs unsold holdings, idle cash, costs and matching entry and exit dates. The closed-trade totals cannot answer it alone.

Can I use the floor price to calculate my profit?

The CryptoPunks floor price is the lowest available asking price. It gives you market context, but it does not tell you what someone will pay for your Punk. For a completed sale, compare proceeds with your purchase cost and fees. For an unsold Punk, use a Punk-specific valuation as an estimate and label the result unrealized.

06 / HOW TO READ THE NUMBERS

Sources, rules and limits

This is PunkPredictor's study of its own valuation filter. We publish the results that weaken the headline as well as those that support it, and link to the backtest so you can inspect how it works.

Which data and strategy rules did we use?

The public backtest table reproduces PunkPredictor's live backtest from a fixed October 1, 2026 snapshot. Entries run from September 24, 2024 to October 1, 2026. The filter requires the recorded model estimate to exceed the entry price. All 3,628 prediction timestamps precede their associated sale; this timestamp check is not an independent audit of every historical publication. The entry rule comes from the existing public backtest. Historical entries use their recorded predictions.

Why are there several different samples?

The public backtest pairs adjacent performance records. The ownership-checked subset retains only pairs that also match two consecutive ordinary cash sales in the fuller corpus, with the entry buyer and exit seller linked to the same entity, with a later resale timestamp and neither leg a same-entity sale. The year-by-year table applies that ownership rule to the longer history. It does not backfill PunkPredictor signals into years before the recorded model data.

The extended study starts with uniquely matched performance entries and exits at the next recorded sale in the fuller corpus, even if that resale lacks a model prediction. Only positions without a later sale in either source receive the October 1, 2026 model estimate. Unmatched or contradictory records are excluded and counted. It uses price pairs, not a fully reconstructed economic ledger.

What is excluded from the historical ownership table?

We retain ordinary native-market, wrapped-Punk and selected marketplace sale records. We exclude zero-price entries, same-entity sales, unmatched ownership transitions, and pairs involving synthetic, noncash or other protocol/auction records outside that narrow cash-sale scope. Excluded events still interrupt the sale sequence; we do not skip them and invent a longer holding period.

Are these portfolio returns or proof that the model caused the gains?

No. The headline figures add gross gains and losses across completed price pairs. Purchase outlay is turnover, not starting capital. The replay does not size positions to a fixed bankroll, mark every position daily, or supply a tradable exit rule. The same Punk can contribute several observations, so those observations are not independent. Differences may also reflect which Punks and holding periods the filter selected. We do not present CAGR, a probability of making money, or a causal claim about subscriber returns.

How can I check an individual trade or holding?

Use the profit tracker to inspect acquisition cost and realized outcomes, and the model performance page to review prediction evidence. Confirm sale details and any fees before treating a gross price gain as a net profit.

Research snapshot: October 1, 2026. V2 CryptoPunks; V1 outcomes require a separate study. This article publishes aggregates only. It does not make the curated transaction dataset available for download.

Check the price before you buy

PunkPredictor compares each listing with a Punk-specific valuation, with confidence and liquidity context to help you decide which entries deserve a closer look.