DASH MODEL
Status Operational

BTX Price data collection and public pages are operating normally after a recent service interruption.

Live update paths were refreshed, public pages were checked, and page data is refreshing on the normal cadence.

EN

Forward Market Price

BTX 12-Month Forward Market Price

The Forward Market Price is the dashboard's trade-oriented 12-month reference number. It is not an exchange quote and btxprice is not a trading venue.

Definition

Version 1.7.2 makes the security-equivalence term linear. The live BTX network MatMul rate is `getnetworkhashps(6720)`, a one-week chain-inferred rate analogous to Bitcoin Core's `getnetworkhashps(1008)` for a one-week Bitcoin window. The model no longer multiplies that rate by the live work-per-block term for pricing, because doing so squared the same difficulty signal.

Spot continuity is handled with a disclosed coefficient `matmul_security_weight`, calibrated at the v1.4 migration anchor. That preserves the then-current model floor while fixing the slope: if BTX reaches Bitcoin-equivalent computational security, the raw compute floor reaches Bitcoin price parity.

Version 1.7.2 prices the forward path from the current network MatMul rate, not from the diagnostic effective release envelope. The adoption path first creates a forward market cap, then divides that value by protocol supply projected to the horizon using BTX's 90-second block schedule.

Formula

M_BTX_1w = getnetworkhashps(6720)
SEH = matmul_security_weight · M_BTX_1w
S_now = 100 · SEH / H_BTC

progress_s(m) = (1 - 2^(-m / HL_s)) / (1 - 2^(-12 / HL_s))
security_s(m) = min(max(cap_s, S_now), S_now · growth_12m_s^progress_s(m) · trend_multiplier(m))
E[S_m] = Σ p_s · security_s(m)

projected_blocks(m) = round(m · 30.4375 · 86400 / 90)
Q_m = BTX protocol supply at current_height + projected_blocks(m)
ForwardMarketCap(m) = P_BTC · E[S_m] / 100 · F_supply · R_BTC(m) · Q_now
ForwardMarketPrice(m) = ForwardMarketCap(m) / Q_m

Bear, base, and bull paths are computed independently and then probability-weighted. The cap is applied in security-share space, not price space. Positive and negative network-compute trends can nudge the curve when reference data is supplied, but the live chain rate remains the observable anchor.

`F_supply` is the capped float/unlock adjustment; `Q_m` is the actual projected token denominator. At `m = 0`, `Q_m = Q_now`, so the current price is continuous. At 12 months, new issuance is explicitly spread across the forward market cap.

Horizon Price (USD) Price (sats) Projected supply Circ. mcap (USD) FDV (USD)
now 30.78618918590075484816205797 49393.83453006795476858243160 2704820 83271100.23380807972840569764 646509972.9039158518114032174
1m 41.15760496807029541150879686 66033.89322306234021869592616 3289220 135376417.4130761770734429648 864309704.3294762036416847341
3m 72.33587172488795454564862313 116056.7830267102338365559991 4458020 322474762.8669849991235924749 1519053306.222647045458621086
6m 135.4794606156596699801810630 217365.3263632070176809476688 6211220 841492735.3651976553743002222 2845068672.928853069583802323
12m 257.2950156614020911689485626 412808.0728747947811079267145 9717620 2500295190.091554189185197931 5403195328.889443914547919815

API Contract

Use `/api/current.json` for live systems and `/forward-market-price.md` for a compact Markdown contract. The primary fields are stable and string-valued to preserve decimal precision.

{
  "forward_market_price": {
    "horizon": "12m",
    "usd": "...",
    "sats": "...",
    "mcap_usd": "...",
    "forward_market_cap_usd": "...",
    "projected_supply": "...",
    "projected_blocks": 350640,
    "formula": "forward_market_cap[12m].usd / projected_btx_supply[12m]"
  },
  "inputs": {
    "network_matmul_rate_hps": "...",
    "effective_network_matmul_rate_hps": "...",
    "security_equiv_hashrate_hps": "...",
    "matmul_security_weight": "..."
  },
  "forecast": {
    "forward_market_price_field": "forward_market_price_usd",
    "rows": [...]
  }
}

Open Source Artifacts

The same model is published as source code and a workbook so OTC participants can reproduce the number locally before referencing it.

Hardware Context

Local BTXE benchmarks on this M4 Max Mac Studio show the current live-mainnet-like Metal solve path in the approximate 14.5k-17k nonces/sec band. Those numbers are hardware context only. The Forward Market Price does not price a single workstation; it prices the chain-observed BTX network MatMul rate recorded by btxprice.

benchmark shape: block_height=61000, epsilon_bits=18, nbits=503725172
observed artifacts: product_digest_active=true, freivalds_payload_mining=true
local M4 Max band: ~14.5k-17k live-like nonces/sec

Full Public Formula String

nonce_seed_v2_activation_height = 125000; nonce_seed_v3_activation_height = 130500; v03211_activation_height = 132000; network_matmul_rate_hps = getnetworkhashps(6720) and is the compute-equivalent BTX MatMul/sec field used for charts, security, and valuation; btx_nonce_rate_raw is the legacy-compatible protocol audit field; for btx_block_height <= 124999, btx_nonce_rate_raw = max(getnetworkhashps(6720), getnetworkhashps(6720) * work_per_block / 2^pre_hash_epsilon_bits); for btx_block_height >= 125000, btx_nonce_rate_raw is the one-week height-weighted protocol-era transition: legacy window blocks use the pre-125000 shared-seed transform, and nonce_seed_v2/nonce_seed_v3/v0.32.11-v3-fix window blocks use getnetworkhashps(6720) without shared-seed amortization; v3 and v0.32.11 change seed binding/solver correctness, not the Bitcoin-style chainwork formula; security_equiv_hashrate_hps = matmul_security_weight * network_matmul_rate_hps; btx_security_percent = 100 * security_equiv_hashrate_hps / btc_hashrate_hps; compute_floor_usd = btc_price_usd * (security_equiv_hashrate_hps / btc_hashrate_hps); equivalence invariant: when security_equiv_hashrate_hps == btc_hashrate_hps, btx_security_percent == 100 and compute_floor_usd == btc_price_usd; btx_supply_multiplier = clamp(float_multiplier * unlock_drag_multiplier, supply_multiplier_min, supply_multiplier_max); model_compute_floor_usd = compute_floor_usd * btx_supply_multiplier; spot.usd = model_compute_floor_usd * (1 + risk_index * risk_spot_weight); effective_network_matmul_rate_hps remains an audit/diagnostic release-envelope field only: if network_matmul_rate_hps >= prior_effective_network_matmul_rate_hps then effective_network_matmul_rate_hps = network_matmul_rate_hps else release_retention = 2^(-elapsed_seconds / nonce_release_half_life_seconds) and effective_network_matmul_rate_hps = network_matmul_rate_hps + (prior_effective_network_matmul_rate_hps - network_matmul_rate_hps) * release_retention; effective_network_matmul_rate_hps does not drive model_compute_floor_usd, spot.usd, or forward_market_price; for each scenario s in {bear, base, bull}: progress_s(m) = (1 - 2^(-m / scenario_half_life_s)) / (1 - 2^(-12 / scenario_half_life_s)); scenario_security_s(m) = min(max(scenario_cap_s, btx_security_percent), btx_security_percent * scenario_growth_12m_s^progress_s(m) * trend_multiplier(m)); btx_security_percent_forward[m] = sum(probability_s * scenario_security_s(m)); btx_security_percent_12m = btx_security_percent_forward[12]; projected_blocks[m] = round(m * 30.4375 * 86400 / 90); projected_btx_supply[m] = protocol_supply_at(btx_block_height + projected_blocks[m]); forward_market_cap[m].usd = btc_price_usd * (btx_security_percent_forward[m] / 100) * btx_supply_multiplier * R_BTC(m) * btx_circulating_supply; forward_market_price[m].usd = forward_market_cap[m].usd / projected_btx_supply[m]; forecast.rows[m] = {t = computed_at + m model_months, forward_market_price_usd = forward_market_price[m].usd, forward_market_cap_usd = forward_market_cap[m].usd, projected_supply = projected_btx_supply[m], btx_security_percent_forward = btx_security_percent_forward[m]}