FX Volatility Intelligence
FX Vol Relative Value Screener
All G10 pairs ranked cheap, fair, or rich — current vol vs its own 1-year percentile, plus carry-to-vol.
G10 Realized Vol — Relative Value Signals
Ranked by 20D vol percentile vs 1Y history. Cheap = below 30th pctile. Rich = above 70th.
| Pair | 20D RVol | 60D RVol | 252D RVol | 20D Pctile (vs 1Y) | Signal | Carry/Vol |
|---|---|---|---|---|---|---|
| USDIDR | 8.06% | 7.91% | 7.59% | 78th | Rich | — |
| EURGBP | 3.86% | 3.43% | 3.56% | 73th | Rich | -0.401 |
| GBPCAD | 5.82% | 5.34% | 5.52% | 70th | Rich | +0.251 |
| USDZAR | 12.19% | 11.72% | 11.66% | 67th | Fair | — |
| USDINR | 6.45% | 7.34% | 6.69% | 64th | Fair | — |
| AUDNZD | 4.54% | 5.17% | 4.53% | 64th | Fair | +0.392 |
| USDMXN | 6.93% | 7.25% | 8.09% | 51th | Fair | — |
| USDNOK | 7.97% | 8.65% | 8.56% | 50th | Fair | -0.095 |
| NZDCAD | 6.08% | 7.11% | 6.86% | 46th | Fair | +0.067 |
| GBPUSD | 6.24% | 6.20% | 6.69% | 44th | Fair | -0.013 |
| AUDCAD | 5.24% | 6.13% | 6.58% | 42th | Fair | +0.418 |
| USDHUF | 9.10% | 9.93% | 11.41% | 37th | Fair | — |
| GBPJPY | 5.55% | 5.42% | 6.28% | 36th | Fair | +0.443 |
| USDKRW | 7.91% | 10.55% | 9.65% | 34th | Fair | — |
| GBPNZD | 4.85% | 6.20% | 5.53% | 33th | Fair | +0.217 |
| USDCZK | 5.41% | 5.47% | 7.00% | 33th | Fair | — |
| EURCHF | 3.10% | 3.03% | 3.64% | 32th | Fair | +0.719 |
| USDBRL | 9.23% | 11.85% | 11.48% | 30th | Cheap | — |
| GBPAUD | 4.67% | 5.25% | 5.76% | 29th | Cheap | -0.156 |
| EURNZD | 4.92% | 5.77% | 5.84% | 27th | Cheap | -0.101 |
| USDSEK | 7.15% | 8.22% | 8.95% | 27th | Cheap | +0.260 |
| NZDUSD | 6.98% | 8.36% | 8.74% | 25th | Cheap | -0.162 |
| USDPLN | 5.80% | 6.38% | 7.77% | 24th | Cheap | — |
| CADJPY | 4.77% | 4.42% | 6.80% | 19th | Cheap | +0.209 |
| USDCAD | 3.36% | 3.36% | 4.18% | 19th | Cheap | +0.458 |
| CADCHF | 4.65% | 4.95% | 5.47% | 18th | Cheap | +0.498 |
| USDCHF | 5.79% | 5.80% | 7.05% | 18th | Cheap | +0.666 |
| USDJPY | 4.45% | 3.55% | 7.33% | 18th | Cheap | +0.570 |
| GBPCHF | 3.53% | 3.95% | 4.87% | 15th | Cheap | +1.070 |
| EURJPY | 4.12% | 4.08% | 5.67% | 13th | Cheap | +0.221 |
| AUDUSD | 5.55% | 7.08% | 8.38% | 12th | Cheap | +0.117 |
| NZDCHF | 4.80% | 5.63% | 6.69% | 12th | Cheap | +0.568 |
| AUDJPY | 5.76% | 6.60% | 8.34% | 12th | Cheap | +0.553 |
| CHFJPY | 4.77% | 4.81% | 6.27% | 12th | Cheap | -0.277 |
| USDCNY | 1.45% | 1.81% | 2.69% | 12th | Cheap | — |
| NZDJPY | 6.43% | 7.51% | 8.15% | 12th | Cheap | +0.219 |
| EURUSD | 3.71% | 4.37% | 5.80% | 10th | Cheap | -0.438 |
| EURCAD | 3.42% | 3.73% | 4.70% | 8th | Cheap | -0.025 |
| USDTRY | 0.92% | 1.41% | 1.47% | 8th | Cheap | — |
| EURAUD | 3.28% | 4.55% | 5.94% | 0th | Cheap | -0.694 |
| AUDCHF | 3.95% | 4.88% | 7.13% | 0th | Cheap | +1.141 |
20D Realized Vol (color = signal)
Green = cheap (low vol), red = rich (high vol)
Carry / Vol Ratio
3M rate differential ÷ 20D realized vol. Higher = better carry per unit of risk.
Carry/Vol vs 20D Percentile
Top-right quadrant = rich vol + positive carry (best sell-vol targets). Bottom-left = cheap vol + negative carry (avoid). Top-left = rich vol with negative carry (buy puts / pay to hedge). Bottom-right = cheap vol with positive carry (own gamma).
G10 Vol Correlation Matrix
Pearson correlation of weekly 20D RVol changes over the last 120 days (120 observations). Blue = vol regimes move together (clustered). Red = diverging regimes. Useful for vol portfolio hedging.
Methodology & data freshness
Realized vol: Close-to-close log returns annualized at 252 trading days (σ = std(ln r) × √252). Percentile ranks current 20D vol against all rolling 20D windows in the prior ~300 trading days (~1Y).
Carry/Vol: 3M interbank rate differential (EURIBOR, SONIA, TONA etc.) ÷ 20D realized vol. Carry rates are monthly series — publication lag is typically 4–6 weeks.
Updates: Spot vol data refreshes every 4 hours from daily G10 FX rates (T+1 lag on weekdays). Carry rates update monthly. As of: 2026-07-28T09:05:17Z
About the RV screener
The screener ranks every G10 pair by where its current 20-day realized volatility sits in its trailing 1-year distribution and flags each as Cheap, Fair, or Rich. A pair printing vol in its bottom decile screens cheap — options on it are likely inexpensive relative to that pair's own history — while a pair in its top decile screens rich.
Alongside the vol percentile, a carry-to-vol ratio (the rate differential earned per unit of volatility endured, Sharpe-style) ranks which pairs pay best for the risk. Together the two columns frame the classic FX relative-value questions: where is volatility mispriced, and where is carry actually worth owning?
Frequently asked questions
How do you tell if FX volatility is cheap or rich?
The standard first pass is percentile ranking: compare current volatility against the pair's own trailing distribution (here, 20-day realized vol against a 1-year window). Vol in a low percentile is cheap by that pair's standards, high percentile is rich. Traders then cross-check against implied vol and upcoming event risk before acting on it.
What is the carry-to-vol ratio?
Carry-to-vol divides a pair's interest rate differential (the carry you earn holding it) by its volatility (the risk you bear). It is a Sharpe-style measure: a high ratio means the pair pays well per unit of risk, a low one means the carry doesn't compensate for the swings.
Realized vol computed from daily FX spot history (Twelve Data, with yfinance and FRED fallback). Carry from FRED OECD MEI 3M interbank rates. Positioning from CFTC Traders in Financial Futures (TFF) — free weekly data. Implied vol surface requires user-supplied OTC quotes.

