Quick Answer: We measured the high-to-low range of each ISO week and each calendar month for 28 forex pairs from Dukascopy hourly bid candles: weekly over the 52 complete weeks ending September 25, 2026, monthly over the 12 complete months from October 2025 to September 2026. The mean weekly range ran from 64.7 pips on EUR/GBP to 302.9 pips on GBP/JPY; the mean monthly range from 121.3 pips on EUR/GBP to 658.9 on GBP/JPY. Against each pair’s mean daily range over the same days, a week travelled 2.00x to 2.43x as far (median 2.21x) and a month 3.75x to 5.94x (median 4.72x), both close to what the square root of the number of trading days predicts. EUR/USD averaged 135.5 pips a week and 282.0 pips a month. Past ranges describe periods that have already closed, not the next one, and most retail traders lose money trading forex however carefully they measure volatility.
| Pair | Daily | Weekly mean | Weekly median | Weekly ÷ daily | Monthly mean | Monthly median | Monthly ÷ daily | Monthly ÷ weekly |
|---|---|---|---|---|---|---|---|---|
| GBP/JPY | 134.8 | 302.9 | 275.4 | 2.25x | 658.9 | 720.7 | 4.89x | 2.18x |
| CHF/JPY | 127.9 | 291.8 | 270.2 | 2.28x | 661.1 | 623.3 | 5.17x | 2.27x |
| GBP/NZD | 133.3 | 290.6 | 272.3 | 2.18x | 634.6 | 673.2 | 4.76x | 2.18x |
| EUR/NZD | 114.5 | 259.8 | 238.1 | 2.27x | 549.9 | 537.0 | 4.80x | 2.12x |
| GBP/AUD | 114.6 | 250.7 | 240.1 | 2.19x | 548.2 | 488.1 | 4.78x | 2.19x |
| USD/JPY | 104.4 | 249.7 | 220.8 | 2.39x | 545.2 | 507.1 | 5.22x | 2.18x |
| EUR/JPY | 105.4 | 240.1 | 220.8 | 2.28x | 539.7 | 543.5 | 5.12x | 2.25x |
| EUR/AUD | 99.2 | 216.9 | 189.3 | 2.19x | 458.1 | 427.4 | 4.62x | 2.11x |
| AUD/JPY | 91.1 | 210.1 | 205.9 | 2.31x | 451.5 | 453.1 | 4.96x | 2.15x |
| GBP/CAD | 94.2 | 200.2 | 194.2 | 2.12x | 360.3 | 332.4 | 3.82x | 1.80x |
| GBP/USD | 80.7 | 179.5 | 170.1 | 2.22x | 355.5 | 349.0 | 4.41x | 1.98x |
| CAD/JPY | 75.6 | 177.3 | 169.0 | 2.34x | 383.0 | 386.8 | 5.06x | 2.16x |
| NZD/JPY | 76.9 | 175.0 | 160.9 | 2.28x | 385.9 | 376.1 | 5.02x | 2.20x |
| EUR/CAD | 69.2 | 149.9 | 134.8 | 2.17x | 260.4 | 251.8 | 3.77x | 1.74x |
| USD/CAD | 57.4 | 139.4 | 129.7 | 2.43x | 341.0 | 360.0 | 5.94x | 2.45x |
| EUR/USD | 60.7 | 135.5 | 122.0 | 2.23x | 282.0 | 238.7 | 4.64x | 2.08x |
| AUD/NZD | 55.7 | 134.1 | 120.9 | 2.41x | 260.4 | 248.5 | 4.67x | 1.94x |
| USD/CHF | 53.5 | 120.6 | 110.7 | 2.25x | 256.4 | 233.6 | 4.79x | 2.13x |
| AUD/CAD | 58.9 | 120.2 | 108.2 | 2.04x | 231.7 | 202.0 | 3.93x | 1.93x |
| NZD/CAD | 54.0 | 118.9 | 108.7 | 2.20x | 224.2 | 221.8 | 4.15x | 1.88x |
| AUD/USD | 53.8 | 116.1 | 107.5 | 2.16x | 261.7 | 237.0 | 4.86x | 2.25x |
| GBP/CHF | 53.9 | 112.9 | 111.9 | 2.10x | 237.8 | 220.2 | 4.41x | 2.11x |
| NZD/USD | 48.7 | 111.5 | 108.6 | 2.29x | 232.2 | 208.5 | 4.77x | 2.08x |
| AUD/CHF | 40.6 | 85.2 | 79.8 | 2.10x | 156.3 | 153.1 | 3.85x | 1.83x |
| EUR/CHF | 34.1 | 72.9 | 69.6 | 2.14x | 154.7 | 157.9 | 4.54x | 2.12x |
| NZD/CHF | 35.2 | 70.3 | 67.9 | 2.00x | 132.0 | 126.1 | 3.75x | 1.88x |
| CAD/CHF | 34.2 | 69.6 | 65.3 | 2.03x | 136.3 | 126.6 | 3.99x | 1.96x |
| EUR/GBP | 29.7 | 64.7 | 63.5 | 2.17x | 121.3 | 117.7 | 4.08x | 1.88x |
As of September 30, 2026. Source: Dukascopy hourly bid candles. All figures in pips. Qualifying UTC days (weekday, at least 12 hourly bid bars, non-zero daily high-low range - the identical rule scripts/adr-table.py applies) are grouped into ISO weeks (Monday-Friday) and calendar months. The weekly range is the week's highest high minus its lowest low divided by pip size (0.01 for JPY-quoted pairs, 0.0001 for the rest); a week counts only if it carries at least 4 qualifying days. The monthly range is the month's highest high minus its lowest low on the same basis; a month counts only if it carries at least 15 qualifying days. The week and the month containing the last session in the window are incomplete and dropped. Weekly figures are the mean and median over the last 52 complete weeks, monthly figures over the last 12 complete months. The daily figure is the mean daily high-low range over exactly the days the weekly window covers, so the ratios compare like with like. These monthly figures are the whole month's travel, not the mean daily range inside the month that the average daily range table reports per month. Past ranges describe what has already happened and are not a forecast of the next week or month.
Sizing a swing stop or a grid that stays open for weeks? The weekly and monthly columns are the measured answer to how far the pair travels before it comes back. Our free GridMaster EA takes its spacing in pips and its maximum level count as inputs; multiplying the two should land somewhere inside the monthly column, not the daily one. Download all 7 free MT4 & MT5 EAs →
How This Table Is Computed
The bars are the same Dukascopy hourly bid candle cache behind the average daily range table, the hourly table, the session table and the correlation table, and the day filter is the same too: a UTC calendar day counts only if it is a weekday carrying at least 12 hourly bars and a non-zero high-low range, which removes weekends, the Sunday-evening opening hours and near-closed holidays.
Those days are then grouped into ISO weeks (Monday to Friday) and calendar months. The weekly range is the week’s highest high minus its lowest low, in pips, and a week counts only if it carries at least four qualifying days, so a holiday-shortened week does not drag the average down. The monthly range is the month’s highest high minus its lowest low, and a month counts only if it carries at least 15 qualifying days. The week and the month that contain the last session in the file are dropped unless that session closed them, so a mid-week refresh never publishes a three-day week as if it were a full one. The daily column is the mean daily range over exactly the days the weekly window covers, which is why it can differ by a pip or two from the 250-session figure on the daily table: same bars, slightly different window.
One distinction matters more than any other on this page. The monthly figures in the daily table’s month-by-month column are the mean daily range inside each month, a measure of how busy an average day was. The monthly figures here are the whole month’s travel from its high to its low, a measure of how far the pair went. GBP/JPY in September 2026 is the clearest illustration: its daily table shows an average day of 164.3 pips, while the month-level range was 995.1 pips, the widest month for that pair in the window.
Weekly and Monthly Ranges Follow the Square Root of Time
The ratio columns are the part of the table that generalises. A five-day week travelled 2.00x to 2.43x as far as the average day across the 28 pairs, with a median of 2.21x; a month of roughly 22 trading days travelled 3.75x to 5.94x, median 4.72x; and a month ran 1.74x to 2.45x a week, median 2.12x. The square roots of 5, 22 and 4.4 are 2.24, 4.69 and 2.10. The medians sit almost on top of them.
That is the signature of price that spends much of its time rotating rather than trending: if every day’s move simply added to the last, a week would be five times a day, not 2.2 times. The pairs at the top of each ratio column are the ones that trended most within the period relative to their day-to-day noise, and the pairs at the bottom rotated most. USD/CAD sits at the top of both columns, at 2.43x weekly and 5.94x monthly against a daily range of only 57.4 pips, which says its moves over the last year carried further per unit of daily noise than any other pair in the set. NZD/CHF sits at the bottom of both, at 2.00x and 3.75x, and EUR/CAD at 3.77x monthly: narrow pairs whose weeks and months largely retraced their own days.
For sizing, the practical reading is this. A stop or a grid that has to survive a week, rather than a day, needs about 2.2 times the daily range of room on a typical pair, not five times; one that has to survive a month needs about 4.7 times. A pair above the median ratio deserves more than that, a pair below it less. The rule-based grid blueprint sizes spacing from the daily range; the number of levels the grid is allowed to open is what the weekly and monthly columns should size, because the full ladder is what a trending week or month will fill.
Mean Against Median: Which Pairs Have Fat Weeks
The weekly mean sits above the weekly median on every pair, by between 1% on GBP/CHF and 15% on EUR/AUD, which says that a minority of outsized weeks is doing part of the work in every average. The gap is a useful second column to read: where it is wide, as on EUR/AUD, the typical week is noticeably calmer than the average week and a stop sized to the mean is paying for weeks that rarely happen; where it is narrow, as on GBP/CHF, the mean describes an ordinary week well enough to use on its own.
The extremes behind each mean show how wide the distribution is. EUR/USD’s narrowest and widest weeks of the year, 68.4 pips in week 9 of 2026 and 265.8 pips in week 10, were consecutive, a nearly fourfold change in travel with no change to the pair. USD/JPY ranged from 76.4 pips in week 21 to 674.8 in week 31, almost nine times. GBP/JPY ran from 118.3 pips in the first week of January to 707.6 in week 36. Hover a weekly or monthly cell in the table to see that pair’s widest and narrowest period and the number of periods behind the mean.
The Last Twelve Months, Pair by Pair
This grid shows each calendar month’s travel for every pair, shaded against that pair’s own narrowest and widest month. Twelve months is one year of data, so it describes what happened, not a recurring pattern.
| Pair | Oct 25 | Nov 25 | Dec 25 | Jan 26 | Feb 26 | Mar 26 | Apr 26 | May 26 | Jun 26 | Jul 26 | Aug 26 | Sep 26 | Mean |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| GBP/JPY | 783 | 814 | 640 | 524 | 777 | 412 | 673 | 393 | 336 | 769 | 791 | 995 | 659 |
| CHF/JPY | 873 | 662 | 617 | 542 | 601 | 628 | 618 | 520 | 518 | 694 | 644 | 1016 | 661 |
| GBP/NZD | 717 | 624 | 465 | 826 | 414 | 747 | 431 | 664 | 984 | 683 | 370 | 689 | 635 |
| EUR/NZD | 482 | 558 | 366 | 828 | 356 | 694 | 528 | 497 | 761 | 706 | 277 | 546 | 550 |
| GBP/AUD | 877 | 516 | 291 | 682 | 914 | 707 | 461 | 412 | 563 | 370 | 403 | 383 | 548 |
| USD/JPY | 786 | 508 | 344 | 736 | 507 | 426 | 517 | 462 | 331 | 679 | 498 | 750 | 545 |
| EUR/JPY | 656 | 630 | 483 | 508 | 521 | 282 | 566 | 394 | 315 | 613 | 666 | 842 | 540 |
| EUR/AUD | 591 | 414 | 326 | 705 | 587 | 718 | 509 | 276 | 440 | 324 | 340 | 268 | 458 |
| AUD/JPY | 496 | 366 | 370 | 444 | 462 | 518 | 531 | 280 | 367 | 431 | 572 | 579 | 452 |
| GBP/CAD | 593 | 298 | 321 | 383 | 412 | 495 | 334 | 376 | 295 | 331 | 212 | 275 | 360 |
| GBP/USD | 431 | 259 | 355 | 507 | 299 | 324 | 430 | 356 | 343 | 339 | 258 | 366 | 356 |
| CAD/JPY | 519 | 409 | 404 | 370 | 344 | 336 | 366 | 198 | 215 | 434 | 475 | 526 | 383 |
| NZD/JPY | 377 | 377 | 252 | 408 | 296 | 351 | 376 | 370 | 436 | 387 | 354 | 648 | 386 |
| EUR/CAD | 328 | 196 | 258 | 329 | 118 | 489 | 326 | 246 | 226 | 265 | 209 | 136 | 260 |
| USD/CAD | 192 | 202 | 372 | 447 | 221 | 441 | 372 | 320 | 451 | 248 | 348 | 478 | 341 |
| EUR/USD | 257 | 187 | 219 | 498 | 187 | 385 | 343 | 220 | 340 | 194 | 211 | 342 | 282 |
| AUD/NZD | 168 | 244 | 200 | 168 | 372 | 304 | 216 | 298 | 253 | 290 | 223 | 388 | 260 |
| USD/CHF | 203 | 246 | 224 | 436 | 188 | 364 | 243 | 147 | 321 | 197 | 197 | 310 | 256 |
| AUD/CAD | 182 | 149 | 170 | 432 | 305 | 299 | 316 | 235 | 206 | 138 | 198 | 151 | 232 |
| NZD/CAD | 161 | 187 | 193 | 348 | 138 | 260 | 226 | 293 | 267 | 218 | 169 | 231 | 224 |
| AUD/USD | 189 | 159 | 191 | 431 | 250 | 354 | 362 | 198 | 325 | 162 | 224 | 295 | 262 |
| GBP/CHF | 279 | 312 | 178 | 284 | 333 | 324 | 157 | 168 | 218 | 222 | 176 | 201 | 238 |
| NZD/USD | 162 | 164 | 142 | 381 | 148 | 297 | 249 | 179 | 355 | 238 | 167 | 303 | 232 |
| AUD/CHF | 227 | 156 | 129 | 147 | 176 | 186 | 193 | 96 | 123 | 191 | 150 | 102 | 156 |
| EUR/CHF | 163 | 171 | 123 | 206 | 157 | 286 | 116 | 82 | 159 | 172 | 109 | 113 | 155 |
| NZD/CHF | 156 | 150 | 123 | 123 | 122 | 109 | 129 | 112 | 136 | 200 | 92 | 132 | 132 |
| CAD/CHF | 162 | 150 | 125 | 214 | 103 | 168 | 128 | 111 | 94 | 176 | 125 | 82 | 136 |
| EUR/GBP | 164 | 120 | 99 | 101 | 177 | 176 | 126 | 116 | 79 | 163 | 56 | 78 | 121 |
As of September 30, 2026. Source: Dukascopy hourly bid candles. All figures in pips. Qualifying UTC days (weekday, at least 12 hourly bid bars, non-zero daily high-low range - the identical rule scripts/adr-table.py applies) are grouped into ISO weeks (Monday-Friday) and calendar months. The weekly range is the week's highest high minus its lowest low divided by pip size (0.01 for JPY-quoted pairs, 0.0001 for the rest); a week counts only if it carries at least 4 qualifying days. The monthly range is the month's highest high minus its lowest low on the same basis; a month counts only if it carries at least 15 qualifying days. The week and the month containing the last session in the window are incomplete and dropped. Weekly figures are the mean and median over the last 52 complete weeks, monthly figures over the last 12 complete months. The daily figure is the mean daily high-low range over exactly the days the weekly window covers, so the ratios compare like with like. These monthly figures are the whole month's travel, not the mean daily range inside the month that the average daily range table reports per month. Past ranges describe what has already happened and are not a forecast of the next week or month.
Two months dominate the right-hand end of most rows. January 2026 was the widest month for nine of the 28 pairs and September 2026 for eight; between them they account for well over half the set, which is the market-wide signature of a dollar move rather than anything specific to a pair. August 2026 was the narrowest month for six pairs and May 2026 for five. Over 52 weeks the widest week fell in week 31 of 2026 for four pairs and in week 42 of 2025 for another four, the same clustering at the weekly scale.
A monthly number that stands out in its row is worth a look at that pair’s own page before it is used for anything. USD/CAD’s widest month, September 2026 at 477.5 pips, was the most recent one in the window, so its monthly mean of 341.0 pips carries a fresher regime than most; EUR/USD’s widest, January 2026 at 497.9 pips, is eight months old and its recent months have run far below it. The per-pair range pages carry the compression reading that tells you which case you are in.
Using the Table for Swing Stops and Multi-Week Grids
A swing trade held across a week is exposed to the weekly range, not the daily one, and the mistake the daily table invites is to size a multi-day stop from a one-day number. The weekly median is the better anchor for a stop that has to survive ordinary weekly noise, and the weekly mean plus the gap between mean and median is the allowance for the fat week that eventually arrives. The risk management guide turns a stop distance in pips into a position size; the pip value table converts the pips on a yen cross or a CHF cross into account currency before that step.
For a grid, the question the monthly column answers is how many levels can fill. Spacing times maximum levels is the ladder’s total height, and if that height sits below the pair’s typical monthly travel the ladder will be fully open, with every level in drawdown, in an ordinary month, which is the failure why grid EAs blow up describes as running out of ladder. Dividing the monthly mean by the spacing gives the number of levels a typical month would open, and the widest month in the hover text gives the number the worst month of the year would have opened. A grid whose maximum level count sits between those two is sized to the data rather than to hope. Test the resulting settings on a demo for several weeks before funding them: Open a free XM account and run the ladder against the pair’s current regime first.
Refresh Schedule and What Can Go Stale
The data file behind both tables is rebuilt after each month closes, on the same run as the daily, hourly, session and correlation tables, and the caption of each table names the last complete week and month it covers. The ratios quoted in the prose above move slowly and are re-read at every refresh; the named widest and narrowest periods, and the count of pairs whose widest month fell in January or September 2026, are the figures most likely to have changed if you are reading this well after the as-of date.
Related Tables and Guides
- Forex Average Daily Range Table — the one-day figure these ratios are built on, with each pair’s 20- and 250-session reading
- Forex Pair Correlation Table — which pairs travel together, for sizing more than one ladder at once
- Forex Pip Value Table — what a week’s or a month’s pips are worth per lot
- Grid Trading Strategy — the spacing formula, and the level count the monthly column should size
- Swing Trading with Forex EAs — the multi-day holding rules that live inside the weekly range
This guide is for educational purposes only and is not investment advice. The ranges above describe weeks and months that have already closed; they do not indicate how far any pair will travel next. Forex trading carries substantial risk and most retail traders lose money.