Crypto Bargains
How the Bargain Score, zones and cycle targets are calculated
The Bargain Score is a 0 to 100 rating from the Contrarian Accumulation Model, which blends five sub-scores for price distress, sentiment, positioning, resilience and token supply; this page sets out every formula and data source behind it.
- HVD
- Historical value distress
- SES
- Sentiment extreme
- PIS
- Positioning imbalance
- ORS
- On-chain resilience
- TQS
- Tokenomic quality
The blend is then capped at 60 for thinly traded coins, raised 15% for deeply discounted coins in a fearful market and lowered 15% when the market is very greedy.
Key takeaways
- Bargain Score = 0.30 × HVD + 0.20 × SES + 0.20 × PIS + 0.15 × ORS + 0.15 × TQS, then one cap and two market-wide adjustments.
- Zones come from seven rules checked in a fixed order, sell side first, and the score is one input among several.
- Every input is public market data, and nothing is adjusted by hand for individual coins.
- The weights are judgement calls rather than fitted values, and the model has not been back-tested.
David Bryan built the original screener at cryptopredictionsmarket.com. Before it moved to OutsmartMoney.ai in October 2026 we compared its methodology page, which was 26 days old, with its code line by line, and they disagreed in five places, listed in the last section. So this page is written from the code: every formula is the one the screener runs, and you should be able to rebuild a coin's score by hand from public data and see where the model makes a judgement rather than measuring something.
Every input is public market data on the schedule in the data sources section, and nothing is adjusted by hand for a coin. The model is contrarian on purpose and rewards coins that have fallen a long way while the market is scared. In past cycles that came before recoveries and also before further falls, so its output describes conditions; it is not a price forecast or advice.
How each part works
The Bargain Score
The Bargain Score is the composite contrarian accumulation score (CAS) multiplied by 100.
The Bargain Score is the composite contrarian accumulation score (CAS) multiplied by 100. Five sub-scores between 0 and 1 are added with fixed weights, one cap and two market-wide adjustments are applied, and the result is clamped to the 0 to 1 range.
The cap is a liquidity gate: a coin trading less than 1% of its market value in a day can't go above 60, because a coin that barely trades can look hugely discounted just because its last trade happened at a low price, and the original model's notes said illiquid coins should never surface as strong cases. The adjustments lean further the contrarian way, with a 15% lift for a deeply discounted coin in a fearful market and a 15% cut for every coin when the market is extremely greedy. The gate comes first, so a gated coin can still reach about 69 in a fearful market (60 × 1.15).
The code also sorts coins into accumulation tiers, which the Discount rule uses: 80 or above is the top tier, 60 to 79 the second, 40 to 59 watch and below 40 the lowest. They are not shown on the page. David found the original "incredibly powerful" but "overwhelming", and two overlapping sets of labels on every coin was a big part of that, so we kept the zones and hid the tiers.
| Part | Rule in the code |
|---|---|
| Blend | CAS = 0.30 × HVD + 0.20 × SES + 0.20 × PIS + 0.15 × ORS + 0.15 × TQS |
| Liquidity gate | If 24h volume ÷ market cap < 0.01, CAS = min(CAS, 0.60) |
| Fear boost | If Fear & Greed < 30 and drawdown from ATH > 50%, CAS × 1.15 |
| Greed drag | If Fear & Greed > 75, CAS × 0.85 |
| Bargain Score | clamp(CAS, 0, 1) × 100 |
| Drivers shown | Up to three, in this order: deep drawdown (> 80%), extreme fear (F&G < 30), oversold RSI (< 30), negative funding, short squeeze potential (long/short < 0.8) |
| Risks shown | Up to three, in this order: low liquidity (volume/cap < 1%), near ATH (price above 80% of the ATL-to-ATH range), high greed (F&G > 70), overcrowded longs (long/short > 2.5) |
HVD: historical value distress (30%)
HVD has the biggest weight because it measures what a contrarian is looking for, a price that has fallen a long way and stayed down.
HVD has the biggest weight because it measures what a contrarian is looking for, a price that has fallen a long way and stayed down. Drawdown is the fraction below the all-time high. Proximity to the low scores 1 on the all-time low and 0 back at the high, and time decay rises from 0 to 1 over the four years after the high, because a high from 2021 says more about a finished cycle than one set last month.
It's the time part that splits two coins with the same drawdown. A coin 85% below its high and close to its low comes out around 0.92 if the high is more than four years old and nearer 0.77 if it was a year ago. Proximity changes less than you'd think, because a coin 85% down is already in the bottom 15% of its range.
| Part | Rule in the code |
|---|---|
| Drawdown | DD = clamp(1 − price ÷ ATH, 0, 1) |
| Proximity to ATL | 1 − clamp((price − ATL) ÷ (ATH − ATL), 0, 1) |
| Time decay | min(1, days since ATH ÷ 1,460) |
| HVD | 0.40 × DD + 0.40 × proximity to ATL + 0.20 × time decay |
SES: sentiment extreme score (20%)
Sentiment is measured three ways, and the market-wide one counts for half.
Sentiment is measured three ways, and the market-wide one counts for half. The fear part is the Crypto Fear & Greed Index flipped over, so a reading of 20 gives 0.80. The RSI part is zero until the 14-day RSI drops below 30 and only nears 1 as RSI nears zero, so it adds a little at the bottom of sharp sell-offs.
Funding uses the OKX perpetual funding rate, or a neutral 0.5 when the coin has no contract there. Negative funding means shorts are paying to keep their positions open, which tends to happen when pessimism is everywhere, so a negative rate scores 0.8 to 1.0; positive funding scores under 0.5, down to 0.1 when longs pay heavily, and the total is capped at 1.
| Part | Rule in the code |
|---|---|
| Fear | 1 − Fear & Greed ÷ 100 |
| RSI | max(0, (30 − RSI) ÷ 30); RSI defaults to 50 when it cannot be calculated |
| Funding (negative rate f) | 0.8 + min(0.2, |f| × 100) |
| Funding (zero or positive f) | 0.5 − min(0.4, f × 100) |
| Funding (no contract) | 0.5 |
| SES | min(1, 0.5 × fear + 0.3 × RSI + 0.2 × funding) |
PIS: positioning imbalance score (20%)
PIS turns one OKX number, accounts holding longs divided by accounts holding shorts, into one of three scores.
PIS turns one OKX number, accounts holding longs divided by accounts holding shorts, into one of three scores. That's deliberately blunt, since the ratio jumps around from day to day and we didn't want the score jumping with it. Crowded shorts get 0.8 because of the short squeeze: when the price turns, short sellers have to buy back, and that buying can push the price up further.
Plenty of small coins have no OKX contract, so a fifth of their Bargain Score is stuck at 0.5 and the whole score is pulled towards the middle. We'd still rather do that than make up a positioning number for a market that doesn't exist.
| Part | Rule in the code |
|---|---|
| Long/short < 0.9 | PIS = 0.8 |
| Long/short > 2.0 | PIS = 0.2 |
| Otherwise or no data | PIS = 0.5 |
ORS: on-chain resilience score (15%)
ORS is there to tell a coin that has been sold off from one that is slowly dying, and the version in the Bargain Score only uses market data. Liquidity gets full marks when daily volume is 10% of market value. Survival is how far the price has climbed back from its all-time low, the mirror of proximity in HVD, so a coin sitting on its low scores well for distress and badly for survival, as intended. Longevity rises from 0 to 1 over the five years after the low.
Where there's GitHub data, coin pages also show a second ORS that adds developer and community activity, with the formulas in the table. It's for information only and doesn't touch the Bargain Score, the zone or the risk level. A missing issue count, community score or sentiment score counts as 0.5, but missing contributor and code-change figures count as zero, so commits on their own put developer health between 0.1 and 0.5.
On the original site this extended version had quietly stopped working, because by October 2026 CoinGecko's public API returned no developer or community data. The developer part now comes from the GitHub API, at most once an hour per repository, and community and sentiment come from CoinGecko watchlist counts and up-vote share, both weekly.
| Part | Rule in the code |
|---|---|
| Liquidity health | clamp((24h volume ÷ market cap) ÷ 0.10, 0, 1) |
| Survival | clamp((price − ATL) ÷ (ATH − ATL), 0, 1) |
| Longevity | min(1, days since ATL ÷ 1,825) |
| ORS, baseline | 0.35 × liquidity + 0.35 × survival + 0.30 × longevity |
| Developer health | 0.40 × min(1, commits in 4 weeks ÷ 30) + 0.20 × closed ÷ total issues (0.5 if none) + 0.20 × min(1, PR contributors ÷ 50) + 0.20 × min(1, lines added and deleted in 4 weeks ÷ 5,000) |
| Community health | Weighted mean of: X followers ÷ 1m (0.30), Reddit subscribers ÷ 500k and active share ÷ 1% (0.25), Reddit posts and comments in 48h ÷ 50 (0.10), Telegram ÷ 100k (0.15), Facebook ÷ 500k (0.10), CoinGecko watchlists ÷ 500k (0.10), each capped at 1 and averaged over the signals present; 0.5 if none |
| ORS, with health data | 0.15 × liquidity + 0.10 × survival + 0.10 × longevity + 0.30 × developer + 0.25 × community + 0.10 × sentiment votes (0.5 if missing) |
TQS: tokenomic quality score (15%)
TQS, the simplest of the five, is the share of the maximum supply already circulating, using total supply when there is no maximum and scoring 1 when there is no supply data. A coin with 40% of its supply out scores 0.40, because the other 60% is still to come and new supply reaching the market has historically meant steady selling.
The original tooltip said the score accounted for inflation. The code never did, and for a few coins that matters: Dogecoin has no cap and issues about 5 billion new coins a year, but its score compares circulating supply with CoinGecko's total supply and ignores future issuance, so it gets about 0.91. We point that out on the meme coins page rather than bend the formula for one group.
| Part | Rule in the code |
|---|---|
| TQS | circulating ÷ (max supply, or total supply if no max, or circulating if neither); 1 if no supply data |
From score to zone
The zone comes from a separate set of rules in which the Bargain Score is one input, which is why a high score and a discount zone do not always go together. Buy-side strength mixes the Bargain Score, market fear, how oversold the RSI is, the drawdown and resilience. Sell-side strength mixes how close the price is to its cycle targets, market greed, how overbought the RSI is and how close the price is to its all-time high.
The seven checks run in a fixed order and the first to pass decides the zone. Sell-side checks go first, so a coin near its targets in a greedy market is caught before anything else, then the strictest buy-side check and then the looser ones, and anything left over is Fair value. Both sell rules lead to Expensive, and the caution rule sits at the lower end of Fair value next to the ordinary hold rule. The dots show the zone, one for Expensive up to five for Deep discount.
Each zone owns a band of the 0 to 100 zone score, shown below, and the coin's own buy-side or sell-side strength sets where it lands inside it. Fear & Greed's share is removed first, since it's the same for every coin at any moment and can't tell two coins in one zone apart. What's left is spread across the range real coins occupied when we measured it on 10 October 2026; before that, every Mild discount coin scored 48 to 50 and every Discount coin 69 to 72.
On 12 October 2026 we replaced the original trading words in the zone names with Deep discount, Discount, Mild discount, Fair value and Expensive, because each label describes the coin's price against its usual range at the same point in its cycle, not something to do. Explanatory sentences like "consider scaling out" went too, and a line listing the conditions that were met took their place.
- ExpensiveZone score 0–19: Price is well above its usual range for this point in its cycle. How zones work 0–19
- Fair valueZone score 20–39: Price is close to its usual range for this point in its cycle. How zones work 20–39 (caution rule 20–29)
- Mild discountZone score 40–59: Price is a little below its usual range for this point in its cycle. How zones work 40–59
- DiscountZone score 60–79: Price is clearly below its usual range for this point in its cycle. How zones work 60–79
- Deep discountZone score 80–100: Price is far below this coin's usual range for this point in its cycle. How zones work 80–100
| Part | Rule in the code |
|---|---|
| Buy-side strength | 0.30 × score ÷ 100 + 0.25 × (1 − F&G ÷ 100) + 0.20 × (RSI < 30 ? (30 − RSI) ÷ 30 : 0) + 0.15 × min(1, DD ÷ 0.7) + 0.10 × min(1, ORS ÷ 0.5) |
| Sell-side strength | 0.35 × min(1, max(price ÷ low target, price ÷ base target)) + 0.30 × F&G ÷ 100 + 0.20 × (RSI > 70 ? (RSI − 70) ÷ 30 : 0) + 0.15 × (1 − DD) |
| 1. Expensive (strongest form) | price ≥ 90% of base target, F&G ≥ 75 and RSI ≥ 70 |
| 2. Expensive | 2+ of: price ≥ 80% of low target, F&G ≥ 60, RSI ≥ 65, DD < 5%; and sell-side strength > 0.50 |
| 3. Fair value (lower end, caution) | 2+ of: price ≥ 60% of low target, F&G ≥ 55, RSI ≥ 60, score ≤ 30; and sell-side strength > 0.40 |
| 4. Deep discount | score ≥ 75, F&G ≤ 25, RSI ≤ 30, risk not High, ORS ≥ 0.50 |
| 5. Discount | 3+ of: score ≥ 65, F&G ≤ 40, RSI ≤ 35, score ≥ 60 (accumulation tier), DD > 70%; and buy-side strength > 0.45 |
| 6. Mild discount | 2+ of: score ≥ 55, F&G ≤ 45, RSI ≤ 40, DD > 50%; and buy-side strength > 0.35 |
| 7. Fair value (upper end) | None of the above |
| Zone score | band minimum + floor(position × band width), position = clamp((own strength − lo) ÷ (hi − lo), 0, 1); own buy = buy-side − 0.25 × (1 − F&G ÷ 100), own sell = sell-side − 0.30 × F&G ÷ 100; sell-side rules use 1 − position, hold uses own buy − own sell |
Risk level
Each coin also gets a risk level of Low, Medium or High from a simple points count, set out in the table.
Each coin also gets a risk level of Low, Medium or High from a simple points count, set out in the table. A coin more than 95% below its high and worth under $1 billion loses a point, a rule added to the original code because The Sandbox kept coming out as borderline low risk after its valuation had collapsed. The risk level matters most for Deep discount, which a High-risk coin cannot enter.
| Factor | Points |
|---|---|
| Chance of new high | High +3, Medium +1 |
| Market value | over $10bn +2, over $1bn +1 |
| TQS | 0.70 or more +2, 0.40 or more +1 |
| ORS | 0.60 or more +1 |
| Structural collapse | DD > 95% and market value under $1bn: −1 |
| Result | 6+ Low, 3 to 5 Medium, 2 or fewer High |
Cycle class and the chance of a new high
The chance of a new all-time high is a rough probability.
The chance of a new all-time high is a rough probability. It starts from a prior set by the coin's cycle class, which asks whether the coin has already lived through market cycles, and the adjustments in the table move it up or down.
Coins at least eight years old worth over $1 billion, or six years old with more than $10 billion or a large community, count as multi-cycle survivors and start from 0.90. Coins that have come through one cycle start from 0.55, newer ones from 0.45 to 0.55 and very small coins from 0.35. A coin more than 97% down, worth under $50 million and with almost no community is classed as failed, starting from 0.25 with a cap of 0.30. Whatever the inputs, nothing is shown above 95%, because the model describes past cycles and no outcome is certain.
The drawdown bonus follows a bell curve that peaks at a fall of about 80% and fades either side. That was a deliberate choice in the original model, which treats an 80% fall as a normal crypto bear market and a fall of 95% or more as a sign something structural has gone wrong, and the far-from-high penalty exists for the same reason. Recent strength runs against the trend, taking a little off after a strong week and adding a little after a sharp fall.
The result is labelled High at 0.65 or above, Medium from 0.45 and Low below that. We show the label and not a percentage, because a figure like 0.61 would suggest a precision the model does not have.
The time frame beside the ATH chance comes from fixed rules in the original model, not from each coin's own history: 12 to 24 months when the chance is 0.75 or more and the coin is in the top accumulation tier, 18 to 36 months for any other chance of 0.65 or more, 2 to 4 years for Medium, 3 to 5 years or more for a chance between 0.25 and 0.45, and "no new ATH in past patterns at this depth" below that. Where we hold a coin's own record of past recoveries its page shows that separately, and if the two disagree we would trust the record over the rule.
| Adjustment | Formula |
|---|---|
| Drawdown bonus | 0.20 × exp(−((DD − 0.80) ÷ 0.20)²) |
| Fear bonus | 0.15 × (1 − F&G ÷ 100) |
| Liquidity bonus | 0.10 × clamp((volume ÷ market cap − 0.02) ÷ 0.10, 0, 1) |
| Recent strength | −0.05 × clamp(% change over the last seven days (hourly prices) ÷ 50, −1, 1) |
| Dilution | −0.15 × max(0, 1 − circulating ÷ max supply, or total supply if no max) |
| Micro-cap | −0.10 if market value < $100m |
| Far from high | −0.10 × clamp(DD ÷ 0.90, 0, 1) |
Cycle targets
Cycle targets are scenarios: where a coin might get to if it repeated a smaller version of its last cycle.
Cycle targets are scenarios: where a coin might get to if it repeated a smaller version of its last cycle. They take the coin's whole historical range, the all-time high divided by the all-time low, and shrink it twice. Decay assumes each cycle makes a smaller multiple than the one before (0.60 for coins worth more than $100 billion, 0.65 above $10 billion, 0.70 above $1 billion and 0.75 below), and compression squeezes the biggest coins further, at 0.75, 0.85, 0.92 and 1.0 across the same bands. Low, base and high are 75%, 100% and 125% of the reduced multiple applied to the all-time low, with high capped at 110% of the original range.
For a lot of coins the range was so large and the reduction so steep that these come out below the previous high. The targets are then anchored to the old high instead, at 5%, 15% and 30% above it if all three fall short and with smaller buffers when only some do, and the coin page notes that the base target is a return to the previous all-time high. That's where the very large percentages come from: a coin 99% below its high has to rise roughly a hundredfold just to get back, so a target 5% above the old high shows as a gain of more than 10,000%.
The minimal breakout is the all-time high when the chance of a new high is below 0.60, and above that it adds up to 5% depending on how high the chance is, as the table shows.
| Part | Rule in the code |
|---|---|
| Raw multiple | ATH ÷ ATL (2 if ATL is missing) |
| Adjusted multiple | raw × decay × compression |
| Low / base / high | ATL × adjusted × 0.75 / ATL × adjusted / ATL × min(adjusted × 1.25, raw × 1.1) |
| Anchoring | If high ≤ ATH: ATH × 1.05 / 1.15 / 1.30. If only base ≤ ATH: ATH × 1.05 / 1.10 / raw high. If only low ≤ ATH: ATH × 1.02 / raw base / raw high |
| Minimal breakout | ATH if chance < 0.60, else ATH × (1 + 0.05 × (chance − 0.6) ÷ 0.4) |
Market cycle phase
The cycle phase panel looks at the market as a whole.
The cycle phase panel looks at the market as a whole. It turns five readings into "bear scores" from 0 to 100 and averages them: Fear & Greed, the average distance below all-time highs, the average RSI, the share of coins in the discount zones (Deep discount, Discount and Mild discount) or on the sell side (Expensive plus the caution rule at the lower end of Fair value), and the average Bargain Score. A high average means bear-market conditions and maps to Accumulation, and a very low one means an overheated market.
The phase names follow the usual story of a crypto cycle with one oddity. Distribution, the phase where prices fall from their highs, is given when the average is under 15, the most overheated reading of all, because the original model reasoned that the hottest readings usually come just before prices roll over, and we've kept it. Confidence is the distance of the average from 50, doubled, so it's highest when the readings are clearly bullish or bearish and lowest when they're mixed. David, who built the original panel, put its value in his own words on 10 October 2026: "we shouldn't be in a bull market according to traditional BTC cycles but we are and this chart even shows it as such despite timing so it works."
Next to the phase we show the Bitcoin halving context, worked out from data rather than typed in. The last halving was on 20 April 2024, Bitcoin's current all-time high of $126,080 was set on 6 October 2025, 534 days later, and the next halving is estimated for 9 April 2028 from the average block time since the last halving.
The original panel had all of this hard-coded: the halving dates, a projected peak 482 days after the halving that it called the average of cycles 1 to 4 (it was the average of cycles 1 to 3; all four average about 495 days), and the line "BTC peaked $109k Jan 2025". By October 2026 that line was nine months and about $17,000 out, since CoinGecko's all-time high is $126,080 on 6 October 2025, and that's the main reason the panel is now recalculated on every refresh.
| Part | Rule in the code |
|---|---|
| Fear & Greed | max(0, 100 − 2 × F&G) |
| Average drawdown | min(100, average % below ATH × 1.3) |
| Average RSI | below 30: 90; below 45: 60; below 55: 30; below 70: 10; otherwise 0 |
| Zone mix | over 50% sell-side: 90; over 20% sell-side: 60; over 70% in discount zones: 15; otherwise 40 |
| Average Bargain Score | over 70: 85; over 50: 60; over 30: 30; otherwise 10 |
| Phase | 70+ Accumulation; 50–69 Early Recovery; 30–49 Bull Market; 15–29 Euphoria / Peak; below 15 Distribution |
| Confidence | round(|average − 50| × 2)% |
RSI and Fear & Greed
RSI here is the 14-period relative strength index on daily closes, using a simple average of gains and losses over the last 14 days rather than the smoothed version a lot of charting sites use, so our figure can be a few points off theirs. Oversold is 30 or below, weakening up to 40, neutral up to 60, strengthening up to 70 and overbought above that.
When we checked the original site on 10 October 2026, its lists said "RSI (14)" but worked the number out from seven days of hourly prices, so it was really a 14-hour RSI, while the detail panel used daily data under the same "14-day" label and the same coin could show two different RSIs. We now use daily closes wherever we have them, and a coin with no daily history yet falls back to a 14-hour RSI from hourly prices, labelled that way.
The Crypto Fear & Greed Index comes from alternative.me and updates once a day at 00:00 UTC. On the original site the same value could carry two names on two pages, so every value now gets alternative.me's own bands: Extreme Fear up to 25, Fear 26–46, Neutral 47–54, Greed 55–75 and Extreme Greed 76 and above.
Project health
Open a coin's Deep Dive and the project health card shows what can be seen of the team's public work.
Open a coin's Deep Dive and the project health card shows what can be seen of the team's public work. It reads one GitHub repository per coin, either one we chose by hand or the first repository on the coin's CoinGecko profile, and reports commits over the last four weeks, stars, forks, open issues and the date of the last push, along with the launch year from our coin list and, where there is GitHub data, the second resilience figure from the ORS section, out of 100. If we can't read a repository, the card says so in one line instead of showing figures.
None of this goes into the Bargain Score, the zone or the risk level. The original card also had issue resolution, merged pull requests, contributors and Reddit and Telegram counts, but CoinGecko had stopped sending all of those by October 2026, so we dropped them rather than show a row of blanks. A busy repository says nothing about price, and some mature coins hardly change their code on purpose, but if a project has had no commits for months we would want to know that before reading anything else on its page.
| Figure | Source and rule |
|---|---|
| Commits (4 weeks) | sum of the last 4 weekly counts from GitHub /stats/participation; > 20 Active, > 5 Moderate, > 0 Low activity, 0 Inactive |
| Repository | stars, forks, open issues and last push from GitHub /repos, up to once an hour per repository |
| Watchlists and sentiment | CoinGecko coin detail, weekly per coin |
Derivatives: funding, open interest and long/short
Futures data comes from OKX's public API, one USDT perpetual swap per coin (BTC-USDT-SWAP for Bitcoin, ETH-USDT-SWAP for Ethereum and so on).
Futures data comes from OKX's public API, one USDT perpetual swap per coin (BTC-USDT-SWAP for Bitcoin, ETH-USDT-SWAP for Ethereum and so on). 43 of the 54 coins on our list have one. For the other 11, or whenever OKX returns nothing, the Deep Dive says there are no perpetual futures on OKX, and the funding part of SES and the whole of PIS sit at a neutral 0.5.
Funding rates and open interest for every contract come back in two calls on each run. The long/short account ratio is a daily figure that OKX only serves one currency at a time, so we fetch ten coins a run. Funding feeds SES and the long/short ratio sets PIS, as described above, and the card labels the ratio with the same cut-offs. Open interest, the dollar value of contracts still open, is there for context only. Two of the reasons that can show beside a coin also come from this data, negative funding and short-squeeze potential (a ratio under 0.8), and a ratio over 2.5 adds an overcrowded-longs risk line.
| Reading | Source, timing and use |
|---|---|
| Funding rate | OKX /public/funding-rate, all perpetuals in one call, every 5 minutes; feeds SES |
| Open interest | OKX /public/open-interest, US dollar value, every 5 minutes; shown only |
| Long/short ratio | OKX long/short account ratio, daily period, about every 25 minutes per coin; feeds PIS |
| Card label | ratio < 0.9 crowded shorts; > 2.0 crowded longs; otherwise balanced |
Tokenomics and supply
The tokenomics card lays out the CoinGecko supply figures behind TQS: circulating supply, maximum supply (or no cap), fully diluted value, market value and 24-hour volume as a share of market value. The bar at the top is the circulating share worked out as in TQS, so a coin with no maximum is measured against total supply.
The inflation label on that card is stricter, because it only compares circulating supply with a hard maximum and a coin with no cap reads High whatever else is true. So Ethereum shows High inflation and a deflationary note at the same time: there is no maximum supply, but EIP-1559 burns part of every transaction fee. The note comes from our coin list, which flags five coins (Ethereum, Avalanche, Shiba Inu, Injective and Sky) with a sentence on how each burn works.
Volume over market value gets its own line on the card because the model uses it in four places. Under 1% it caps the Bargain Score at 60 and adds a low-liquidity risk line, it is the liquidity part of ORS with full marks at 10%, and over 2% it starts adding to the chance of a new high.
| Figure | How it is worked out |
|---|---|
| Circulating share | circulating ÷ (max supply, or total supply if no max) |
| Inflation label | circulating ÷ max supply: > 0.90 Low, > 0.70 Med, otherwise High; no max supply: High |
| Vol/MCap | 24h volume ÷ market value × 100 |
Price chart
The chart in the Deep Dive and on each coin page plots daily closes and only loads when you open it.
The chart in the Deep Dive and on each coin page plots daily closes and only loads when you open it. Lines mark the all-time high and low, today's price, the top of the bargain zone, the breakout level and the low, base and high cycle targets, and hovering over a day gives its close, how far it was from the all-time high and low, and whether it was inside the bargain zone. Seven coins with long histories (Bitcoin, Ethereum, Solana, BNB, XRP, Litecoin and Cardano) open on a log scale, because on a linear one every earlier cycle gets squashed into a flat line.
The closes are the same series the model uses for RSI. Binance gives at most 1,000 days per request, so for a coin priced from Binance the server keeps paging back until it reaches the day the pair was listed. Binance only opened in 2017, so even Bitcoin's chart starts in August 2017 rather than 2010, and the chart title says which month the data starts.
Cycle markers come from the original site's hand-entered list of past peaks and bottoms for eleven coins, which goes back to 2011 for Bitcoin, and from every coin's live all-time high and low on CoinGecko. Each event is pinned to the nearest daily close within seven days, and anything older than the first close goes on a separate line under the chart instead of disappearing.
| Element | Rule |
|---|---|
| Bargain zone line | ATL + 0.10 × (ATH − ATL) |
| Markers | nearest daily close within 7 days; earlier events listed under the chart, not drawn |
| History per request | Binance 1,000 days a page, up to 4 extra pages per coin a week plus 1 a day; Kraken 720 days; CoinGecko 365 days |
Data sources and refresh times
A scheduled job rebuilds the snapshot every five minutes.
A scheduled job rebuilds the snapshot every five minutes. One CoinGecko call returns prices, all-time highs and lows, market values, volumes and supply for all 54 coins, and the same run reads Fear & Greed from alternative.me, global market data from CoinGecko and funding and open interest from OKX. Daily history comes from Binance, then Kraken, with CoinGecko as a last resort, and each series is checked against the CoinGecko price before we use it. The table gives the cadence of each feed.
Pages are built on the server from the snapshot, so every score and label is in the page itself. Each panel shows when its data was taken, and anything more than 15 minutes old carries a "delayed" badge.
On 10 October 2026 the old site's charts had stopped loading because CryptoCompare, its price-history source, had started asking for an API key. The same check found three of the original 55 CoinGecko IDs (maple, jasmy-coin and mumu-the-bull) no longer worked and those coins had vanished from the site, so the job now checks every coin's ID on each run and warns when one is renamed or delisted. Prices and all-time highs for the other 52 coins all matched CoinGecko.
| How often | What updates |
|---|---|
| Every 5 minutes | CoinGecko markets and global data, alternative.me Fear & Greed (value changes daily), OKX funding and open interest |
| About every 25 minutes per coin | OKX long/short account ratio (a daily figure) |
| About every 30 minutes per coin | Daily closes from Binance (1,000 days), then Kraken (720), then CoinGecko (365); daily RSI changes once per day |
| Hourly | Project health from the GitHub API (up to once an hour per repository); Bitcoin block height and halving dates from mempool.space |
| Weekly per coin | CoinGecko coin detail: launch date for the cycle class, GitHub links, watchlist and sentiment |
Limitations
The model only knows what is in its inputs: price history, supply figures, one sentiment index, derivatives positioning and, where we have it, developer activity.
The model only knows what is in its inputs: price history, supply figures, one sentiment index, derivatives positioning and, where we have it, developer activity. A hack, an exchange delisting, a lawsuit, a big token release announced for next month or a team quietly winding down are all invisible to it until they move the price, and events like those have decided the fate of plenty of coins on this list. Axie Infinity's Ronin bridge hack in March 2022 and Binance delisting Monero in February 2024 both reached the score only after the price had already moved.
It also leans heavily on all-time highs and lows, and some of those are outliers: Zcash and Algorand both set their highs in their first days of trading, so their distance below the high is measured from a price that was never really representative. The cycle targets assume a smaller repeat of a coin's last cycle, with no guarantee that any coin gets another cycle at all.
Where this page differs from the original write-up
In October 2026 we found five places where the original write-up and the code disagreed, and this page follows the code in all five.
In October 2026 we found five places where the original write-up and the code disagreed, and this page follows the code in all five. The old text gave a different funding formula from the one in use (the SES table has the right one), called the minimal breakout the high times 1.008 when the code uses the high or adds up to 5%, said the tokenomic score included inflation, which it never did, and got the fallback rules for cycle targets wrong. The fifth was minor: it said halving countdowns only appeared in the Accumulation phase, but they were always shown.
Glossary
These are the definitions behind the information buttons next to scores and figures across Crypto Bargains.
These are the definitions behind the information buttons next to scores and figures across Crypto Bargains. Where a definition is shorter than a formula above, the formula is what the code runs.
- Zone score
- The 0–100 number next to each zone label, and the default sort everywhere. The zone compares the coin’s price with its usual range at the same point in its cycle, using the model’s entry and exit conditions (Bargain Score, Fear & Greed, RSI, distance below ATH, risk and project health); the score places the coin inside its zone. 80+ Deep discount, 60–79 Discount, 40–59 Mild discount, 20–39 Fair value, under 20 Expensive.
- Bargain Score
- The discount model (CAM), 0–100: how far below its high the price is (30%), market fear (20%), trader positioning (20%), structural health (15%) and supply safety (15%). It is the main input to the zone. Top picks rank by it.
- How cheap? (Historical Value Distress)
- How far the price sits below its all-time high and how close it is to its all-time low, plus how long it has stayed down (measured over four years).
- Market fear (Sentiment Extreme)
- Combines the Fear & Greed Index, how oversold the 14-day RSI is and the futures funding rate. High fear and oversold readings push it up.
- Positioning (Positioning Imbalance)
- From the futures long/short ratio. More shorts than longs scores high; crowded longs score low.
- Structural health (On-Chain Resilience)
- Liquidity, distance above the all-time low and project age. Where developer and community data is available it is added in.
- Supply safety (Tokenomic Quality)
- The share of the maximum (or total) supply already in circulation. A higher share means less future dilution.
- Project health
- Developer activity from the project’s public GitHub repository (commits in the last four weeks, stars, forks, open issues, last push), plus CoinGecko watchlist and sentiment counts. Refreshed hourly.
- Price records
- The all-time low and high from CoinGecko, with their dates, and how far today’s price sits from each.
- ATH
- All-time high: the highest price ever recorded.
- ATL
- All-time low: the lowest price ever recorded.
- RSI (14)
- Relative Strength Index over 14 daily closes. Below 30 is usually called oversold, above 70 overbought.
- Fear & Greed Index
- A 0–100 reading of crypto market sentiment from alternative.me. Under 25 is extreme fear, over 75 extreme greed.
- Funding rate
- The fee between long and short futures traders every 8 hours. Negative means shorts are paying longs, a sign of pessimism.
- Long/short ratio
- Accounts holding long futures positions divided by those holding short ones. Below 1 means more shorts.
- Open interest
- The total value of futures contracts still open.
- Vol/MCap
- 24-hour trading volume as a share of market cap. Higher means more actively traded. Under 1% caps the Bargain Score at 60.
- ATH chance
- The model’s estimate of the probability of a new all-time high this cycle or next, from the coin’s track record, drawdown, sentiment, liquidity and dilution.
- Breakout level
- The previous all-time high, or up to 5% above it when the ATH chance is 60% or more. The first level a new high has to clear.
- Cycle targets (low / base / high)
- Model scenarios from the coin’s previous low-to-high multiple, shrunk for diminishing returns by market cap. Each is a price the coin would reach if a smaller version of its past cycle repeated: low is the cautious version, base the middle one and high the full cycle. None of them is a loss case, and none sits below the previous ATH floor.
- Risk level
- Points for ATH chance (high +3, medium +1), market cap (over $10B +2, over $1B +1), supply safety (up to +2) and structural health (+1 over 0.60). Six or more is Low, three to five Medium, under three High. Coins more than 95% below their high with a market cap under $1B lose a point.
- DCA
- Dollar-cost averaging: buying a fixed amount at regular intervals instead of all at once.
- Halving
- The roughly four-yearly cut in new bitcoin issued per block. Past cycle peaks have come 12–18 months after one.
- Position
- Where today’s price sits between the all-time low (left) and all-time high (right).
On this page
- The Bargain Score
- HVD: historical value distress
- SES: sentiment extreme score
- PIS: positioning imbalance score
- ORS: on-chain resilience score
- TQS: tokenomic quality score
- From score to zone
- Risk level
- Cycle class and the chance of a new high
- Cycle targets
- Market cycle phase
- RSI and Fear & Greed
- Project health
- Derivatives: funding, open interest and long/short
- Tokenomics and supply
- Price chart
- Data sources and refresh times
- Limitations
- Where this page differs from the original write-up
- Glossary
- Questions about the method
FAQ
Questions about the method
Can I recalculate a coin's Bargain Score myself?
Yes, and that was the point of writing this page: every input comes from a public source and every formula is here. You need the coin's price, its all-time high and low with their dates, 24-hour volume, market value, circulating, total and maximum supply, the day's Fear & Greed value and the coin's 14-day RSI from daily closes, plus the funding rate and long/short ratio if it has an OKX perpetual contract.
Expect small differences, because prices move between our refresh and yours. If you get a materially different answer from ours, we'd like to hear about it at info@outsmartmoney.ai.
Why were these weights chosen?
As far as the code and the original design notes show, they were judgement calls when the model was designed, not values fitted to historical returns. Distress gets 30% because the model is about buying discounts. Sentiment and positioning get 20% each because they say whether a discount comes with capitulation. Resilience and supply get 15% each, and they're mostly there to stop the score favouring coins that are cheap for structural reasons.
We publish them so that anyone who disagrees can see exactly what they'd change. That seems more honest than presenting the weights as more scientific than they are.
Has the model been back-tested?
No. There are no published back-test results for this model, and the original code has no back-testing module. The thresholds reflect patterns you can see in past cycles, like deep fear readings in March 2020 and through 2022 and greed readings around the highs of late 2017 and late 2021, but that isn't the same thing as a tested track record, and we don't publish performance figures.
A back-test would be limited anyway by how few full cycles crypto has had: roughly four for Bitcoin, and one or two for most of the coins on this list.
Important information
Don't invest unless you're prepared to lose all the money you invest. This is a high-risk investment and you should not expect to be protected if something goes wrong.
Cryptoassets are largely unregulated in the UK, so you are unlikely to have access to the Financial Ombudsman Service or the Financial Services Compensation Scheme if something goes wrong. Educational information only, not financial advice. Read our disclaimer.
The crypto cycle in more depth
- Market mood Crypto Fear & Greed Index Today's reading and every daily value since 2018, with how fear and greed lined up with Bitcoin's cycles.
- Bitcoin cycle Bitcoin halving countdown The next halving estimated from block times, and every past halving beside the cycle peak that followed.
- Real returns Bitcoin real returns Bitcoin's highs and drawdowns restated after US and UK inflation and against money printing.
- Real returns Real returns for every asset Shares, gold and crypto measured against inflation in dollars and pounds, and against money printing.