Libor in arrears convexity adjustment simple example

Libor in arrears

Libor in arrears

simplified Libor in arrears payoff: pay at time 1 1-year Libor reset at time 1 F(1)

 \frac{NPV(0)}{P_1(0)}=\mathbb{E}^1 (\frac{F(1)}{P_1(1)})

where \mathbb{E}^1 is measure with numeraire P_1(t)
change measure from time 0 to time 1 (time while F(t) is changing)
with girsanov formula :

 \frac{P_1(0)}{P_1(1)}dP_1=\frac{P_2(0)}{P_2(1)}dP_2

so we get

 NPV(0) = P_2(0) E^2 ( \frac{F(1)}{P_2(1)})

but  \frac{1}{P_2(1)}=1+F(1)

so  NPV(0)=P_2(0)\mathbb{E}^2(F(1))+P_2(0)\mathbb{E}^2(F^2(1))

under \mathbb{E}^2 F(1) is martingale i.e. \mathbb{E}^2 F(1)= F(0)

to calculate \mathbb{E}^2(F^2(1)) we must introduce dynamics for F(1)

for example black-scholes where under \mathbb{E}^2 : dF(t)=\sigma F(t) dW_t

so  F(1)=F(0) e^{\sigma W_1 - 0.5 \sigma^2 } and therefore

 \mathbb{E}^2 F^2(1)=F^2(0) e^{-\sigma^2 } \mathbb{E}^2 e^{2 \sigma W_1 } = F^2(0) e^{\sigma^2 }

for CMS convexity adjustment use linear model i.e. basel iii basics black scholes c++ calculator counterparty credit risk credit risk credit risk modelling cva derivative accounting foreign exchange risk fx fx forward hedge accounting ias 39 ifrs interest rate hedging interest rate swap interest rate swap valuation libor LMM ois option otc derivatives pca python quantitative risk analysis quantlib simple example swap