Serving the Quantitative Finance Community

 
Mattew46
Topic Author
Posts: 1
Joined: July 8th, 2016, 2:37 pm

Risky Annuity Formula implemented in Bloomberg

July 5th, 2016, 3:19 pm

Hi all! I wanna ask you if someone knows the exact formula, through which Bloomberg compute the risky annuity for a cds. I know Bloomberg uses a simplified formula for risky annuity, using a flat spread, and maybe it assumes that the payments of a cds are made at the maturity.Thank you in advance.
 
User avatar
bearish
Posts: 5906
Joined: February 3rd, 2011, 2:19 pm

Risky Annuity Formula implemented in Bloomberg

July 5th, 2016, 10:17 pm

If you go to cdsmodel.com you will find not just the formula, but source code. It is not nearly as simple as you think it is. Although, it probably should be....
 
Mattew46
Topic Author
Posts: 1
Joined: July 8th, 2016, 2:37 pm

Risky Annuity Formula implemented in Bloomberg

July 7th, 2016, 7:15 am

Hi Bearish! Just one question. I used the command in Matlab ( I used the command cdsrpv01) in order to get the risky annuity and I get quite consistent data. However for just few quoted spread I get strange result (complex numbers). How can I do? These strange results are when I have an hazard rate greater than 1 (ex 1.29 with default probability about 99%, very risky).Could you suggest me something? Thanks
 
User avatar
bearish
Posts: 5906
Joined: February 3rd, 2011, 2:19 pm

Risky Annuity Formula implemented in Bloomberg

July 7th, 2016, 3:57 pm

Hmm, complex numbers have their use in math finance, but this is probably not where you want them. I am not familiar with the particular Matlab function, but most likely it is taking the log of a number that ought to be positive, but which is in fact negative due to some numerical precision issue. I see no easy way out short of stepping into the code to find the offending line. Once you know where it is going wrong you can start thinking about how to fix it, or at least code around it. Of course, names on the verge of default (where the problem arises) really should not be quoted in spread terms, but I know for a fact that it has happened, so that is neither here nor there. For names quoted in up-front terms, there is the separate problem when you encounter an up-front premium greater than (1-R), in which case you are forced to change R...