Arte SheetsLearn. Try. Understand.

International Finance & FX Valuation

Relative PPP & Real Exchange Rate Misalignment Formula

Calculate Gustav Cassel’s Relative Purchasing Power Parity benchmark rate S_PPP = S_0 * (P_dom,t / P_dom,0) / (P_for,t / P_for,0), Real Exchange Rate index q_t, and bilateral FX misalignment.

Avoid linear inflation-subtraction errors and reciprocal FX sign inversions!

Under direct FX quotation (Domestic Currency units per 1 Foreign Currency unit, e.g., LCU / USD), Gustav Cassel’s Relative Purchasing Power Parity (PPP) states that the equilibrium exchange rate adjusts in exact proportion to the ratio of cumulative price-level indices: S_PPP,t = S_0 * ((P_dom,t / P_dom,0) / (P_for,t / P_for,0))! Subtracting inflation rates linearly (S_0 * (1 + pi_dom - pi_for)) introduces severe compounding error whenever foreign inflation is non-zero!

Verify on Base_Equilibrium_Spot S_0 = 1.2000 LCU/FCU (B2, both CPI bases = 100), Current_Domestic_CPI P_dom = 132.0 (+32.0% cumulative domestic inflation, B3), Current_Foreign_CPI P_for = 110.0 (+10.0% cumulative foreign inflation, B4), and Observed_Market_Spot S_t = 1.5120 LCU/FCU (B5): Exact Relative PPP Benchmark is 1.2000 * (132.0 / 110.0) = 1.2000 * 1.2000 = 1.4400 LCU/FCU (whereas linear 1.2000 * (1 + 0.32 - 0.10) = 1.4640 misstates PPP by 240 pips!); Real Exchange Rate Index q_t = (S_t * P_for) / (S_0 * P_dom) = S_t / S_PPP = 1.5120 / 1.4400 = 1.0500 (Foreign currency is +5.00% real overvalued in domestic baskets); and Domestic Currency Real Misalignment (S_PPP / S_t - 1) is (1.4400 / 1.5120) - 1 = -0.0476 (-4.76% real undervalued)!

FX PPP Valuation Metric (S_0=1.20, CPI_d=132, CPI_f=110, S_t=1.512)FormulaVerified Output
Relative PPP Fair Value Spot (S_PPP)S_0 * (CPI_dom / CPI_for)1.4400 LCU/FCU
Real Exchange Rate Index (q_t, Base=1.00)S_t / S_PPP1.0500
Foreign Currency Real Valuation ((S_t/S_PPP)-1)(S_t - S_PPP) / S_PPP+0.0500 (+5.00% Overvalued)
Domestic Currency Real Valuation ((S_PPP/S_t)-1)(S_PPP / S_t) - 1-0.0476 (-4.76% Undervalued)

Exact Relative PPP Fair-Value Exchange Rate Formula

Normalize both price series to a shared base-period index (e.g., Base = 100) before multiplying S_0 by (CPI_dom / CPI_for)!

=LET(s_bs, B2, cp_dm, B3, cp_fr, B4, IF(OR(s_bs <= 0, cp_dm <= 0, cp_fr <= 0), "Invalid FX PPP Input", ROUND(s_bs * (cp_dm / cp_fr), 4)))

Domestic Currency Real Misalignment Ratio Formula

Remember Siebert’s Inversion Paradox: if 1 USD buys +5.00% more domestic baskets than PPP (q_t = 1.0500), 1 unit of domestic currency buys 1 / 1.0500 - 1 = -4.76% fewer foreign baskets!

=IF(OR(ISTEXT(E2), B5 <= 0), "Invalid FX PPP Input", ROUND((E2 / B5) - 1, 4))

Try the example

Use the original values or change them to test your understanding.

Further reading