Spot-Date Adjustment in Covered Interest Rate Parity
Summary
The document derives covered interest rate parity by equating the present value of a foreign currency cash flow when converted at today’s spot rate with its value when converted at the forward rate and discounted in the other currency. It then explains why a simple ratio of currency discount factors can be insufficient when the FX spot transaction settles after the current date, as is common in practice.
The accepted answer treats the spot adjustment as a correction to the discounting interval. Dividing each maturity discount factor by the corresponding discount factor to the spot settlement date removes the initial period before spot delivery. The adjusted factors therefore represent discounting from the spot date to maturity rather than from today. This refines the cash-flow replication calculation rather than changing its no-arbitrage logic. The example assumes consistent currency discount curves and settlement conventions; the short discussion does not address market frictions or basis deviations.
Key ideas
- Covered interest rate parity follows by equating values of equivalent currency cash flows.
- When spot settles after today, discounting should begin from the spot settlement date.
- Dividing maturity discount factors by spot-date discount factors removes the initial settlement lag.
- The spot adjustment refines the discounting inputs in the replication argument.
Tags
Full text
# Covered Interest Rate Parity with FX Spot-Adjustment
# Covered Interest Rate Parity with FX Spot-Adjustment
The Covered Interest Rate Parity for FX is often quoted simplistically as $$ X_T \quad=\quad X_S \cdot \frac{D^{base}_T}{D^{quote}_T} $$ where $X_t$ is the (projected) FX rate at time $t$ (denoted as $1$ base = $X$ quote), $D_t^{ccy}$ is the discount factor for time $t$ in currency $ccy$, and $X_S$ denotes the current FX Spot Rate.
To derive this parity one can note a cashflow of 1 USD at $T$ can be discounted in USD and then converted at spot $X_S$ to JPY. Or equivalently, convert at $X_T$ and discount in JPY. So $$ \text{NPV in JPY} \quad=\quad (1\text{ USD} \cdot D_T^{USD}) \cdot X_S \quad=\quad (1\text{ USD} \cdot X_T) \cdot D_T^{JPY} $$ which implies the parity.
In practice the above parity does not hold since spot $\ne$ today (e.g. when spot = today + 2 days). So we get a more comprehensive parity: $$ X_{T} \quad=\quad X_{S} \cdot \frac{D^{base}_{T}}{D^{quote}_{T}} \cdot \color{blue}{\frac{D^{quote}_{S}}{D^{base}_{S}}} $$ E.g. see QuantLib's implementation: github.com/.../QuantLib/.../ratehelpers.cpp#L995-L1012
I am struggling to properly incorporate this $\color{blue}{\text{spot adjustment}}$ in the non-arbitrage/replication argument, which I outlined above. Can anybody help?
## Answer by Alex C (score 3, accepted)
https://quant.stackexchange.com/a/45722
A simple trick is being used to come up with the right discount factors.
Since $D_T=\frac{1}{1+r_1}\frac{1}{1+r_2}\frac{1}{1+r_3}\cdots\frac{1}{1+r_T}$
and $D_S=\frac{1}{1+r_1}\frac{1}{1+r_2}$
we can form the desired discount factor from two days hence to date $T$ as follows
$\frac{D_T}{D_S}=\frac{1}{1+r_3}\cdots\frac{1}{1+r_T}$ (which we might call $D_{2,T}$)
The same trick is being used for both the base and quote currencies to eliminate the unwanted discounting for the first two days which would occur in a naive day 0 to day $T$ discounting. It is not so much a different arbitrage argument as a refinement of the calculation of $D^{base}$ and $D^{quote}$ in your first equation, reflecting that $D_{2,T}$ and not $D_{0,T}$ type of calculation is needed.Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.