One of these days we may be forced to conclude that bonds simply WANT to be rallying, regardless of the justification.  One day it's Syria.  The next, it's North Korea.  One week it's geopolitical risks.  The next, it's fiscal policy expectations stemming from Trump's comments on the strength of the dollar.

I'll stop short of suggesting that market participants are picking individual pieces of justification to suit the day's bond market movement.  But I don't think it's unfair to say that there's a broader narrative in place, and that credit is given primarily to stories that fit that narrative.

Today it was news that British Prime Minister Theresa May is interested in holding a new general election in June.  That's much sooner than she'd previously anticipated.  The goal is to establish an even bigger majority for her party--to strike while the iron is hot with respect to enacting Brexit-related legislation.  

In general, Brexit is seen as economically negative (at first, anyway) for the UK and the EU.  As such, UK stocks fell sharply today, erasing essentially all of 2017's gains and pulling global equities markets lower in the process.  After European stock markets closed for the day, it was plain to see investors pile into safer-haven assets like Treasuries.  

US bond markets were already challenging yesterday's overnight lows at the time.  The extra rush of buying demand helped 10yr yields make it as low as 2.177 initially with another buying spree at the CME close bringing us even lower to 2.1647.  Fannie 3.5s ended up gaining nearly 3/8ths of a point and several lenders repriced positively in the afternoon.