Gold is sold on two stories: it hedges inflation, and it protects you in a crisis. Both are half-true in ways that matter for allocation. This note is empirical, not theoretical — we read the tape. Gold’s dominant driver is the real yield; its inflation hedge is regime-dependent; and the geopolitical premium around conflict is real but fast-fading.

1.The question

A research note is not a methodology lecture — it is an empirical read with a practical implication. The claim under test: “gold hedges inflation and war.” We check three things against 20.1 years of daily data (2004-11-18 2024-12-31, 5,063observations) — gold versus real yields, gold’s behaviour across inflation regimes, and gold’s path around the onset of crisis and armed conflict — and ask what each implies for a portfolio. Over the full sample GLD compounded +8.8% a year (a 5.46× total multiple) at 17.5% annualised volatility.

50100150200250'04'08'12'16'20'24
GLD close, 2004-11-18 → 2024-12-31 — the full sampleGLD

2.Gold tracks real yields

Gold pays no coupon, so its opportunity cost is the real yield— the return you forgo by holding metal instead of an inflation-protected bond. The cleanest tradable proxy is the TIP ETF, whose price moves inversely to 10-year real yields. Empirically this is gold’s strongest relationship: on 241monthly observations, gold’s beta to TIP returns is 1.28 with a correlation of 0.45 — real-yield moves alone explain 20% of the variance of monthly gold returns, far more than headline CPI does.

realyields.py
import numpy as np, pandas as pd, yfinance as yf

# daily: GLD, and TIP as the (inverse) 10y real-yield proxy
px = yf.download(["GLD", "TIP"], start="2004-11-18", end="2025-01-01",
                 auto_adjust=True, progress=False)["Close"].dropna()
mret = np.log(px.resample("ME").last()).diff().dropna()

# regress gold returns on TIP returns (TIP up = real yields falling)
beta = np.polyfit(mret["TIP"], mret["GLD"], 1)[0]   # 1.28
corr = mret["GLD"].corr(mret["TIP"])                # 0.45
print(f"beta {beta:.2f}   corr {corr:.2f}   R^2 {corr**2:.2f}")
-15%-10%-5%0%5%10%-8%-6%-4%-2%0%2%4%6%TIP monthly return (real yields falling →)
Monthly returns, GLD vs TIP, 2004–2024 — β = 1.28, ρ = 0.45fitted linemonths

3.The inflation hedge is conditional

The clean “gold = inflation hedge” story is weaker than the marketing. Over very long horizons gold roughly preserves purchasing power, but over the horizons investors actually hold it, the hedge is regime-dependent. Proxy inflation expectations with the trailing-12-month TIP-minus-IEF relative return (a tradable breakeven), split the high-inflation months by the direction of real yields, and the conditionality is stark: gold pays +24.6% annualised when inflation is high and real yields are falling, and loses -15.3% annualised when central banks respond by pushing real yields up — exactly the 2022 experience.

RegimeMonthsAvg. gold return (ann.)Reading
High inflation, falling real yields71+24.6%The classic hedge works
High inflation, rising real yields44-15.3%Hedge fails — real yields dominate
Low, stable inflation115+7.9%Gold drifts; no premium

Gold doesn’t hedge inflation so much as it hedges falling real yields — which often, but not always, coincide with inflation.

4.What war adds

Geopolitical shock adds a distinct, transientpremium. An event study around three modern shock onsets — Lehman’s filing, the COVID crash, and the invasion of Ukraine — shows a fast safe-haven bid in the first days to weeks, which then fades as the shock is priced and real-yield dynamics reassert control. Ukraine is the archetype: gold was up +8.1% at its peak within a month of the invasion, yet -2.9% sixty trading days out.

eventstudy.py
import numpy as np, pandas as pd

events = {"GFC / Lehman": "2008-09-15", "COVID": "2020-02-19",
          "Ukraine": "2022-02-24"}

def window(px, date, pre=10, post=60):
    i = px.index.searchsorted(pd.Timestamp(date))
    w = px.iloc[i - pre : i + post + 1]
    return 100 * w / px.iloc[i]           # = 100 at the event date

paths = {name: window(gld, d0) for name, d0 in events.items()}
# quick pop, then fade: +5d / +20d / +60d returns per event below
95100105110115-10d0+20d+40d+60d
GLD around shock onsets, rebased to 100 at the event date (t = 0)GFCCOVID / Ukraine
Eventt+5dt+20dt+60dPeak ≤ 20d
2008 GFC — Lehman Brothers files+15.0%+5.7%-1.6%+15.9%
2020 COVID — pre-crash equity peak+1.4%-7.3%+7.4%+4.0%
2022 — Russia invades Ukraine+2.1%+3.4%-2.9%+8.1%

Note the COVID row: in the first liquidity-panic weeks gold fell -7.3% as everything was sold for cash — the safe haven only reasserted itself once real yields collapsed. The war premium is real for tactical risk-off, but it is not a durable allocation thesis.

5.What it implies

For allocation: treat gold as a real-rate trade first and a tail hedge second. Expect it to help when real yields fall, to struggle when central banks force them up, and to spike-then-fade around conflict. The durable portfolio property is the correlation: over twenty years the 252-day rolling correlation of daily GLD and SPY returns averaged 0.05, ranging -0.35 to 0.44and rarely staying far from zero. That makes gold a useful diversifier against a falling-real-yield regime — not a set-and-forget inflation insurance policy. In nominal terms GLD’s +8.8% a year trailed SPY’s +10.3% over the same span; in real terms (CPI averaged roughly 2.5% a year over the sample) gold earned a positive but modest premium for its zero-coupon risk.

-0.3-0.2-0.100.10.20.3'05'09'13'17'21
GLD vs SPY — 252-day rolling correlation of daily returnsrolling ρ

References

  1. 1.Erb, C. & Harvey, C. (2013). The Golden Dilemma. Financial Analysts Journal, 69(4).
  2. 2.Baur, D. & McDermott, T. (2010). Is Gold a Safe Haven? International Evidence. Journal of Banking & Finance, 34(8).
  3. 3.Barro, R. & Misra, S. (2016). Gold Returns. The Economic Journal, 126(594).