I have computed the PCs for daily changes in the UST yield curve over the last 5 years using the covariance matrix and can explain 94% of the variance using the first two components, which is good enough for what I'm doing.

The first component is level with each tenor implying a move in the same direction. What I'm struggling with is how to interpret this in terms of a 'DV01 equivalent' move. Let's say that I have a swap position that has a DV01 of $100k. My goal is to determine the PC1 equivalent of this number, which I think will be a more realistic measure that as each point will move in the same direction, but not necessarily by 1 basis point.

I do the following: a) determine an anchor point (e.g. 5Y) and reformulate the PC1 in terms of a 5Y equivalent, as I think that the tenor that will most likely move by 1bp is the 5Y tenor; b) I then determine the shift applied to the rest of the yield curve using the following formulation below,

$ \textbf{PC1} = \Bigg[ \textbf{SD} \cdot \bigg[ \textbf{P} \cdot \big[ \textbf{Sc} \cdot \textbf{SD} \cdot \textbf{P} \big] ^ {-1} \bigg] \Bigg] \cdot \big[1\big]$


  • $\textbf{SD}$ is the standard deviation matrix of size $n \times n$ where $n$ is the number of tenors
  • $\textbf{P}$ is the first Principal Component vector, which is simply the eigenvalues of the covariance matrix of the daily returns of size $n \times 1$
  • $\textbf{Sc}$ is a scalar vector that represents a 1bp shock at the 5Y point, so is a $n \times 1$ vector with 0 at each element apart from 1 at the corresponding 5Y tenor

The output of the above expansion does indeed lead to an $n \times 1$ vector that has a shift for every tenor and exactly 1 at the 5Y point, so the result does appear to be correct.

However, I just wanted to confirm that I was thinking of this correctly. The following vectors are the first two PCs,

PC2     PC1
-0.15028    0.05154 
-0.32138    0.13310 
-0.41856    0.20852 
-0.41465    0.26116 
-0.33315    0.29555 
-0.19980    0.31919 
-0.04874    0.33416 
0.08760     0.34173 
0.19759     0.34324 
0.27930     0.34002 
0.33455     0.33347 
0.37023     0.32502 

I have assumed the vector $\textbf{Sc}$ is $[0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]$.

So if the 5Y tenor corresponds to the 4th element in the vector, the equivalent 5Y PC1 measure result (in basis points),

PC1 5Y equivalent (bps)

So am I right in saying that the result above is more realistic as a risk measure than DV01 in that if the 5Y point moves by 1bps, the long end will move by 1.4-1.5bps and the short end by 0.7bps?

Thank you.

  • $\begingroup$ If you can show the nx1 vector we can eyeball it for correctness. The 10yr sector should be pretty close to the 5yr. 0.95 or something. $\endgroup$ – dm63 Feb 10 at 13:47
  • $\begingroup$ dm63, I've added the information you requested. $\endgroup$ – insomniac Feb 15 at 21:19

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.