LombardoCycle

Methodology

How the Bitcoin cycle gauges are built and tested

HCP: the headline score, and why it carries a label

HCP is a 0–100 score blending 17 inputs (price, on-chain and macro series) into one reading. The band beside it shows how much those inputs disagree. It is not a probability.

HCP carries the RESEARCH — NOT DECISION-READY label because of a test result. An independent validation found no link between HCP and the following year’s return: a rank correlation of +0.03 over 365 days, with an uncertainty range of −0.29 to +0.40. That cannot be told apart from a placebo.

It is also fragile: on 54% of days the whole score equals just one of its inputs. A single input, the power-law percentile, beats it by +0.17, and HCP points the right way in only the last 2 cycles. All four pre-registered replacements failed their robustness tests.

The plumbing behind HCP is solid: it runs on a daily schedule and reproduces exactly, though its data intake still has known gaps (for example, no retry after an outage). What it lacks is measured forward skill. The label records both facts.

Source: HLB project review, 2026-10-16

V3d: a cycle-position gauge

V3d answers a narrower question: where does the market sit in the four-year cycle today? It blends three inputs, each scored 0–100:

V3d is a 30-day exponential moving average of those three scores, so it moves slowly by design: 99% of daily moves are under 0.30 points.

Track record, in 3 testable cycles: it ranked the following year’s returns the right way in the two most recent cycles (ρ −0.65 and −0.91; negative is the right direction here, because a low reading was followed by a better year) and showed no skill in 2015–2018 (ρ ≈ 0). That is the whole evidence base: 3 cycles, or 8 independent one-year windows.

  • Power-law percentile: where price sits against a long-run [[g:power-law|power-law trend]] fitted to Bitcoin’s history.
  • Price vs 200-week SMA: price divided by its [[g:sma|200-week simple moving average]], a very slow trend line.
  • Halving clock: days since the last [[g:halving|halving]], compared with where prior cycle bottoms sat in time.

Source: HCP v3 pre-registered study, results 2026-10-16

The drop-one-input range

Because V3d is a blend, its level depends on which inputs go in. Drop any one of the three and the reading moves. On the study’s last replay day (2026-10-14), V3d read 16.9 with a drop-one range of 12.4–24.7. That range crosses a zone line, which is why the site shows it beside the number. It is also why V3d failed its pre-registered primary robustness bar: dropping its worst input flipped the 20-point zone on 28.8% of days, against a 5% bar. It passed only a secondary bar, and that pass is design-contaminated.

The level moves, but the skill does not depend on any one input: dropping any input leaves V3d’s skill score (S) at 0.52–0.53, against 0.53 for all three. That is the gauge’s one real advantage. You do not need to know in advance which input will work best this cycle, and the best single input has changed from cycle to cycle.

Source: HCP v3 pre-registered study, results 2026-10-16

Trend badges stay separate

Two moving-average states appear as badges, not as part of the number: the weekly 50/100 pair and the daily 50/200 pair. On 2026-10-15 the weekly pair was bearish (since 2026-07-12) and the daily pair bullish (since 2026-09-08).

They are kept out because blending them failed. The candidate with a trend-confirmation term added about +0.02 to skill, but each trend flip moved it by exactly 5 points, a fragility of 5.0 against a bar of 3. The badges are context, not inputs.

Source: HCP v3 pre-registered study, results 2026-10-16

Point-in-time and RECONSTRUCTED

Point-in-time (PIT) means using only the value that was knowable on that date. A backtest that scores a day in 2018 with data revised later is seeing the future.

The data pipeline’s point-in-time integrity is rated a partial fail. On-chain vintages are synthetic (stamped as-of plus 26 hours). The macro series from FRED has 92 of 94 rows on a single vintage. And aSOPR, an on-chain profit-taking measure that moves HCP on 51% of days, is reconstructed: rebuilt after the fact rather than recorded live. Reconstructed inputs carry a badge. Until the fixes land, no backtest of any composite is truly point-in-time.

One consistent finding: leaving reconstructed inputs out helps. The point-in-time run beat the all-data run on the skill score S for every candidate tested.

Source: HLB project review, 2026-10-16; HCP v3 pre-registered study, results 2026-10-16

Power Law Value: where price sits against the fitted line

The Power Law Value card on the Overview fits one straight line to Bitcoin’s price history since August 2011 (Bitstamp daily closes) on log–log axes: the log of the daily close against the log of days since the genesis block. The fit is [[g:pit-fit|point-in-time]]: each day’s line uses only the closes up to that day, and it is refit every day. The line is the card’s [[g:fair-value-line|fair value]], the only number this site calls fair value.

The card measures today’s distance from today’s line, and the distance of every earlier day from that same line (today’s fit). Today’s rank among all of them is the [[g:residual-percentile|residual percentile]], 0–100, and it places the day in one of six zones: Z1 deep value (below 5), Z2 [[g:value-zone|value]] (5–25), Z3 below fair (25–50), Z4 above fair (50–75), Z5 stretched (75–95) and Z6 extreme (95 and up). A zone name describes a place on the scale, not an instruction.

The bands work the same way: P5, P25, P50, P75 and P95 are those distances’ percentiles, turned back into prices. P50 is the median distance and sits below the fair-value line, because the line is the average distance and the bubble years pull the average up.

What the history shows (in-sample, 3 completed cycles): Z2 and Z3 beat the all-days median 365-day change of +61.6% in every completed cycle. Days in Z2 had a median of +121% (11 episodes) and days in Z3 +142% (12 episodes); the stretched zone Z5 had −39% (5 episodes). For Z2 the 95% interval of that gap includes zero, so after correction for multiple tests it is not statistically distinguishable from all days; Z3 is the zone whose gap survives the correction. Z1 has only 4 episodes, too few for a verdict, and in 2014–15 it did worse than the baseline.

Why it reads as a [[g:value-floor|value floor]], not a top signal: at the cycle tops the percentile reached 99.7, 98.0, 85.9 and then 63.3 in 2025, less stretch every cycle. The 2025 top never left Z4, so a Z5 or Z6 reading may not appear at the next top.

Two power-law lines on this site. The thin dashed line on the Price Map is a [[g:reference-curve|reference curve]] (Santostasi) with fixed published constants chosen with hindsight; no reading is taken from it. As of this page’s date its midline sits close to HLB’s P5 floor, far below HLB’s fair value, so the two models disagree on level; the Overview card prints that comparison live. Even HLB’s own line fitted with hindsight (all data at once) lands in the same zone as the point-in-time line on only 63.4% of days, which is why only the point-in-time percentile is shown and was tested.

  • Day counts overstate the evidence; the honest sample is the episode count, between 2 and 17 per zone.
  • The ranking is not a precise dial: Z3 (+142%) did better than Z2 (+121%) and Z1 (+125%) over 365 days.
  • The current cycle has no completed 365-day outcomes yet. Nothing here is a forecast or a trade instruction.

Source: Power-law value study (pre-registered), results 2026-10-17; Power-law value study, pre-registration 2026-10-17

Why there is no probability

One candidate tried to give a calibrated probability of a positive year. Tested on data it had not seen, it was wildly overconfident when bearish: on the 750 days it gave less than a 35% chance of a positive year, about half were positive.

Its skill against the plain base rate was +0.04 on point-in-time data and −0.43 on all data. Its fitted weights flipped between training folds (the price/200-week weight was −1.0 in one and +7.7 in another): with 2 training cycles per fold, it mostly fitted the cycle it had just seen.

No calibrated probability can be published from this data, so the site shows none.

Source: HCP v3 pre-registered study, results 2026-10-16

The soak: the only clean test

Every historical result here is design-contaminated: the three inputs were chosen because they ranked best on this same history. With 3 or 4 cycles to learn from, that is unavoidable. The only clean test is forward.

A soak is a scheduled daily snapshot, stored once and never revised. It records what a gauge said before the outcome is known. The HCP v2 soak’s first robustness grade is due 2027-01-13. V3d has its own soak, which only started in mid-October 2026 and has not been graded. A first meaningful forward skill grade is around 2029–2030, because one cycle takes four years.

Source: HLB project review, 2026-10-16; HCP v3 pre-registered study, results 2026-10-16

What the gauge cannot claim

  • It is not robust in level. Which inputs go in moves the reading between about 12 and 25.
  • It showed no skill in 2015–2018 (ρ ≈ 0), one of only 3 testable cycles.
  • It does not call tops. Its highest zone has not been followed by worse returns than the zone below it.
  • It rests on 3 testable cycles and 8 independent one-year windows.
  • It is not a forecast.

Source: HCP v3 pre-registered study, results 2026-10-16