mirror of
https://github.com/jaxperro/winning-wallet-finder.git
synced 2026-07-27 15:57:47 +00:00
rename timing "insider" verdict -> "last-minute" (honest label)
The lead-time gate in validate_timing.py is a COPYABILITY heuristic, not proof of inside information: a short entry->resolution lead can be a genuine insider OR just someone who trades fast-resolving markets (live sports, hourly) well — indistinguishable, and irrelevant for copy purposes since either way the window is too tight to mirror. Rename the verdict accordingly. Gate unchanged (median lead >=24h to count as a copyable sharp; 50 sharps). Docs updated to current p80 numbers (218 profile matches, 62/83 forward-profitable, 50 sharps). The genuine insider-detection scanner (insider.py, z-score / Bubblemaps fingerprint) keeps its name — that's a different, correctly-named thing. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+13
-9
@@ -179,17 +179,21 @@ validate June) under p80 finds **218 wallets** matching the profile; forward,
|
||||
(The original flat-$200 run found 69 wallets, 25/37 forward, +11.7%.)
|
||||
|
||||
Then the decisive copyability filter, `live/validate_timing.py`: a near-100% win
|
||||
rate is either foresight (copyable) or last-second information (uncopyable). The
|
||||
tell is **entry->resolution lead time on winning conviction bets**. Of the 69,
|
||||
**21 were insiders** (median lead < 6h — you can't mirror them), leaving **23
|
||||
validated copyable sharps** (`watch_sharps.json`) with multi-day leads. The
|
||||
standout `0x60ec1744…` held 80% win over **1,017 forward conviction bets**; even
|
||||
the suspiciously-perfect `0x72e1…` (99/100% win) enters ~7 days early — a real
|
||||
forecaster, not an insider. These 23 are surfaced live on jaxperro.com/trading.
|
||||
rate is only useful if we can mirror it. The tell is **entry->resolution lead
|
||||
time on winning conviction bets** — this is a copyability heuristic, NOT proof of
|
||||
inside information (a short lead can be a genuine insider or just someone good at
|
||||
fast-resolving markets; we can't tell, and for copy purposes it doesn't matter).
|
||||
Of the 218, the gate drops the **"last-minute" wallets** (median lead <24h — you
|
||||
can't get the trade in before resolution), leaving **50 validated copyable sharps**
|
||||
(`watch_sharps.json`) with multi-day leads. The standout `0x60ec1744…` held 80%
|
||||
win over **1,017 forward conviction bets**; even the suspiciously-perfect `0x72e1…`
|
||||
(99/100% win) enters ~7 days early — a real forecaster, clearly not last-minute.
|
||||
These 50 are surfaced live on jaxperro.com/trading.
|
||||
|
||||
*Lesson: score conviction bets, not all bets; require avg entry ~0.4-0.6 (edge,
|
||||
not favorites); and gate on lead time to drop insiders. That funnel produces a
|
||||
copyable, forward-validated set — the strongest evidence in this project that
|
||||
not favorites); and gate on lead time to drop last-minute (un-mirrorable) wallets.
|
||||
That funnel produces a copyable, forward-validated set — the strongest evidence in
|
||||
this project that
|
||||
followable skill exists.*
|
||||
|
||||
## Repo layout
|
||||
|
||||
@@ -194,9 +194,10 @@ win rate ≠ edge, again. (The `value`/longshot archetype — wallets that beat
|
||||
**What does work (the repeatable find).** Scoring wallets on their **high-
|
||||
conviction bets — the top 20% by stake size (per-wallet p80, not a flat $200)** —
|
||||
which win 70–80% on genuinely-uncertain (~0.4–0.6)
|
||||
markets — trained pre-June and validated June: **25/37 stayed profitable forward
|
||||
(p=0.024)**. A lead-time gate (`validate_timing.py`) then drops the ~30% that are
|
||||
uncopyable insiders (entry <6h before resolution), leaving **23 validated
|
||||
markets — trained pre-June and validated June: **62/83 stayed profitable forward
|
||||
(p≈0)**. A lead-time gate (`validate_timing.py`) then drops wallets whose wins come
|
||||
too close to resolution to mirror — "last-minute" entries (median lead <24h), which
|
||||
may be genuine insiders or just fast-market specialists — leaving **50 validated
|
||||
copyable sharps** (`watch_sharps.json`), surfaced live on
|
||||
[jaxperro.com/trading](https://jaxperro.com/trading). One held **80% win over
|
||||
1,017 forward bets**. This is the strongest evidence in the project that
|
||||
|
||||
+5
-3
@@ -83,11 +83,13 @@ The per-wallet cutoff reproduces flat-$200's win-rate lift while adapting to eac
|
||||
wallet's scale (a whale's $200 bet isn't conviction; a minnow's is).
|
||||
|
||||
- `conviction_scan.py` — train pre-June / validate June on conviction bets →
|
||||
69 matches, **25/37 profitable forward (p=0.024)**. → `conviction_wallets.json`.
|
||||
218 matches, **62/83 profitable forward (p≈0)**. → `conviction_wallets.json`.
|
||||
- `validate_timing.py` — the copyability gate: entry→resolution **lead time** on
|
||||
winning conviction bets separates copyable sharps (multi-day lead) from
|
||||
uncopyable insiders (<6h). Drops 21 insiders → **23 validated copyable sharps**.
|
||||
→ `watch_sharps.json` (shown live on jaxperro.com/trading).
|
||||
"last-minute" wallets (median lead <24h) we can't mirror in time — could be
|
||||
genuine insiders or just fast-resolving-market specialists, can't tell which.
|
||||
→ **50 validated copyable sharps** in `watch_sharps.json` (shown live on
|
||||
jaxperro.com/trading).
|
||||
|
||||
Identifiers for a follow-worthy wallet: on its **≥$200 bets** — win ≥65%, avg
|
||||
entry 0.35–0.70 (edge, not favorites), +copy-ROI, FDR-significant, **median lead
|
||||
|
||||
+10
-7
@@ -1,11 +1,14 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Insider-vs-sharp check on the standout conviction wallets.
|
||||
"""Last-minute-vs-sharp check on the standout conviction wallets.
|
||||
|
||||
A near-100% win rate is either genuine foresight (copyable) or information /
|
||||
last-second entry (uncopyable insider). The tell is entry->resolution lead time
|
||||
on their WINNING conviction bets:
|
||||
* mostly < 1h before resolution -> insider/news-reaction, you can't follow it
|
||||
This is a COPYABILITY heuristic, not proof of inside information: a near-100%
|
||||
win rate is only useful to us if we can actually mirror it. The tell is entry->
|
||||
resolution lead time on their WINNING conviction bets:
|
||||
* mostly < 1h before resolution -> last-minute, you can't follow it in time
|
||||
* hours-to-days of lead -> a sharp you could actually mirror
|
||||
A short lead can mean a genuine insider OR just someone who trades fast-resolving
|
||||
markets (live sports, hourly) well — we can't tell which, and for copy purposes
|
||||
it doesn't matter: either way the window is too tight to mirror.
|
||||
"""
|
||||
|
||||
import json
|
||||
@@ -30,7 +33,7 @@ def lead_profile(w):
|
||||
return None
|
||||
med = st.median(leads)
|
||||
u6 = sum(1 for l in leads if l < 6) / len(leads)
|
||||
verdict = ("insider" if (med < 6 or sum(1 for l in leads if l < 1) / len(leads) > 0.5)
|
||||
verdict = ("last-minute" if (med < 6 or sum(1 for l in leads if l < 1) / len(leads) > 0.5)
|
||||
else "borderline" if med < COPYABLE_MED_LEAD else "sharp")
|
||||
return dict(n=len(leads), med=med, u6=u6, verdict=verdict)
|
||||
|
||||
@@ -66,7 +69,7 @@ def main():
|
||||
f"{fw:>7}{fr:>7}{c['fwd_n']:>5} {c['wallet']}")
|
||||
|
||||
json.dump(sharps, open(os.path.join(HERE, "watch_sharps.json"), "w"), indent=2)
|
||||
print(f"\n-> watch_sharps.json ({len(sharps)} copyable sharps, insiders filtered out)")
|
||||
print(f"\n-> watch_sharps.json ({len(sharps)} copyable sharps, last-minute wallets filtered out)")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
Reference in New Issue
Block a user