RoboMacro Logo
RoboMacro
No Human in the Loop

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.

Pair20D RVol60D RVol252D RVol20D Pctile (vs 1Y)SignalCarry/Vol
USDBRL36.86%22.15%15.05%100thRich—
EURCHF6.23%4.92%4.10%100thRich+0.398
USDMXN11.04%8.63%8.69%82thRich—
AUDNZD5.42%4.88%4.82%80thRich+0.255
NZDCHF7.40%5.78%6.56%79thRich+0.429
AUDCHF8.25%6.50%7.18%77thRich+0.552
GBPAUD6.57%5.11%5.78%75thRich-0.118
EURAUD6.37%4.95%5.88%74thRich-0.325
USDCZK6.50%5.67%6.51%73thRich—
USDIDR8.10%8.19%6.29%73thRich—
GBPCHF5.76%5.30%5.01%69thFair+0.655
USDPLN7.33%6.90%7.72%68thFair—
EURCAD4.25%3.46%4.38%62thFair+0.027
EURUSD4.67%4.31%5.44%59thFair-0.342
CADCHF5.44%5.17%5.40%58thFair+0.435
EURJPY5.89%7.05%6.37%56thFair+0.206
NZDJPY7.79%8.28%8.30%51thFair+0.244
USDINR6.12%8.12%7.52%48thFair—
AUDCAD5.70%5.25%6.65%45thFair+0.383
USDCAD3.95%4.20%4.34%44thFair+0.433
AUDJPY7.71%7.78%8.47%43thFair+0.426
AUDUSD6.30%6.08%8.34%40thFair+0.075
USDZAR9.16%8.72%11.72%40thFair—
GBPJPY5.81%7.32%6.73%40thFair+0.431
GBPCAD4.65%3.81%5.13%40thFair+0.302
USDTRY1.27%1.71%1.52%37thFair—
USDCNY1.41%1.14%2.36%33thFair—
USDCHF5.81%6.52%7.08%29thCheap+0.702
CADJPY5.58%7.06%7.11%26thCheap+0.197
USDHUF8.09%10.01%11.57%26thCheap—
USDJPY5.22%8.00%7.70%24thCheap+0.539
EURGBP2.53%2.58%3.30%22thCheap-0.511
GBPUSD4.99%4.47%6.32%18thCheap-0.061
CHFJPY5.02%7.34%6.90%17thCheap-0.253
GBPNZD4.06%3.96%5.35%16thCheap+0.149
NZDCAD5.11%5.12%6.72%12thCheap+0.157
NZDUSD5.86%6.33%8.58%11thCheap-0.155
USDKRW7.23%9.36%10.44%7thCheap—
EURNZD3.46%4.06%5.56%6thCheap-0.199
USDSEK5.03%6.66%8.72%2thCheap+0.417
USDNOK4.66%5.30%8.04%2thCheap-0.163

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-10-27T10:33:41Z

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.