Day Trading Setups
Time-of-Day Volatility Filter
Not every hour of the trading day moves the same amount. Run a batch of simulated sessions, watch the real average range per hour build the heatmap, then drag a trading window over it and see what that actually does to a fixed breakout rule's results.
Run the batch, then drag the window
Click Run 100 Days to simulate a batch of full sessions, each split into 7 real hour-buckets. The heatmap below shows the actual average bar range computed per bucket across every simulated day, not a preset shape. Use the two sliders to choose a start and end hour, the comparison table recomputes live, testing the same fixed breakout rule (buy a break of the prior hour's high) with trades restricted to your window against the same rule run across every hour.
Sample session (real candles)
Average range per hour (real, computed from the batch)
Run the batch to compute the real per-hour ranges.
| Rule scope | Trades | Wins | Win rate | Expectancy/trade |
|---|---|---|---|---|
| Inside window | — | — | — | — |
| All hours | — | — | — | — |
How it works
- Each simulated day is 7 real hourly bars. Open, Hour 2, Hour 3, Midday, Hour 5, Hour 6, and Power Hour, each with its own actual open, high, low, and close.
- The heatmap is a computed average, not a preset curve. Every bucket's bar height is the real mean of high-minus-low across all 100 simulated days for that bucket, recomputed from scratch every time you run the batch.
- The breakout rule is identical in both columns of the table. Buy a break of the prior hour's high, stop at the prior hour's low, exit at the current hour's close. Only which trades get counted changes between the two rows.
- Win rate and expectancy update the instant you move a slider. No new days are simulated, the same logged trades from the batch just get filtered by your window and re-averaged.
Where this breaks
A wide-range hour is not automatically a better hour to trade a breakout in
The heatmap measures how much bars moved, not which direction they resolved once they moved. An hour bucket can show up with a high average range for the same reason a breakout rule struggles there, choppy, two-sided action that expands range without producing a clean directional continuation. The comparison table in this tool sometimes shows the busiest-looking hours delivering a worse expectancy than a quieter one, because range and follow-through are two different things, and this simple heatmap only ever measures the first one directly.