Worker T6, 2026-09-26 00:37 to 00:51 Beirut. Read-only on copies in data/. Every number below comes from scripts/T6-zones.py or scripts/T6-symmetry.py and is saved as CSV in data/T6-*.csv. Rerun: cd projects/caverio/companion-2026-09-26 && python3 scripts/T6-zones.py && python3 scripts/T6-symmetry.py (about 25 s CPU each, no network). Evidence grade for every number here: A (our stores, script saved).
T6-symmetry.csv).scripts/T6-zones.py)Price path. Deep-paper crossings use deep-paper/book.sqlite observations. Discovery and alerts use ticks/ (both are dexscreener prints via market-refresh). The candle stores cannot serve: candles-onchain and candles-bsc keep a rolling ~12 h window (719 candles per pool), and ohlcv/ keeps 48 candles per token from one outcomes pull.
| Term | Definition | Line |
|---|---|---|
| Stale repeat | A print whose price equals the previous raw print exactly. Dropped first. | 60 |
| Misquote episode (new, see §1.1) | A print more than 3x away from the last accepted print, where liquidity moved the same way by at least 0.8 of the price move in log terms. Rejected until a print comes back within 3x. | 63, 72 |
| Phantom | A lone print under 0.75x of both neighbours (the audit test). Base settings also drop the mirror lone-high, over 1.333x both neighbours, because a lone high inflates any best-price measure. | 81, 82 |
| Trigger time | Discovery: seenAt (when our intake saw the call); calledAt is tested as a sensitivity. Crossings: observationAt of the deep_crossing event. Alerts: at of the alert row. |
107, 191, 203, 209 |
| Honest entry | The first cleaned print at or after trigger + reaction delay (base 60 s; also tested 0 s, 300 s, 900 s, 1800 s, 3600 s). If there is no print within 15 min of that time, there is no entry and the trigger is excluded and counted. | 108, 109 |
| Cost haircut | Per side, on entry and exit: 1% if pool liquidity at entry is under $50K, 0.5% at or above. This stands in for DEX fee plus slippage on a small ticket. Sensitivity: flat 1.5% per side (the deep-paper replay fee). Net gain = exit × (1 - h) / (entry × (1 + h)) - 1. | 90, 92 |
| Touch best | The highest cleaned print within H hours after entry, net of the haircut. Reported only as the loose comparison. | 135 |
| Held best ("for long enough") | The highest level L such that every cleaned print from some time t until the first print at or after t + 5 min was at or above L, with the window closing inside H. Net of haircut. | 122, 128, 137 |
| Forgiving win (X, H) | Held best within H hours ≥ +X% net. | 137, fw() |
| First-passage win (X, Y, H) | The held +X% level started holding before any cleaned print at or below -Y% (gross) from entry, within H. | 156, 162 |
| Strict win | Enter as above. Exit at the first print at or below -45% (stop). Once a print reaches +40%, exit at the first print at or below 80% of the peak (trail). Otherwise exit at the last print before 72 h. Fills happen at the crossing print, not at the level. Costs are charged on both sides. Win = net > 0. If the path ends before 72 h, the trade is marked at the last print and flagged unresolved. |
171 to 177 |
| Time to best | Minutes from entry to the highest cleaned print within 24 h (and 72 h). | 145 |
| Drawdown before best | The lowest cleaned print between entry and that best, relative to entry (gross). | 147 |
| Giveback after best | The lowest print after the best, within the same window, relative to the best. | 149 |
| Matched control | Same tokens as each trigger set. A pseudo-trigger every 4 h from the token's first print + 1 h, same engine and cleaning. Lift = trigger share minus control share. | 249 |
| Band | Market cap at the entry print: <250K, 250K-1M, 1-5M, 5-20M, ≥20M. | 94 |
| Censoring | If the path ends before H, non-wins count as non-wins (a lower bound). The censored non-win count is in every grid row (T6-grid.csv, column censored_nonwins). |
139 |
The lone-print test cannot catch multi-print misquotes. Example from ticks: solana:JE3HT7SbCgXDQWV6xp3oiiAisDzq4HyZ8wyEVBDCs45Z, a token around $0.001 with $150K liquidity, prints $2.56, then $10.7 for five consecutive ticks, then $9.09 and $14.10 in pairs. Liquidity reads $370M to $938M on those ticks. This happened eight separate times between 09-11 and 09-25. The quote is for a different pair or unit. Because the prints come in runs, no single print is "lone".
Before this filter, the strict mean on alerts was +485%, and with no cleaning at all it was 2.7 × 10^19 %. The organic signature is different: trading moves pool USD liquidity by about the square root of the price move, so a price and liquidity jump in proportion is not organic. The filter rejects 229 tick prints and 33 book prints. Bolo should add this test next to the phantom check (audit fix 4). The raw sidecar (bead 44ht) is what would confirm it.
Cleaning stage counts, base settings, all stored paths (T6-summary.json):
| Store | Raw prints | After stale repeats out | After misquote out | After phantom (low+high) out |
|---|---|---|---|---|
| ticks | 422,443 | 300,833 (28.8% were repeats) | 300,604 (-229) | 300,251 (-353) |
| deep-paper book | 165,889 | 112,363 (32.3% were repeats) | 112,330 (-33) | 112,272 (-58) |
| Set | Triggers | With honest entry (60 s, ≤15 min) | Distinct tokens | Window | Note |
|---|---|---|---|---|---|
| (a) Discovery calls | 652 rows → 479 with chain+address → 308 unique (post, token) | 41 | 35 | 09-10 to 09-25 | Ticks start when a token becomes a situation, not when it is called. Median gap from seenAt to the first tick is 70 h. Discovery cannot be measured properly today. |
| (b) Deep-paper crossings | 165 deep_crossing events (59 entered, 36 pre_start, 23 repeat_token, 19 quiet_hour, 10 unconfirmed_print, 1 liquidity_floor skips) |
148 | 77 | 09-22 04:24Z to 09-25 21:20Z | 3.7 days only |
| (c) Alerts, entry-type (forming / confirming / active) | 5,469 | 3,337 | 591 | 09-10 to 09-25 | 2,809 are repeats on a token already alerted |
| (c') Alerts, fading | 2,088 | 1,232 | 190 | same | Kept separate to test "sell zone" meaning |
| Controls | discovery 1,279 / crossings 777 / alerts 17,767 pseudo-triggers | 516 / 499 / 5,771 | 35 / 74 / 564 | same tokens |
The per-trigger register (token, chain, trigger time, entry time, lag, entry price, liquidity, band, outcomes) is data/T6-triggers.csv.
Full grid for both measures, all sets and controls, with n and censored counts: data/T6-grid.csv. None of these cells has n under 20.
Discovery, n=41 (35 tokens). Control n=516.
| H \ X | 10 | 20 | 30 | 50 | 100 |
|---|---|---|---|---|---|
| 1 | 29.3 | 12.2 | 7.3 | 4.9 | 0.0 |
| 4 | 39.0 | 26.8 | 14.6 | 9.8 | 2.4 |
| 12 | 43.9 | 31.7 | 24.4 | 14.6 | 2.4 |
| 24 | 46.3 | 34.1 | 29.3 | 22.0 | 7.3 |
| 72 | 51.2 | 36.6 | 31.7 | 24.4 | 9.8 |
| control 1 h | 6.6 | 3.1 | 1.4 | 0.6 | 0.0 |
| control 24 h | 48.3 | 34.5 | 23.8 | 15.1 | 6.8 |
Crossings, n=148 (77 tokens). Control n=499.
| H \ X | 10 | 20 | 30 | 50 | 100 |
|---|---|---|---|---|---|
| 1 | 45.3 | 29.1 | 18.2 | 6.8 | 0.7 |
| 4 | 57.4 | 47.3 | 34.5 | 23.0 | 8.1 |
| 12 | 62.2 | 54.7 | 45.9 | 32.4 | 15.5 |
| 24 | 64.9 | 57.4 | 48.6 | 37.2 | 20.9 |
| 72 | 67.6 | 60.1 | 51.4 | 40.5 | 24.3 |
| control 1 h | 12.6 | 7.2 | 4.4 | 1.8 | 0.8 |
| control 24 h | 56.1 | 43.1 | 33.3 | 25.1 | 13.6 |
Alerts (entry-type), n=3,337 (591 tokens). Control n=5,771.
| H \ X | 10 | 20 | 30 | 50 | 100 |
|---|---|---|---|---|---|
| 1 | 23.7 | 13.5 | 8.9 | 4.6 | 1.3 |
| 4 | 38.0 | 24.9 | 18.0 | 9.7 | 3.4 |
| 12 | 47.9 | 34.6 | 26.3 | 15.0 | 5.3 |
| 24 | 54.0 | 40.7 | 31.5 | 19.5 | 7.4 |
| 72 | 63.0 | 50.9 | 40.2 | 27.0 | 12.9 |
| control 1 h | 6.1 | 3.2 | 1.8 | 0.8 | 0.2 |
| control 24 h | 47.7 | 33.9 | 25.4 | 16.1 | 7.0 |
Alerts, fading, n=1,232 (190 tokens): 1 h: 26.5 / 16.3 / 11.8 / 6.8 / 1.6; 24 h: 62.9 / 48.7 / 35.7 / 27.1 / 11.7.
The 72 h row is a lower bound. For alerts at X=20, 890 of the non-wins had paths that ended before 72 h; for crossings, 55.
Touch vs held. Touch runs 7 to 12 points above held at 24 h: crossings 67.6 vs 57.4, alerts 49.6 vs 40.7, discovery 43.9 vs 34.1. That gap is the set of prices that were printed but did not stand for 5 minutes.
T6-symmetry.csv, gross touch)| Set | +20% within 1 h | -20% within 1 h | +20% within 24 h | -20% within 24 h | Both within 24 h |
|---|---|---|---|---|---|
| Discovery (n=41) | 26.8 | 31.7 | 43.9 | 68.3 | 34.1 |
| control | 5.8 | 6.6 | 43.0 | 45.2 | 18.4 |
| Crossings (n=148) | 48.0 | 43.2 | 68.2 | 76.4 | 50.7 |
| control | 16.2 | 16.4 | 51.7 | 63.7 | 31.5 |
| Alerts (n=3,337) | 23.9 | 27.9 | 51.3 | 67.3 | 34.0 |
| control | 7.8 | 6.7 | 42.2 | 50.0 | 19.6 |
| Alerts fading (n=1,232) | 27.5 | 36.2 | 59.3 | 75.3 | 46.5 |
Triggers roughly triple the chance of a 20% move in the next hour, in both directions. Over 24 h, a -20% move is more common than a +20% move after every trigger type. A forgiving-win number shown alone would be read as "the signal points up". It does not, or only weakly.
T6-firstpassage.csv)Share whose +X% net level held 5 minutes before the price ever printed -Y%. Rows are (X, Y); cells are trigger / control / lift in points.
| H | Discovery (n=41) | Crossings (n=148) | Alerts (n=3,337) | Alerts fading (n=1,232) | |
|---|---|---|---|---|---|
| +20 before -30 | 1 h | 12.2 / 3.1 / +9.1 | 29.1 / 7.0 / +22.0 | 12.9 / 3.1 / +9.7 | 15.7 / 3.1 / +12.6 |
| +20 before -30 | 4 h | 26.8 / 12.4 / +14.4 | 43.2 / 25.7 / +17.6 | 22.3 / 14.3 / +8.1 | 28.1 / 14.3 / +13.8 |
| +20 before -30 | 24 h | 29.3 / 32.4 / -3.1 | 46.6 / 38.3 / +8.3 | 34.3 / 30.5 / +3.8 | 37.1 / 30.5 / +6.5 |
| +50 before -30 | 24 h | 14.6 / 13.2 / +1.5 | 25.7 / 20.6 / +5.0 | 15.1 / 13.9 / +1.2 | 20.4 / 13.9 / +6.5 |
| +20 before -20 | 24 h | 26.8 / 28.5 / -1.7 | 41.2 / 32.7 / +8.6 | 28.7 / 27.1 / +1.6 | 29.3 / 27.1 / +2.2 |
| +20 before -45 | 24 h | 34.1 / 33.5 / +0.6 | 51.4 / 41.1 / +10.3 | 38.2 / 32.8 / +5.3 | 45.5 / 32.8 / +12.6 |
T6-strict-vs-forgiving.csv, T6-firstpassage-dims.csv)Columns: n; forgiving held +20%/24 h; first-passage +20 before -30 in 24 h (FP); strict win rate; strict median net; share that never traded above entry within 72 h. Rows with n under 20 are marked SMALL and should not be quoted.
| Set / slice | n | Forgiving 20/24 | FP 20/-30/24 | Strict win | Strict median | Never above entry |
|---|---|---|---|---|---|---|
| Discovery, all | 41 | 34.1 | 29.3 | 36.6 | -17.0 | 7.3 |
| control | 516 | 34.5 | 32.4 | 41.1 | -7.2 | 10.3 |
| PowsGemCalls | 25 | 44.0 | 36.0 | 44.0 | -6.6 | 12.0 |
| sugarydick | 14 SMALL | 21.4 | 21.4 | 21.4 | -33.8 | 0 |
| passed screen | 13 SMALL | 46.2 | 23.1 | -45.7 | 15.4 | |
| not passed | 28 | 28.6 | 42.9 | -11.5 | 3.6 | |
| Crossings, all | 148 | 57.4 | 46.6 | 49.3 | -3.6 | 7.4 |
| control | 499 | 43.1 | 38.3 | 45.7 | -5.1 | 10.8 |
| entered | 59 | 54.2 | 42.4 | 42.4 | -22.0 | 8.5 |
| skip: pre_start | 36 | 58.3 | 50.0 | 47.2 | -5.2 | 2.8 |
| skip: repeat_token | 23 | 60.9 | 56.5 | 52.2 | +2.8 | 13.0 |
| skip: quiet_hour | 19 SMALL | 68.4 | 47.4 | 68.4 | +12.1 | 10.5 |
| skip: unconfirmed_print | 10 SMALL | 40.0 | 30.0 | 50.0 | -2.5 | 0 |
| solana | 98 | 54.1 | 43.9 | 46.9 | -8.1 | 9.2 |
| robinhood | 44 | 63.6 | 50.0 | 52.3 | +6.7 | 4.5 |
| bsc | 6 SMALL | 66.7 | 66.7 | 66.7 | +9.3 | 0 |
| Alerts, all | 3,337 | 40.7 | 34.3 | 42.8 | -11.1 | 6.1 |
| control | 5,771 | 33.9 | 30.5 | 42.5 | -5.5 | 11.6 |
| forming | 2,505 | 39.2 | 35.0 | 43.4 | -8.5 | 5.9 |
| confirming | 455 | 40.9 | 30.1 | 39.6 | -27.4 | 7.3 |
| active | 377 | 50.9 | 34.7 | 42.7 | -45.7 | 6.1 |
| trigger: first covered buy | 1,854 | 39.1 | 43.1 | -8.5 | 6.7 | |
| trigger: distinct-trader confirmation | 768 | 45.7 | 40.9 | -32.7 | 6.5 | |
| trigger: thesis-first | 466 | 38.6 | 47.9 | -3.8 | 3.9 | |
| robinhood | 1,979 | 41.3 | 34.9 | 44.0 | -8.6 | 6.2 |
| solana | 1,085 | 41.7 | 35.0 | 41.5 | -14.8 | 5.6 |
| bsc | 273 | 33.0 | 27.5 | 39.9 | -15.2 | 7.3 |
| Alerts fading, all | 1,232 | 48.7 | 37.1 | 48.5 | -3.0 | 6.6 |
By band (alerts, n; forgiving 20/24; FP; strict win; strict median):
| Band | Alerts | Control-alerts | Crossings |
|---|---|---|---|
| <250K | 56; 14.3; 12.5; 28.6; -42.5 | 432; 28.5; 26.4; 32.6; -15.0 | 23; 52.2; 39.1; 30.4; -22.0 |
| 250K-1M | 585; 42.2; 32.3; 41.2; -21.7 | 1,340; 40.2; 34.6; 44.6; -4.5 | 77; 61.0; 46.8; 54.5; +4.9 |
| 1-5M | 1,659; 47.3; 38.7; 42.6; -23.8 | 2,446; 38.3; 34.3; 43.4; -7.4 | 38; 63.2; 57.9; 47.4; -6.0 |
| 5-20M | 642; 39.1; 37.1; 43.1; -8.0 | 940; 30.7; 30.1; 41.8; -5.3 | 2 SMALL |
| ≥20M | 392; 17.6; 17.6; 47.7; -0.8 | 595; 10.9; 10.8; 42.4; -2.8 | 8 SMALL |
Reading the band table: ≥20M almost never gives a +20% forgiving win (18%), but has the least bad strict result. Under $250K has the worst strict result, and 27% never trade above entry at all (rugs and dead launches). The $1-5M band is where an alert adds the most over a random moment on the forgiving measure (+9 pts). Its strict median is still -24%, because the moves are large in both directions.
Strict outcome. Strict win rates sit at 37 to 49% everywhere, with medians negative on every trigger set. The strict result after a trigger is no better than at a random moment on the same token (alerts median -11.1% vs control -5.5%; crossings -3.6% vs -5.1%). The forgiving advantage exists only in the first hours, and a fixed 72 h rule gives it back.
T6-timing.csv, T6-holdzone.csv)Forgiving winners (+20% held within 24 h). Minutes after entry; percent vs entry.
| Set | n winners | Time to best p25 / p50 / p75 / p90 (min) | Drawdown before best p50 / p75 / p90 | Median best gain | Median giveback after best (24 h) | +20% level first held, p50 / p80 (min) |
|---|---|---|---|---|---|---|
| Discovery | 14 SMALL | 132 / 310 / 933 / 1229 | -13.0 / -27.0 / -41.4 | +70% | -49% | 86 / 310 |
| Crossings | 85 | 67 / 282 / 776 / 1213 | -12.3 / -26.8 / -46.1 | +91% | -58% | 52 / 186 |
| Alerts | 1,359 | 129 / 407 / 921 / 1233 | -12.5 / -25.8 / -40.5 | +63% | -47% | 144 / 570 |
| Alerts fading | 600 | 101 / 414 / 901 / 1177 | -19.0 / -31.1 / -43.7 | +77% | -63% | 97 / 486 |
| Control-alerts | 1,954 | 263 / 570 / 988 / 1283 | -7.6 / -18.6 / -31.2 | +60% | -40% | 273 / 679 |
Non-winners peak early: 52% of alert non-winners had already printed their 24 h best by 60 min, and 79% by 8 h. For crossing non-winners the median time to best is 20 min.
Hold curve (share of eventual winners still below their 24 h best at elapsed time):
| Elapsed | 15 min | 30 min | 1 h | 2 h | 4 h | 8 h | 12 h |
|---|---|---|---|---|---|---|---|
| Crossings winners (85) | 94% | 85% | 78% | 68% | 53% | 38% | 26% |
| Alerts winners (1,359) | 96% | 92% | 85% | 77% | 62% | 46% | 36% |
| Alert non-winners already at their best | 34% | 43% | 52% | 62% | 71% | 79% | 85% |
T6-sensitivity.csv)Headline A = forgiving held +20%/24 h. Headline B = first-passage +20 before -30 in 24 h. Cells show the relative change vs base.
| Variant | Discovery A / B | Crossings A / B | Alerts A / B |
|---|---|---|---|
| base value | 34.1 / 29.3 | 57.4 / 46.6 | 40.7 / 34.3 |
| delay 0 s | -5% / -15% | +6% / +7% | +4% / +7% |
| delay 300 s | +5% / -2% | -6% / -11% | -1% / -1% |
| no phantom classification | 0 / 0 | +1% / +1% | 0 / 0 |
| phantom low only (audit test) | 0 / 0 | 0 / 0 | 0 / 0 |
| stale repeats kept | 0 / 0 | +1% / +1% | +1% / +1% |
| misquote episodes kept | 0 / 0 | 0 / 0 | 0 / 0 |
| no cleaning at all | 0 / 0 | +2% / +3% | +1% / +1% |
| haircut flat 1.5% per side | 0 / 0 | -7% / -10% | -7% / -7% |
| discovery trigger = calledAt | -12% / -23% | n/a | n/a |
Verdict: not fragile. Nothing moves either headline by a third. The discovery calledAt case (-23%, n=40) comes closest and is a small cell. The strict mean, by contrast, is fragile: without cleaning it is 10^19 %, and with the misquote filter off it is +485%. Quote strict medians only. The held measure is robust because the 5-minute hold requires a price to stand on consecutive prints, so a single bad print or a short misquote run cannot create a win. That is a second reason, besides Thomas's "long enough", to put the hold in the public definition.
| Set | First sighting: n / FP / strict win / strict median | Repeat on same token: n / FP / strict win / strict median |
|---|---|---|
| Discovery | 22 / 36.4 / 40.9 / -19.5 | 19 SMALL / 21.1 / 31.6 / -17.0 |
| Crossings (nth crossing in this set) | 76 / 48.7 / 51.3 / +2.6 | 72 / 44.4 / 47.2 / -6.7 |
Crossings (engine's own repeatToken flag) |
106 / 57.5 (A) / 52.8 / +4.0 | 42 / 57.1 (A) / 40.5 / -19.1 |
| Alerts | 528 / 29.2 / 38.4 / -21.2 | 2,809 / 35.3 / 43.6 / -9.4 |
On crossings, repeats lose under the strict rule: median -19.1% on the engine flag vs +4.0% for first episodes. They do not lose on the forgiving measure. That matches the v1 loss: repeats spike and fail fast. On alerts it is the other way round. The first alert on a token is the worse one (strict median -21.2%), because first alerts include fresh launches that die. Repeat handling should be per source, not global.
Forgiving win (first-passage, with baseline). Parameters: X = 20% net of costs, held 5 minutes, before -30%, within 24 h. Also show the 4 h figure, because that is where the signal lives.
Page sentence: "After this signal, the price rose 20% above the first price you could have bought at, after costs, and stayed there for five minutes before it ever fell 30%, in N of M cases within 24 hours; at a random moment on the same tokens it was K of L."
Strict win.
Page sentence: "Bought one minute after the signal and sold by a fixed rule (out at -45%; after a 40% rise, out on a 20% fall from the high; otherwise out at 72 hours), the trade made money after costs in N of M cases, median result R%."
Rules for showing either number: - Always show n, the date window, and the random-moment rate next to it. - Hide any cell with n under 20. Never show a mean, only medians and shares. - The costs model and the 60 s reaction delay are stated in a footnote under the number. - Neither number may be shown for discovery calls until the capture gap in §5 is fixed; n=41 of 308 is not a sample of the calls.
Why these parameters: +20% is the smallest move that survives realistic costs and the 5-minute hold with a margin. +50% is too rare to be a "forgiving" measure: 15% for alerts, 26% for crossings. A -30% adverse limit is where a normal person gives up; -45% is the follower's stop, and at -45% the measure approaches the volatility-only version. 24 h is the default; 4 h is the honest window, where the lift is largest (crossings +18 pts, alerts +8 pts).
Principle: a zone is a descriptive state computed from the source's own history, with its n, never an instruction. The page shows where the token is now on a ruler built from past triggers of the same source (and band, once cells reach n ≥ 20).
Discovery (n=41). Every cell with n under 20 (bsc crossings, ≥20M crossings, most per-caller cells). Any band-by-source split below n=20.
| Gap | Today | What it would add | Cost (estimate, grade C) |
|---|---|---|---|
| Price capture at call time for discovery | Median 70 h between a call being seen and its first tick; 41 of 308 calls measurable | Makes discovery zones possible at all. One price read per call at seenAt, then the same poll as situations for 72 h. |
~650 calls over 15 days ≈ 45 calls/day. At a 60 s cadence for 72 h that is ~190K dexscreener reads/day, which is a lot. At 5 min cadence, ~39K/day. |
| Raw payload sidecar (bead 44ht) | Phantoms and misquotes are classified by heuristic | Confirms whether a jump is the provider or our handling. Turns the misquote filter from inference into fact. | Disk: about the size of the normalised stream, ~1 to 2 GB/month (estimate). |
| Provider clock on ticks | Ticks carry no source and no providerAt |
Honest entry needs the price's own time, not our receive time. A 60 s-late quote on a fast token is the paper-book quote-lag artifact. | Writer change only. |
| Executable quotes at entry | Entry priced off the indexer print | Replaces the haircut model with a real fill for the ticket size (router getAmountsOut on BSC; Jupiter quote on Solana). Required before any strict number is shown as "what you would have got". |
One quote per trigger, ~400/day for alerts. |
| Holdings on Solana and BSC | 46% of holdings files are "chain has no tape" stubs | A sell-zone ruler based on flows, not prices: covered wallets exiting, top-holder share falling. That is the only candidate for a non-price sell state. | BSC tape exists (09-18); Solana tape is a fossil. The Solana tape restart is the real cost. |
| Solana trade tape / on-chain candles with retention | candles-onchain and candles-bsc roll at ~12 h; trades-solana is one hour on 09-17 |
True traded prices (highs, lows, volume per minute) instead of indexer prints. Removes the phantom and misquote problem at the root, and allows a volume-confirmed hold. | Disk (the BSC tape is 1 GB in 7 days); RPC credits for Solana. |
| Longer crossing history | 3.7 days, 148 crossings | Band-by-chain cells with n ≥ 20; stable time-to-best curves. | Time only. |
| Event ids on alert evidence | Alerts carry alert ids only | Would let zones be computed per underlying event (which wallet, which caller) rather than per alert state. | Writer change. |
T6-strict-vs-forgiving.csv give the one-per-token view: forgiving 20/24 is 38.7% for alerts (vs 40.7% all) and 61.0% for crossings (vs 57.4% all). No clustered confidence intervals were computed. With 35 to 77 tokens behind discovery and crossings, treat differences under ~10 pts as noise (my inference, grade C).data/ (T6-book.sqlite via sqlite .backup, T6-ticks/, T6-discovery.jsonl, T6-alerts.jsonl, T6-deep-paper-status.json, ~480 MB).events.sqlite or price-paths.jsonl. price-paths is derived from the same ticks and candles.Files: scripts/T6-zones.py, scripts/T6-symmetry.py; data/T6-triggers.csv, T6-grid.csv, T6-lift.csv, T6-firstpassage.csv, T6-firstpassage-dims.csv, T6-strict-vs-forgiving.csv, T6-timing.csv, T6-holdzone.csv, T6-sensitivity.csv, T6-symmetry.csv, T6-summary.json; logs in logs/T6-run*.log.
Status: DONE