# What are some simple algorithms for hedging vanilla bonds?

My team will soon be implementing an auto hedger for our bond trading desk which will be integrated tightly with our risk application and I am interested in researching how this may work.

Any advice or information or general thoughts would be appreciated, especially on algorithms used to suggest hedges with bond futures.

I am guessing at the simplest level comparing the DV01 and instrument maturity to find the closest matching bond future would work but I am keen to know what other factors could be taken into account.

Many thanks.

-

## 1 Answer

The top reference for this topic is Risk Management: Approaches for Fixed Income Markets by Golub and Tilman. The main measures you will want to calculate for hedging the yield curve risks of a bond portfolio are the key rate durations. The wikipedia article gives a brief overview. If you have access to Lehman/Barclays data, they calculate key rate durations daily for every bond in their indices. You can also calculate it yourself as

$krd_i=-\frac 1P \frac {P_{i,up}-P_{i,down}} {2\Delta r_i}$

if you have a pricing model for the bonds in which you can vary a set of interest rates $r_i$. See chapter 2 of the book for details.

-

KR01 hedging is useful depending on your basis functions. Linear functions are easy but can be inaccurate. For KR01 hedging, this is where time should be spent. You could also try bucket hedging which hedges certain chunks of the term structure. Mr. Smith, is your team doing rate modeling or do you get the modeled structure from elsewhere? – strimp099 Aug 6 '11 at 12:03
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 2, "mathjax_display_tex": 0, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.3, "absolute_threshold": 10, "end_threshold": 15, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "github"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "english_confidence": 0.9287937879562378, "perplexity_flag": "middle"}