shuntCheck a trade

Proof

Does “4 in 5” actually mean 4 in 5?

Every range Shunt shows is the size a stock stayed within 4 times in 5 on past events of that kind. That only means something if it holds on days the range never saw. Here is the check, on history and live.

What “4 in 5” looks like on a real stock

Each evening Shunt draws the range for the next day, using only what had happened by then. The shaded lane is that range. Each dot is the move that followed. If “4 in 5” is honest, about one dot in five lands outside the lane, and that is what you see.

NVDA 193 of 250 days inside (77%)
+7%-7%2025-09-302026-09-28

57 red dots broke out. This picture includes earnings days, which the ordinary day range deliberately leaves out, so it reads a little under 80%.

TSLA 190 of 250 days inside (76%)
+13%-13%2025-09-302026-09-28

60 red dots broke out. This picture includes earnings days, which the ordinary day range deliberately leaves out, so it reads a little under 80%.

AAPL 205 of 250 days inside (82%)
+6%-6%2025-09-302026-09-28

45 red dots broke out. This picture includes earnings days, which the ordinary day range deliberately leaves out; even so it stays above 80% for this stock.

The same test on every stock

For every stock, the range was built only from events before each day, then checked against that day. Price history reaches back ten years; each row below says which window it uses. Each bar is the share of moves that stayed inside the range. The dark tick marks the 80% target, so a bar that reaches it means the range was honest.

Honest is not the same as useful. A range that is very wide catches nearly every move and tells you little. So each row also shows how wide the range is for a typical stock today, how far the result sits from 80% in percentage points, and the 95% interval around it. Close to 80% and narrow is what useful looks like.

Ordinary daysclose to close, last 3 years, outside the stock's own earnings · 302,642 checksrange today ±2.5% · +0.5 pts from 80 · 95% interval 80.4% to 80.7%80.5%
Overnight gapsclose to the next open, last 3 years · 308,281 checksrange today ±1.1% · +0.0 pts from 80 · 95% interval 79.9% to 80.2%80.0%
Own earnings daysthe session that reacts to the report, since 2016 · 50,070 checksrange today ±9.1% · +0.7 pts from 80 · 95% interval 80.4% to 81.0%80.7%
Bellwether report dayssince 2017, for the 45 stocks with a tested link · 1,373 checksrange today ±4.7% · +3.2 pts from 80 · 95% interval 81.2% to 85.1%83.3%
FOMC statement daysscheduled statements, last 3 years, one a notation vote · 37,399 checksrange today ±3.1% · +3.4 pts from 80 · 95% interval 83.0% to 83.8%83.4%
WeekendsFriday close to Monday open, last 3 years · 44,358 checksrange today ±1.2% · -9.4 pts from 80 · 95% interval 70.2% to 71.0%70.6%

Weekends fall short: 71% overall, 78% in the most recent half. A correction learned on older weekends overshot on newer ones (90%), so it is not applied; Shunt shows the weekend number as it is. Ranges are scaled by each stock's volatility now, refreshed after every US close. Data as of 2026-09-28.

Live, written before the outcome

After every US close, Shunt locks in tomorrow's 4 in 5 range for 30 stocks (the earnings range if one reports). After that session closes, each one is graded. Entries are never edited once written. This only counts as evidence once enough sessions have been graded; until then it shows the method, not a result.

Graded
510
Inside the range
80.0%
Waiting for their session
60

+0.0 pts from the 80% target, with a 95% interval of 76.3% to 83.2% over 510 graded ranges and 17 sessions. Median range ±3.3%. Thirty stocks on the same day move together, so the real uncertainty is wider than that interval. A rate above 80% in a calm stretch can simply mean the ranges are a little wide; this becomes evidence once many more sessions are graded, kept separate from the history above.

Show the 60 locked ranges
SessionStockKindRangeActual moveResult
2026-10-29XOMordinary±2.0%pending
2026-10-29JPMordinary±1.1%pending
2026-10-29UNHordinary±1.5%pending
2026-10-29LLYearnings±7.5%pending
2026-10-29PANWordinary±4.4%pending
2026-10-29CRWDordinary±5.3%pending
2026-10-29SNOWordinary±3.3%pending
2026-10-29SHOPordinary±3.9%pending
2026-10-29UBERordinary±2.3%pending
2026-10-29ARMordinary±5.9%pending
2026-10-29SMCIordinary±5.3%pending
2026-10-29QCOMordinary±3.0%pending
2026-10-29INTCordinary±4.4%pending
2026-10-29CRMordinary±4.4%pending
2026-10-29ORCLordinary±3.1%pending
2026-10-29NFLXordinary±2.4%pending
2026-10-29MSTRordinary±7.0%pending
2026-10-29HOODordinary±5.1%pending
2026-10-29COINordinary±5.6%pending
2026-10-29PLTRordinary±4.8%pending
2026-10-29MUordinary±4.1%pending
2026-10-29AVGOordinary±2.7%pending
2026-10-29AMDordinary±4.0%pending
2026-10-29GOOGLearnings±8.2%pending
2026-10-29METAordinary±3.0%pending
2026-10-29AMZNordinary±1.9%pending
2026-10-29MSFTearnings±5.5%pending
2026-10-29AAPLordinary±1.3%pending
2026-10-29TSLAordinary±3.0%pending
2026-10-29NVDAordinary±2.7%pending
2026-10-28XOMordinary±1.9%pending
2026-10-28JPMordinary±1.1%pending
2026-10-28UNHordinary±1.5%pending
2026-10-28LLYordinary±2.1%pending
2026-10-28PANWordinary±4.4%pending
2026-10-28CRWDordinary±5.4%pending
2026-10-28SNOWordinary±3.3%pending
2026-10-28SHOPordinary±3.9%pending
2026-10-28UBERordinary±2.3%pending
2026-10-28ARMordinary±5.9%pending
2026-10-28SMCIordinary±5.2%pending
2026-10-28QCOMordinary±3.0%pending
2026-10-28INTCordinary±4.3%pending
2026-10-28CRMordinary±4.3%pending
2026-10-28ORCLordinary±3.3%pending
2026-10-28NFLXordinary±2.4%pending
2026-10-28MSTRordinary±7.0%pending
2026-10-28HOODearnings±11.5%pending
2026-10-28COINordinary±5.6%pending
2026-10-28PLTRordinary±4.8%pending
2026-10-28MUordinary±4.1%pending
2026-10-28AVGOordinary±2.6%pending
2026-10-28AMDordinary±4.0%pending
2026-10-28GOOGLordinary±1.8%pending
2026-10-28METAordinary±3.1%pending
2026-10-28AMZNordinary±2.0%pending
2026-10-28MSFTordinary±1.7%pending
2026-10-28AAPLordinary±1.3%pending
2026-10-28TSLAordinary±3.0%pending
2026-10-28NVDAordinary±2.7%pending

Updated Thu, 29 Oct 2026 00:52:50 GMT. Script: scripts/journal.mts, run by a scheduled GitHub Action.

Does it read you right?

Shunt turns your sentence into a trade before it measures anything. To test that, 24 sentences were written the way traders type, each with the trade a careful person would read from it. Every field (stock, side, size, days, loss limit) is checked.

First run, rules alone
14 of 24
First run, with Claude
22 of 24
After the fixes, rules alone
24 of 24
After the fixes, with Claude
24 of 24

The fixes were made after seeing the misses, so the second row is not an unbiased score. The first run is. Claude only reads words here; it never produces a number you see. Claude version claude-opus-5-5.

Show what the first run got wrong, and the fix
SentenceWhat went wrongFix
rAMZN 7500 two days limit 300size and days not readplain numbers of four digits count as a size; number words count as days
hold googl perp 25k 3 days, cap loss at $900read 900 as the size"cap loss at" recognised as a loss limit
$10k long Apple for a week, 2% limitpercent limit not reada percent before the word limit counts
what if I put 50k in nvidia for 2 days and can take 1,500 lossloss limit not read"can take ... loss" recognised
short 8k AMD until Friday, stop me at 400days and stop not read by rules; Claude counted differently from my key"until Friday" and "until the 9th" counted in trading sessions including today
Show all 24 sentences
SentenceRules aloneWith Claude
buy $10k rNVDA, holding 5 days, max loss $600rightright
What happens if I hold 20k NVDA for 5 days with 600 limit?rightright
buy aapl for 5 daysrightright
long $5,000 of TSLA for 3 days, I can lose 250rightright
short 8k AMD until Friday, stop me at 400rightright
NVDAUSDT perp 3x long 15000 hold 2 days risk 500rightright
is $3k of Microsoft ok over the weekend if I can only lose $100rightright
go long meta 12k, 1 week, max loss 3%rightright
bet against Tesla with 4000 for 10 days, 5% max lossrightright
buying 2.5k of coinbase tomorrow, 1 day, 80 max lossrightright
rAMZN 7500 two days limit 300rightright
hold googl perp 25k 3 days, cap loss at $900rightright
$10k long Apple for a week, 2% limitrightright
short MSTR 6000 for 4 days max loss $350rightright
what if I put 50k in nvidia for 2 days and can take 1,500 lossrightright
HOOD 1,500 dollars 1 day risk $60rightright
long NVDArightright
10k teslarightright
can I hold 30k of nvda through earnings with a 1k stop, 10 daysrightright
buy 100 shares of AAPL for 3 days, I can lose $150rightright
sell short $9k of META perp at 2x, 5 days, risk 400rightright
thinking about a big nvda position for a whilerightright
$12k rtsla three days, worst case matters, 500 limitrightright
swap my 5k into amazon and hold until the 9th, max loss $200rightright

A second test, sealed before the change

Those 24 sentences were fixed after their misses were seen, so they cannot score the language layer again. Before Shunt learned to answer questions, 42 new cases were written and committed with the answer each should get: trades in slang, unclear or contradictory inputs that must be asked about, attempts to push past the limits, follow ups, and ten questions about a trade. The same cases ran on the live site before and after the change, paced under the model's allowance. The cases were not edited between runs.

GroupBeforeAfter
All 4230 of 4241 of 42
Trades13 of 1413 of 14
Unclear, contradictory or past the limits11 of 1212 of 12
Follow ups6 of 66 of 6
Questions about a trade0 of 1010 of 10

Missed after the change: "rTSLA 3k, 2 days, risk 2%" (asked conflict instead). That miss was new: the check for two different loss limits read “risk 2%” as both $2 and 2%. It was fixed after this run and is not counted here. Cases and runner: scripts/lui-sealed.

Orders through Bitget Agent Hub

Shunt predicts what getting in and out will cost: the fee plus how far your size walks through the order book. To test that, each trade below was checked, sized to its loss limit, sent to Bitget Demo through Agent Hub's CLI (bgc --paper-trading), then closed straight away. The fill was compared with the price on the screen just before the order.

Orders placed
118
Round trips
57
Stocks
8
Median cost predicted
15.7 bps
Median cost charged
16.8 bps
Within 5 bps of the call
54 of 57
Charged no more than predicted
24 of 57

Every attempt, not just the good ones. 113 trades were tried and 57 completed a round trip. The rest: 31 on stocks Bitget Demo does not list, 4 no measured history for the stock, 9 Bitget Demo order size cap, 11 Shunt priced no cost for it (book or data unavailable), 1 order lookup failed. The trades were drawn from a fixed random seed, and most came out as “doesn't fit” at the size asked (47 of 57), so most were placed at a smaller, fitted size. The charged cost was higher than the predicted cost in 33 round trips.

One bps is one hundredth of one percent of the trade. 18 bps on a $5,000 trade is $9. Demo fills are simulated matching on Bitget's paper account, not live liquidity, so this tests the fee and book arithmetic, not the real market.

Show all 57 round trips (114 order ids)
Trade askedShunt saidPlacedPredictedChargedOpen orderClose order
short $15,000 HOODUSDT, 10 days, max loss $230fits at $4,18536.72 @ 113.122.3 bps18.1 bps1490759740621737984 filled1490759755134029824 filled
long $5,000 HOODUSDT, 5 days, max loss $130fits at $2,38420.91 @ 113.1720.9 bps18.0 bps1490759787795075072 filled1490759801804050432 filled
long $5,000 COINUSDT, 5 days, max loss $80fits at $1,3517.25 @ 183.6214.7 bps17.7 bps1490759841062735872 filled1490759853716951040 filled
long $2,500 COINUSDT, 5 days, max loss $60fits at $1,0145.44 @ 183.6214.7 bps17.7 bps1490759900357611520 filled1490759931030556672 filled
short $5,000 MSTRUSDT, 5 days, max loss $80fits at $1,1697.12 @ 160.6214.8 bps15.4 bps1490759965092499457 filled1490759978791096320 filled
long $5,000 MSTRUSDT, 5 days, max loss $130fits at $1,89911.57 @ 160.6815.8 bps15.4 bps1490760014824361984 filled1490760028007059456 filled
long $15,000 GOOGLUSDT, 3 days, max loss $380fits at $7,82422.69 @ 342.3916.9 bps14.5 bps1490760056440246273 filled1490760070000431104 filled
long $2,500 GOOGLUSDT, 1 days, max loss $60fits at $2,4177.01 @ 342.3915.8 bps14.5 bps1490760100232974336 filled1490760115441520640 filled
short $15,000 HOODUSDT, 10 days, max loss $230fits at $4,18336.71 @ 113.120.7 bps18.1 bps1490760436158976000 filled1490760450146979840 filled
long $5,000 COINUSDT, 5 days, max loss $130fits at $2,19711.80 @ 183.6215.2 bps17.7 bps1490760480664735744 filled1490760501577535488 filled
long $5,000 MSTRUSDT, 5 days, max loss $80fits at $1,1687.12 @ 160.6812.6 bps16.6 bps1490760546825687040 filled1490760560830468096 filled
long $2,500 GOOGLUSDT, 5 days, max loss $60fits at $2,4207.02 @ 342.3914.6 bps14.5 bps1490760602052087809 filled1490760622130221056 filled
short $15,000 HOODUSDT, 10 days, max loss $230fits at $4,22337.00 @ 113.1119.6 bps15.8 bps1490762282411905024 filled1490762307103772673 filled
long $5,000 HOODUSDT, 5 days, max loss $130fits at $2,38420.88 @ 113.1717.2 bps13.6 bps1490762394378850304 filled1490762432932892672 filled
long $5,000 HOODUSDT, 5 days, max loss $80fits at $1,46512.84 @ 113.1717.2 bps19.3 bps1490762518115012608 filled1490762550901886976 filled
long $2,500 HOODUSDT, 5 days, max loss $60fits at $1,1029.66 @ 113.1715.5 bps22.4 bps1490762605306204160 filled1490762634037186560 filled
short $5,000 HOODUSDT, 5 days, max loss $80fits at $1,45612.76 @ 113.1114.7 bps25.9 bps1490762725837918208 filled1490762794913910784 filled
long $5,000 HOODUSDT, 5 days, max loss $130fits at $2,38520.90 @ 113.1717.7 bps19.3 bps1490762882717470720 filled1490762919388270592 filled
long $15,000 HOODUSDT, 3 days, max loss $380fits at $6,92960.72 @ 113.1725.5 bps16.7 bps1490762997452656640 filled1490763015064539137 filled
long $2,500 HOODUSDT, 1 days, max loss $60fits at $1,0999.63 @ 113.1716.6 bps17.2 bps1490763050586099712 filled1490763067606585344 filled
long $5,000 HOODUSDT, 1 days, max loss $130fits at $2,38620.91 @ 113.1718.3 bps18.0 bps1490763098334056448 filled1490763112615661568 filled
long $5,000 HOODUSDT, 5 days, max loss $130fits at $2,37920.85 @ 113.1717.8 bps17.2 bps1490763192622010368 filled1490763206454824960 filled
short $5,000 COINUSDT, 1 days, max loss $130fits at $2,18911.73 @ 183.5116.6 bps12.9 bps1490763280966635520 filled1490763333902946304 filled
short $5,000 COINUSDT, 10 days, max loss $200fits at $3,35818.01 @ 183.5119.6 bps19.3 bps1490763503554154496 filled1490763541902675968 filled
long $5,000 COINUSDT, 5 days, max loss $80fits at $1,3467.22 @ 183.6217.4 bps18.0 bps1490763635817336832 filled1490763671993208832 filled
short $15,000 NVDAUSDT, 10 days, max loss $230fits at $7,55732.07 @ 234.8113.8 bps17.5 bps1490772953354620929 filled1490772966231134208 filled
long $5,000 NVDAUSDT, 5 days, max loss $130fits at $4,27618.14 @ 234.9413.3 bps17.5 bps1490772994660126720 filled1490773007880572933 filled
long $5,000 NVDAUSDT, 5 days, max loss $80fits at $2,63111.16 @ 234.9413.1 bps17.5 bps1490773037555273728 filled1490773051010600960 filled
long $2,500 NVDAUSDT, 5 days, max loss $60fits at $1,9768.38 @ 234.9412.8 bps17.5 bps1490773080781770752 filled1490773094128046080 filled
short $5,000 NVDAUSDT, 5 days, max loss $80fits at $2,63111.16 @ 234.8113.0 bps17.5 bps1490773122825474048 filled1490773136985444352 filled
long $5,000 NVDAUSDT, 5 days, max loss $130fits at $4,27818.15 @ 234.9413.3 bps17.5 bps1490773166723059712 filled1490773179842842624 filled
long $2,500 NVDAUSDT, 1 days, max loss $60fits at $1,9758.38 @ 234.9412.9 bps17.5 bps1490773240488284160 filled1490773253058613248 filled
long $5,000 NVDAUSDT, 1 days, max loss $130fits at $4,27818.15 @ 234.9413.4 bps17.5 bps1490773282842365952 filled1490773295609827372 filled
long $15,000 NVDAUSDT, 10 days, max loss $600fits at $5,98825.41 @ 234.9413.6 bps17.5 bps1490773324642799616 filled1490773337481564162 filled
long $5,000 METAUSDT, 5 days, max loss $130fits at $3,9025.34 @ 729.4118.0 bps14.4 bps1490773365755367425 filled1490773381785997312 filled
short $5,000 METAUSDT, 1 days, max loss $130fits at $3,9135.35 @ 729.2318.0 bps14.4 bps1490773412450553856 filled1490773425520005120 filled
short $5,000 METAUSDT, 10 days, max loss $200fits at $1,5132.07 @ 729.2317.1 bps14.4 bps1490773478087217152 filled1490773491991334912 filled
long $5,000 METAUSDT, 5 days, max loss $80fits at $2,4013.28 @ 729.4117.7 bps14.4 bps1490773521955442688 filled1490773534609657856 filled
long $5,000 METAUSDT, 5 days, max loss $80fits at $2,4013.28 @ 729.4117.7 bps14.4 bps1490773564192083968 filled1490773583628488704 filled
long $5,000 METAUSDT, 1 days, max loss $130fits at $3,9025.34 @ 729.4118.0 bps14.4 bps1490773624854302721 filled1490773639110742016 filled
long $2,500 METAUSDT, 3 days, max loss $40fits at $1,2011.64 @ 729.4116.8 bps14.4 bps1490773667510374400 filled1490773681150251008 filled
long $10,000 METAUSDT, 5 days, max loss $250fits at $7,50110.27 @ 729.4118.3 bps14.4 bps1490773709306613760 filled1490773724460634112 filled
short $2,500 METAUSDT, 1 days, max loss $60fits at $1,8062.47 @ 729.2317.4 bps14.4 bps1490773755691421696 filled1490773771017408512 filled
long $10,000 AMZNUSDT, 3 days, max loss $150fits at $4,95719.62 @ 25215.7 bps15.9 bps1490773825782435841 filled1490773839254540288 filled
long $2,500 AMZNUSDT, 1 days, max loss $40fits at $1,3265.25 @ 25215.1 bps15.9 bps1490773868736303104 filled1490773882275516416 filled
long $10,000 AMZNUSDT, 10 days, max loss $150fits at $4,95719.62 @ 25215.7 bps15.9 bps1490773913476943872 filled1490773926689001472 filled
long $2,500 AMZNUSDT, 10 days, max loss $100fits at $9053.58 @ 25214.2 bps15.9 bps1490773957043179520 filled1490773973866532864 filled
long $10,000 AMZNUSDT, 1 days, max loss $400fits39.59 @ 25216.8 bps15.5 bps1490774007408381952 filled1490774091994910720 filled
long $10,000 AMZNUSDT, 1 days, max loss $150fits at $4,95219.60 @ 25215.4 bps15.9 bps1490774121191460864 filled1490774135112355840 filled
long $5,000 AMZNUSDT, 5 days, max loss $130fits at $4,30117.02 @ 25215.6 bps16.5 bps1490774211641626624 filled1490774226749509632 filled
short $2,500 AMZNUSDT, 5 days, max loss $100fits at $1,3955.52 @ 251.914.7 bps17.3 bps1490774258231955456 filled1490774272240930816 filled
long $10,000 AMZNUSDT, 3 days, max loss $150fits at $4,94919.59 @ 25215.5 bps15.9 bps1490774305333989376 filled1490774321498836992 filled
long $2,500 AAPLUSDT, 5 days, max loss $60fits at $1,1083.31 @ 334.7312.9 bps16.8 bps1490774491066159105 filled1490774507423944704 filled
long $5,000 AAPLUSDT, 1 days, max loss $130fits14.97 @ 334.7315.7 bps16.8 bps1490774579561779200 filled1490774597865721856 filled
long $5,000 AAPLUSDT, 1 days, max loss $80fits at $4,18612.53 @ 334.7314.3 bps16.8 bps1490774836437733394 filled1490774906956566528 filled
long $5,000 AAPLUSDT, 3 days, max loss $130fits at $3,3069.90 @ 334.7314.0 bps16.8 bps1490775079787057152 filled1490775112544571392 filled
long $5,000 AAPLUSDT, 3 days, max loss $200fits14.97 @ 334.7315.1 bps16.8 bps1490775149970345984 filled1490775172523118593 filled
bgc --paper-trading order --action place --category USDT-FUTURES --symbol HOODUSDT --side sell --posSide short --orderType market --qty 36.72 --clientOid shunt-muucwczf-HOOD-0-open

Bitget Demo (paper trading) via Agent Hub bgc. Demo does not list 31 other stock perps Shunt checks, so those could not be ordered. NVDA, META, AMZN, AAPL and TSLA orders were placed on the same Demo account that another of the builder's projects also trades on; every order here carries a shunt client id so the two can be told apart. The public site never holds an exchange key; these were placed from the builder's machine.