WEIRSolana Mainnet

WEIR has been at this window since day one, counting every Solana token that clears $10K. The gate only opens when the evidence is provably good enough.

$WEIRthe math · 18 equations
WEIR · The Math

Every decision,
in one line.

An autonomous agent is only as honest as the equations it answers to. These are all of them: the ones that label the data, train the model, refuse lucky scores, and decide whether a token may launch.

launcht  =  ct⋆⋅1{ ℓ=1 }wherect⋆=arg max⁡c∈Ctp^(c)\text{launch}_t \;=\; c^{\star}_{t} \cdot \mathbf{1}\big\{\, \ell = 1 \,\big\} \qquad \text{where} \quad c^{\star}_{t} = \operatorname*{arg\,max}_{c \in \mathcal{C}_t} \hat p(c)
Driven by equation (4.2)
w = 0.0%
I
Observe
Every token that clears $10K becomes one labelled example.
Survival label

P̄ᵢ is the peak market cap. The only question asked; price is never the target.

backend/app/services/holder_sampler.py
livesurvivors95 of 269
yi  =  1{ Pˉi≥30k },Pˉi≥10ky_i \;=\; \mathbf{1}\big\{\, \bar P_i \ge 30\text{k} \,\big\}, \qquad \bar P_i \ge 10\text{k}
Feature map

Launch hour on a circle, day of week one-hot, holders on a log scale, lore embedded by MiniLM φ and projected to 24 dimensions.

backend/app/ml/features.py
lived =37
xi  =  (sin⁡θi, cos⁡θi, edowi, log⁡(1+Hi), W ⁣⊤ϕ(lorei)),θi=2πhi24\mathbf{x}_i \;=\; \big(\sin\theta_i,\ \cos\theta_i,\ \mathbf{e}_{\mathrm{dow}_i},\ \log(1+H_i),\ W^{\!\top}\phi(\text{lore}_i)\big), \qquad \theta_i = \tfrac{2\pi h_i}{24}
II
Learn
Boosted trees turn features into a probability of survival.
Survival probability

Four hundred shallow trees, each correcting the residue of the last.

backend/app/ml/trainer.py
p^(x)  =  σ ⁣(∑m=1400η hm(x)),η=0.03\hat p(\mathbf{x}) \;=\; \sigma\!\Big(\sum_{m=1}^{400} \eta\, h_m(\mathbf{x})\Big), \qquad \eta = 0.03
Objective

Balanced weights, so the rare survivor counts as much as the common stall.

backend/app/ml/trainer.py
L  =  −∑iwyi[ yilog⁡p^i+(1−yi)log⁡(1−p^i)],wc=n2nc\mathcal{L} \;=\; -\sum_{i} w_{y_i}\Big[\,y_i \log \hat p_i + (1-y_i)\log(1-\hat p_i)\Big], \qquad w_c = \frac{n}{2n_c}
Ranking quality

The chance a random survivor is ranked above a random stall. A coin scores ½.

backend/app/ml/trainer.py
live5-fold0.548 ± 0.021
AUC  =  Pr⁡ ⁣[ p^(x+)>p^(x−) ]\mathrm{AUC} \;=\; \Pr\!\big[\,\hat p(\mathbf{x}^{+}) > \hat p(\mathbf{x}^{-})\,\big]
III
Prove
A score counts only after surviving two independent worst cases.
Capacity penalty

Vapnik–Chervonenkis: how far luck can lift the score of a model with capacity d.

backend/app/ml/jar_math.py
liven = 269, d = 37 → ε =0.7230
ε  =  d(log⁡2nd+1)+log⁡4δn,δ=0.05\varepsilon \;=\; \sqrt{\frac{d\big(\log\frac{2n}{d}+1\big) + \log\frac{4}{\delta}}{n}}, \qquad \delta = 0.05
Bootstrap bound

Resample the data two thousand times; keep the score that 97.5% of worlds beat.

backend/app/ml/jar_math.py
livebound =0.5000
AUC‾ boot  =  Q0.025({AUC(Db∗)}b=12000)\underline{\mathrm{AUC}}_{\,\mathrm{boot}} \;=\; Q_{0.025}\Big(\big\{\mathrm{AUC}(\mathcal{D}^{*}_{b})\big\}_{b=1}^{2000}\Big)
Proven floor

The more pessimistic bound is the only number the agent believes.

backend/app/ml/jar_math.py
livefloor =0.5134
AUC‾  =  min⁡{ AUC‾−ε,  AUC‾ boot}\underline{\mathrm{AUC}} \;=\; \min\big\{\,\overline{\mathrm{AUC}} - \varepsilon,\ \ \underline{\mathrm{AUC}}_{\,\mathrm{boot}}\big\}
IV
Act
The agent may launch only when the mathematics allows it.
Four Locks

Enough data, enough survivors, stable folds, no look-ahead.

backend/app/ml/gate_math.py
liveg1failg2failg3failg4fail
L  =  ⋀k=14ℓk,ℓ1:n≥2000ℓ3:σAUC<0.05ℓ2:n+≥200ℓ4:∣AUCcv−AUCtime∣≤0.04L \;=\; \bigwedge_{k=1}^{4} \ell_k, \qquad \begin{aligned} \ell_1 &: n \ge 2000 & \ell_3 &: \sigma_{\mathrm{AUC}} < 0.05 \\ \ell_2 &: n_{+} \ge 200 & \ell_4 &: \big|\mathrm{AUC}_{\mathrm{cv}} - \mathrm{AUC}_{\mathrm{time}}\big| \le 0.04 \end{aligned}
Water level at the gate

Until every lock holds open, the last of the water cannot rise.

backend/app/ml/gate_math.py
livew =13.5%
w  =  min⁡{ clip⁡[0,1] ⁣AUC‾−0.50.1,  0.95+0.05 1L}w \;=\; \min\Big\{\, \operatorname{clip}_{[0,1]}\!\frac{\underline{\mathrm{AUC}} - 0.5}{0.1},\ \ 0.95 + 0.05\,\mathbf{1}_{L} \Big\}
Daily choice

One hundred ideas per cycle; the one most likely to survive is presented.

backend/app/api/ideas_endpoints.py
ct⋆  =  arg max⁡c ∈ Ct p^(c),∣Ct∣=100c^{\star}_{t} \;=\; \operatorname*{arg\,max}_{c \,\in\, \mathcal{C}_t} \ \hat p(c), \qquad |\mathcal{C}_t| = 100
Commitment

Each idea is hashed into an append-only log before anyone sees it.

backend/app/api/ideas_endpoints.py
hc  =  SHA256( name ∥ lore ∥ hour ∥ run )h_c \;=\; \mathrm{SHA256}\big(\,\text{name} \,\|\, \text{lore} \,\|\, \text{hour} \,\|\, \text{run}\,\big)
Calibration

Every launched prediction is scored against what happened. A coin scores 0.25.

backend/app/api/launches_endpoints.py
BS  =  1N∑k=1N(p^k−yk)2\mathrm{BS} \;=\; \frac{1}{N}\sum_{k=1}^{N}\big(\hat p_k - y_k\big)^2
A
Appendix
Supporting equations behind the window, the ladder, the runs and the about page.
Survival by launch hour

Share of tokens launched in hour h that went on to reach $30K.

backend/app/ml/trainer.py
r(h)  =  ∑i1{hi=h} yi∑i1{hi=h}r(h) \;=\; \frac{\sum_i \mathbf{1}\{h_i = h\}\, y_i}{\sum_i \mathbf{1}\{h_i = h\}}
Word lift

How much more often lore containing w survives than the base rate. 1× means no signal.

lift(w)  =  Pr⁡[ y=1∣w∈lore ]Pr⁡[ y=1 ]\mathrm{lift}(w) \;=\; \frac{\Pr[\,y = 1 \mid w \in \text{lore}\,]}{\Pr[\,y = 1\,]}
Scoring an idea

Holders belong to the market, not the agent, so they are held at the dataset median.

backend/app/api/ideas_endpoints.py
p^(c)  =  p^(x(namec, lorec, hc, H~)),H~=median⁡iHi\hat p(c) \;=\; \hat p\big(\mathbf{x}(\text{name}_c,\ \text{lore}_c,\ h_c,\ \tilde H)\big), \qquad \tilde H = \operatorname{median}_i H_i
Skill over the base rate

Above zero means the predictions beat always guessing the base rate.

BSS  =  1−BSBSbase,BSbase=yˉ (1−yˉ)\mathrm{BSS} \;=\; 1 - \frac{\mathrm{BS}}{\mathrm{BS}_{\text{base}}}, \qquad \mathrm{BS}_{\text{base}} = \bar y\,(1-\bar y)
Borel’s monkeys

Any fixed chance p > 0, repeated forever, happens almost surely.

Pr⁡[hit within n tries]  =  1−(1−p)n  →  n→∞    1\Pr\big[\text{hit within } n \text{ tries}\big] \;=\; 1 - (1-p)^{n} \;\xrightarrow[\;n\to\infty\;]{}\; 1
Notation

Symbols used on this page

n, n+n,\ n_{+}Labelled tokens, and how many of them reached $30K
Pˉi\bar P_iPeak market cap of token i
HiH_iHolder count, sampled once 48h after launch
hih_iLaunch hour (UTC)
ϕ\phiMiniLM sentence embedding of the lore
ddModel capacity used in the VC bound
δ\deltaAllowed failure probability of a bound (0.05)
p^\hat pPredicted probability of survival
ε\varepsilonVC capacity penalty
AUC‾\underline{\mathrm{AUC}}Proven floor: the worst-case score
GGAll four gates hold
ℓ\ellWater level at the gate, from 0 to 1
Ct\mathcal{C}_tThe candidate ideas written in cycle t