Hour-of-Day Volatility Profile

OVERVIEW
This indicator measures how far price typically moves in each clock hour of the day, in the time zone you choose, and shows the result as a ranked table on the chart. It answers practical questions such as "which hours usually move the most on this symbol?", "is the current hour unusually quiet or unusually busy?" and "how big a range is normal at this time of day?". It works on any symbol with intraday data, including forex, gold, indices and other CFDs.
WHAT MAKES IT DIFFERENT
- It profiles volatility by clock hour rather than by bar, so the same table is produced on 1, 5, 15, 30 or 60 minute charts.
- Each hour keeps its own rolling window of the last N completed days, so old market conditions drop out gradually.
- The current hour's developing range is compared with the typical range for that same hour, not with an overall average that mixes quiet and busy times of day.
- Averages only include hours that had already finished on each bar, so values on historical bars are not revised later.
HOW IT WORKS
- Chart bars are grouped into clock hours using the selected time zone.
- When an hour finishes, its range is recorded: the highest high minus the lowest low inside that hour, or, if you choose True range, the same measure extended to include any gap from the previous hour's close.
- Each of the 24 hours keeps the most recent N samples (N = Samples per hour). The table shows the average of those samples, a 10-block profile bar scaled to the most active hour, the average as a percentage of the mean across all hours, and the number of samples used.
- Hours that contain fewer chart bars than a full hour (for example when a market opens or closes mid-hour) can be ignored, so partial hours do not drag the averages down.
- Ranges can be shown in price units or as a percentage of price. Percentage mode keeps hours comparable when the price level has changed a lot during the lookback.
HOW TO USE
1. Open an intraday chart whose timeframe divides an hour evenly (1, 5, 15, 30 or 60 minutes) and set the time zone you think in.
2. Let the script load enough history. Each hour needs the minimum number of samples before it is shown.
3. Read the table. Warmer colors and longer bars mark the hours that have usually moved the most. The "Now" row shows how much range the current hour has covered so far compared with its typical range. The last row lists the three most active hours.
4. Some ways traders use this information: choosing which hours to focus on, avoiding hours that are usually too quiet for their approach, sizing stops and targets with the typical range of the hour in mind, or noticing when an hour is moving far more than usual.
5. Optionally shade bars that fall in historically active hours, and set the "Hour range above typical" alert to be notified when the current hour reaches a chosen multiple of its typical range.
INPUTS
Measurement
- Time zone: Exchange (the symbol's own time zone) or one of the listed time zones.
- Samples per hour (days), Range measure (High - Low or True range), Units (Price or % of price).
- Ignore incomplete hours, and the minimum samples needed before an hour is used.
Table
- Show table, position, text size, hide hours without enough samples, and the quiet, active and current-hour colors.
Shading & alerts
- Shade bars in active hours, the active-hour threshold (multiple of the mean of all hours) and the shade color.
- Alert multiple for the current hour's range versus its typical range.
ALERTS
- "Hour range above typical" triggers when the range traded so far in the current hour reaches the alert multiple of that hour's typical range. Because it uses the developing range, it can trigger before the bar closes, depending on the alert frequency you choose.
LIMITATIONS
- The profile describes how price has moved in the past. It does not predict how far price will move in any future hour, and unusual events can make any hour much more or less active than its average.
- Results depend on the symbol's data feed and session times, so different brokers' symbols can produce slightly different profiles.
- On a 60-minute chart in a time zone with a 30-minute offset (such as Asia/Kolkata), each row covers the 1-hour bar that opens in that hour, for example 05:30 to 06:30. Use a 30-minute or lower chart for exact clock hours.
- Daylight saving changes shift market sessions against fixed time zones such as UTC, so the busiest hours can move by one hour for part of the year.
- The amount of history available on your chart limits how many samples each hour can collect.
- Spread is not included in the ranges.
This script is for educational and informational purposes only and is not financial advice. Trading CFDs and forex involves significant risk of loss.
This indicator measures how far price typically moves in each clock hour of the day, in the time zone you choose, and shows the result as a ranked table on the chart. It answers practical questions such as "which hours usually move the most on this symbol?", "is the current hour unusually quiet or unusually busy?" and "how big a range is normal at this time of day?". It works on any symbol with intraday data, including forex, gold, indices and other CFDs.
WHAT MAKES IT DIFFERENT
- It profiles volatility by clock hour rather than by bar, so the same table is produced on 1, 5, 15, 30 or 60 minute charts.
- Each hour keeps its own rolling window of the last N completed days, so old market conditions drop out gradually.
- The current hour's developing range is compared with the typical range for that same hour, not with an overall average that mixes quiet and busy times of day.
- Averages only include hours that had already finished on each bar, so values on historical bars are not revised later.
HOW IT WORKS
- Chart bars are grouped into clock hours using the selected time zone.
- When an hour finishes, its range is recorded: the highest high minus the lowest low inside that hour, or, if you choose True range, the same measure extended to include any gap from the previous hour's close.
- Each of the 24 hours keeps the most recent N samples (N = Samples per hour). The table shows the average of those samples, a 10-block profile bar scaled to the most active hour, the average as a percentage of the mean across all hours, and the number of samples used.
- Hours that contain fewer chart bars than a full hour (for example when a market opens or closes mid-hour) can be ignored, so partial hours do not drag the averages down.
- Ranges can be shown in price units or as a percentage of price. Percentage mode keeps hours comparable when the price level has changed a lot during the lookback.
HOW TO USE
1. Open an intraday chart whose timeframe divides an hour evenly (1, 5, 15, 30 or 60 minutes) and set the time zone you think in.
2. Let the script load enough history. Each hour needs the minimum number of samples before it is shown.
3. Read the table. Warmer colors and longer bars mark the hours that have usually moved the most. The "Now" row shows how much range the current hour has covered so far compared with its typical range. The last row lists the three most active hours.
4. Some ways traders use this information: choosing which hours to focus on, avoiding hours that are usually too quiet for their approach, sizing stops and targets with the typical range of the hour in mind, or noticing when an hour is moving far more than usual.
5. Optionally shade bars that fall in historically active hours, and set the "Hour range above typical" alert to be notified when the current hour reaches a chosen multiple of its typical range.
INPUTS
Measurement
- Time zone: Exchange (the symbol's own time zone) or one of the listed time zones.
- Samples per hour (days), Range measure (High - Low or True range), Units (Price or % of price).
- Ignore incomplete hours, and the minimum samples needed before an hour is used.
Table
- Show table, position, text size, hide hours without enough samples, and the quiet, active and current-hour colors.
Shading & alerts
- Shade bars in active hours, the active-hour threshold (multiple of the mean of all hours) and the shade color.
- Alert multiple for the current hour's range versus its typical range.
ALERTS
- "Hour range above typical" triggers when the range traded so far in the current hour reaches the alert multiple of that hour's typical range. Because it uses the developing range, it can trigger before the bar closes, depending on the alert frequency you choose.
LIMITATIONS
- The profile describes how price has moved in the past. It does not predict how far price will move in any future hour, and unusual events can make any hour much more or less active than its average.
- Results depend on the symbol's data feed and session times, so different brokers' symbols can produce slightly different profiles.
- On a 60-minute chart in a time zone with a 30-minute offset (such as Asia/Kolkata), each row covers the 1-hour bar that opens in that hour, for example 05:30 to 06:30. Use a 30-minute or lower chart for exact clock hours.
- Daylight saving changes shift market sessions against fixed time zones such as UTC, so the busiest hours can move by one hour for part of the year.
- The amount of history available on your chart limits how many samples each hour can collect.
- Spread is not included in the ranges.
This script is for educational and informational purposes only and is not financial advice. Trading CFDs and forex involves significant risk of loss.
면책사항
해당 정보와 게시물은 금융, 투자, 트레이딩 또는 기타 유형의 조언이나 권장 사항으로 간주되지 않으며, 트레이딩뷰에서 제공하거나 보증하는 것이 아닙니다. 자세한 내용은 이용 약관을 참조하세요.
면책사항
해당 정보와 게시물은 금융, 투자, 트레이딩 또는 기타 유형의 조언이나 권장 사항으로 간주되지 않으며, 트레이딩뷰에서 제공하거나 보증하는 것이 아닙니다. 자세한 내용은 이용 약관을 참조하세요.