▲ Work in progress. This site is built and researched in the open: pages, numbers and findings may change or be wrong, and the record has gaps. Not advice. More
The Lab
Ideas traders use, put to the record
← the Lab · signals tested · write-up
#50 The touch map in calm and wild markets: does a table for each help? No reliable gain
Past prices; no real orders were placed.
Last checked: 17 October 2026.
Where the idea comes from
- Markets that switch between moods. James Hamilton (1989) modelled an economy that flips between hidden states, such as growth and recession, each with its own behaviour. The same idea is used for markets that switch between low and high volatility.
- Hidden Markov models, the maths for reading a hidden state from what can be seen, go back to Leonard Baum and Ted Petrie (1966). Lawrence Rabiner's tutorial (1989) is the standard account of the hour-by-hour update used here.
- The volatility of the moment, with the newest hours counting most, is the exponentially weighted average from J.P. Morgan and Reuters' RiskMetrics (1996).
- The score for forecasts given as odds is Glenn Brier's (1950).
- Our own pages "First passage: the chance a price touches a level" and "Models for reading a market, and what they showed on real prices" give the background.
The question
Our touch map is a chart tool. Around today's price it draws lines that past prices reached, up or down, within an hour, four hours, a day or a week. Each line carries the share of past starts that reached it: 90%, 75%, 50%, 25%, 10% or 5%.
- The 50% line is one the price reaches about half the time, on that side. It doesn't mean the price stays inside both lines.
- The distances are counted in typical moves: the volatility of the moment times the square root of the hours. So the lines widen when the market swings a lot and narrow when it swings little.
Today the map uses one table for every market. Would its odds be more accurate with a separate table for calm and wild markets?
How we tested
- Prices: Bybit's hourly futures prices for Bitcoin, Ether and Solana, October 2022 to October 2026, the same as the map's own. A start every two hours; about 8,700 starts judged per coin and per wait.
- Fit on one half, judge on the other. Every table was built from the first two years and judged on the last two. Then the halves were swapped, as a second look.
- Three versions:
- (a) today's single table;
- (b) a table for each of three moods, read from how today's volatility ranks against the last 90 days: calm at the 20th percentile or under, wild at the 80th or over, normal between, as the map's own dashboard shows it;
- (c) a table for each of two states read by our hidden Markov model (the one on our models page), fitted on the first half only: a low-volatility state and a high-volatility state. Each hour's state was read from the hours up to then, never later ones.
- Every version was asked about the same lines, the six of today's table: at each start, wait and side, did the price reach it? Each version gave its own odds for each line.
- Set in advance, the bar: a mood version wins only if it scores better than (a) on all three coins, at both the day and the week, and each gain is clear of luck. "Clear of luck" means outside a 95% band from re-drawing the judged weeks at random, 1,000 times. If both mood versions won, the simpler one would be chosen unless the other also beat it clearly.
The maths, step by step
1. Reading the mood. Today's volatility is above 1,800 of the last 2,160 hourly readings (90 days). 1,800 ÷ 2,160 = 83rd percentile: at 80 or over, so wild.
2. A table for each mood. Bitcoin, a week ahead, from the first two years: the single table's 10% line is 1.87 typical moves away. The same line was reached by
- 2.8% of starts in wild hours;
- 11.3% in normal hours;
- 14.4% in calm hours.
After a wild stretch, the next week's moves came out smaller in typical moves. A likely reason: volatility drifts back toward its usual level, so a wild reading overstates the week ahead.
3. The score (Brier). For each line, square the gap between the odds and what happened: 1 if reached, 0 if not. Lower is better.
- The line isn't reached. The single table said 10%: (0.10 − 0)² = 0.01. The wild table said 2.8%: 0.028² = 0.0008.
- The line is reached. The single table: (0.10 − 1)² = 0.81. The wild table: (0.028 − 1)² = 0.94.
- So sharper odds win when they're right and lose when they're wrong. The score is the average over every line, start and side.
4. Clear of luck? Bitcoin, a week ahead: the score fell from 0.1352 to 0.1341 with the three-mood table, 0.8% lower. The band of the gain ran from +0.0001 to +0.0021, all above zero: clear of luck. A day ahead it fell from 0.1400 to 0.1398, and the band ran from −0.0001 to +0.0005. That includes zero, so it could be luck.
What we found
1. No. Neither mood version cleared the bar, in either look.
2. The three moods from the volatility rank helped at a week only.
- A week ahead, the score was lower on all three coins, clear of luck: Bitcoin by 0.8%, Ether by 1.3%, Solana by 0.7%.
- A day ahead, the gain was within luck on all three. An hour and four hours ahead, no gain, or a slight loss.
- In the swapped look, Solana's week was within luck too.
3. The hidden Markov model helped at an hour and four hours, and faded by a day.
- An hour ahead, the score was lower on every coin in both looks, by 0.7% to 2.4%; four hours ahead, by 0.3% to 1.1%.
- A day ahead, clear of luck on 1 of 3 coins in the first look (Ether), and 2 of 3 in the swapped one.
- A week ahead, clear of luck only on Ether in the swapped look.
4. The single table is already honest. On the judged half, every line was reached within 3 points of its label, at every wait, on every coin. The mood tables add sharpness, not honesty.
How the hours split: calm 21% to 28%, normal 55% to 58%, wild 18% to 23% by the rank; the high state 13% to 23% by the model.
What it means
- The touch map keeps its one table.
- Mood does carry some information, but little: a 1% to 2% better score, at opposite ends for the two readings. The model's state helps at an hour, the volatility rank at a week.
- Mixing the two (the model for short waits, the rank for long ones) was not a version we set in advance. Picking it after seeing this would need prices none of it has seen.
Limits
- Three coins that tend to move together, over one four-year span.
- The model was fitted once per half, not refitted each day as our live reading is.
- The lines are up and down pooled: a map of reach, not of direction.
Update, 18 October 2026: a chart
Finding 4 as a picture: for today's single table, the chance each line gives against how often it was reached, on the half of the data it never saw. Each wait's line is the average of the three coins.
Every line sits on the diagonal: on every coin and wait the map was within 3 points of its label, on the half of the data it never saw.
Update, 21 October 2026: plain words
Added after this page was published. The text above is left as it was, except the explanations this lists.
- Now explained in plain words, with a small example, where it first appears: Pine.
Credits
- James D. Hamilton, "A New Approach to the Economic Analysis of Nonstationary Time Series and the Business Cycle", Econometrica, 1989: regime switching.
- Leonard E. Baum and Ted Petrie, "Statistical Inference for Probabilistic Functions of Finite State Markov Chains", Annals of Mathematical Statistics, 1966: the hidden Markov model.
- Lawrence R. Rabiner, "A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition", Proceedings of the IEEE, 1989: the hour-by-hour update.
- J.P. Morgan and Reuters, RiskMetrics — Technical Document, 1996: the exponentially weighted volatility.
- Glenn W. Brier, "Verification of Forecasts Expressed in Terms of Probability", Monthly Weather Review, 1950: the score.
- Bradley Efron, "Bootstrap Methods: Another Look at the Jackknife", Annals of Statistics, 1979: re-drawing the data to measure luck. Edward Carlstein (1986) and Hans Künsch (1989), also in the Annals of Statistics, extended it to blocks of a series; our week blocks follow Carlstein's form, side by side and not overlapping.
- Robert F. Engle, "Autoregressive Conditional Heteroscedasticity with Estimates of the Variance of United Kingdom Inflation", Econometrica, 1982: volatility that clusters and settles back. Reading step 2's pattern this way is ours, and a likely reason, not a tested one.
- The percentile rank is the standard one, as TradingView's Pine Script computes it. The 20 and 80 cut-offs are our dashboard's.
- Pine (Pine Script) is TradingView's own language for chart indicators. An indicator's Pine source is its code, which anyone can read on TradingView. For example,
ta.sma(close, 20)is Pine for the average of the last 20 closes.
- Pine (Pine Script) is TradingView's own language for chart indicators. An indicator's Pine source is its code, which anyone can read on TradingView. For example,
- The touch map, the mood tables and this test are our own.
- Data: Bybit's public candles.
- PerpGremlin and Claude, The touch map in calm and wild markets: does a table for each help?, TerminalGremlin, 2026: the tests, the code and the words.
← Elliott wavesThe volume clock →
Educational research from public market data; any trading discussed is paper, never real. Nothing here is advice. The full notice.