Free Trial

BA/ML analysts eyed the high-grade....>

US CORPORATES
US CORPORATES: BA/ML analysts eyed the high-grade US$ corporate bond market and
said the "biggest driver of supply is demand, which could actually worsen in the
second half of 2018. Moreover we expect the more structural supply reducers
emanating from tax reform to finally materialize in 2018. Combined with some
frontloading in 2017 that implies we expect a 15% decline in HG supply volumes
in 2018 to $1.13 Trillion."
- They eyed "continued upside risk to volumes as 2018 looks set to begin with
the same favorable excess demand conditions that were the clear drivers of
upside to 2017's record breaking volumes." 
- They believe "these conditions should not improve further and could actually
worsen in the 2H 2018, as the Fed's monthly balance sheet reductions become
really large, and the ECB communicates the end to QE. Moreover, we expect the
more structural supply reducers emanating from tax reform to finally materialize
in 2018. Combined with some frontloading in 2017, that implies we expect a 15%
decline in high grade new issue supply volumes in 2018 to $1.13tr. Due to an
increase in bond maturities, we expect net supply to decline 33% to $487bn." 

To read the full story

Close

Why MNI

MNI is the leading provider

of intelligence and analysis on the Global Fixed Income, Foreign Exchange and Energy markets. We use an innovative combination of real-time analysis, deep fundamental research and journalism to provide unique and actionable insights for traders and investors. Our "All signal, no noise" approach drives an intelligence service that is succinct and timely, which is highly regarded by our time constrained client base.

Our Head Office is in London with offices in Chicago, Washington and Beijing, as well as an on the ground presence in other major financial centres across the world.
}); window.REBELMOUSE_TASKS_QUEUE.push(function(){ window.dataLayer.push({ 'event' : 'logedout', 'loggedOut' : 'loggedOut' }); }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ (function appendPosts () { var policyPosts = document.getElementsByClassName('policy-posts-wrapper')[0]; var policyPostsMenu = document.querySelector('.policy-posts-span'); policyPostsMenu.append(policyPosts); policyPosts.style.display = "block"; var empolicyPosts = document.getElementsByClassName('em-policy-posts-wrapper')[0]; var empolicyPostsMenu = document.querySelector('.em-policy-posts-span'); empolicyPostsMenu.append(empolicyPosts); empolicyPosts.style.display = "block"; var dataPosts = document.getElementsByClassName('data-posts-wrapper')[0]; var dataPostsMenu = document.querySelector('.data-posts-span'); dataPostsMenu.append(dataPosts); dataPosts.style.display = "block"; })(); }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ document.querySelectorAll(".my-mni").forEach(function(item){ item.href="/core/users/email_login/"; item.innerHTML="Log In"; }) }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ document.querySelector('.signup-form').addEventListener('submit', () => { window.dataLayer = window.dataLayer || []; dataLayer.push({ 'event' : 'submission_click', 'event_category': "Sign Up Button Clicks", 'event_label': "Posts" }); }) }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ REBELMOUSE_STDLIB.createElementChangeListener('.signup-form.authentication--form',function(item){ item.onsubmit=function(e){ ga('b.send', 'event', {eventCategory: 'Signup', eventAction: 'CompletedForm', eventLabel:'pageTitle', eventValue:15}); window.dataLayer = window.dataLayer || []; dataLayer.push({ 'event' : 'signup_click', 'event_category': "Signup", 'event_action': 'CompletedForm', 'event_label': 'pageTitle', 'event_value': 15 }); } }) }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ document.querySelectorAll("img").forEach(function (img) { img.addEventListener("contextmenu", function (e) { return false; }); }); document .querySelector(".site-logo img") .addEventListener("contextmenu", function (e) { return true; }); }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ document.querySelector('.signup-form').addEventListener('submit', () => { window.dataLayer = window.dataLayer || []; dataLayer.push({ 'event' : 'submission_click', 'event_category': "Sign Up Button Clicks", 'event_label': "Posts" }); }) }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ REBELMOUSE_STDLIB.createElementChangeListener('.signup-form.authentication--form',function(item){ item.onsubmit=function(e){ ga('b.send', 'event', {eventCategory: 'Signup', eventAction: 'CompletedForm', eventLabel:'pageTitle', eventValue:15}); window.dataLayer = window.dataLayer || []; dataLayer.push({ 'event' : 'signup_click', 'event_category': "Signup", 'event_action': 'CompletedForm', 'event_label': 'pageTitle', 'event_value': 15 }); } }) }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ let posts = document.querySelectorAll(".all-content-wrapper .widget:not(.stream-story-processed)"); window.check_story_posts(posts, "streamOfPosts"); }); window.REBELMOUSE_LOW_TASKS_QUEUE.push(function(){ function populateInputsWithAPAPI(c) { document.querySelectorAll('.signup-form input[name="country"]').forEach(el => { el.setAttribute("value", c.country_name); }); document.querySelectorAll('.signup-form .country_name').forEach(el => { el.setAttribute("value", c.country_name); }); let country_code = c && c.country_code ? c.country_code.toLowerCase() : "auto"; document.querySelectorAll('.signup-form .country_code').forEach(el => { el.setAttribute("value", country_code); }); document.querySelectorAll('.signup-form .selected_country').forEach(el => { el.setAttribute("value", country_code); }); } const fetch = function (err, res) { var r = new XMLHttpRequest(); r.open("GET", err, !0), (r.responseType = "json"), (r.onload = function () { var err = r.status; res(200 === err ? null : err, r.response); }), r.send(); }; function setupCountry() { if (window.preventDuplicateExec) { return; } window.preventDuplicateExec = true; window.REBELMOUSE_STDLIB.onElementInViewport({ threshold: 0, firstOnly: true, oneTime: true, selector: ".signup-form", onIntersect: (entry) => { // when you need to get access to that data you call it in that way: let ipapiData = localStorage.getItem("ipapiData"); if (!ipapiData) { fetch("https://ipapi.co/json/", function (err, ipData) { console.log("populating inputs with data from IP API "); localStorage.setItem("ipapiData", JSON.stringify(ipData)); populateInputsWithAPAPI(ipData); }); } else { console.log( "populating inputs with data from IP API data stored in local storage" ); populateInputsWithAPAPI(JSON.parse(ipapiData)); } }, }); } setupCountry(); }); window.REBELMOUSE_LOW_TASKS_QUEUE.push(function(){ /* const sidebar = document.querySelector('.left-sidebar-container'); const stickyContent = document.querySelector('.sticky-content'); const siteContent = document.querySelector('.all-posts-stream'); if (sidebar && stickyContent && siteContent) { if (siteContent.clientHeight > sidebar.clientHeight) { console.log('grater -> ', siteContent.clientHeight + ' > ' + sidebar.clientHeight); stickyContent.style.height = (siteContent.clientHeight - sidebar.clientHeight) + 'px'; } } */ }); window.REBELMOUSE_LOW_TASKS_QUEUE.push(function(){ function populateInputsWithAPAPI(c) { document.querySelectorAll('.signup-form input[name="country"]').forEach(el => { el.setAttribute("value", c.country_name); }); document.querySelectorAll('.signup-form .country_name').forEach(el => { el.setAttribute("value", c.country_name); }); let country_code = c && c.country_code ? c.country_code.toLowerCase() : "auto"; document.querySelectorAll('.signup-form .country_code').forEach(el => { el.setAttribute("value", country_code); }); document.querySelectorAll('.signup-form .selected_country').forEach(el => { el.setAttribute("value", country_code); }); } const fetch = function (err, res) { var r = new XMLHttpRequest(); r.open("GET", err, !0), (r.responseType = "json"), (r.onload = function () { var err = r.status; res(200 === err ? null : err, r.response); }), r.send(); }; function setupCountry() { if (window.preventDuplicateExec) { return; } window.preventDuplicateExec = true; window.REBELMOUSE_STDLIB.onElementInViewport({ threshold: 0, firstOnly: true, oneTime: true, selector: ".signup-form", onIntersect: (entry) => { // when you need to get access to that data you call it in that way: let ipapiData = localStorage.getItem("ipapiData"); if (!ipapiData) { fetch("https://ipapi.co/json/", function (err, ipData) { console.log("populating inputs with data from IP API "); localStorage.setItem("ipapiData", JSON.stringify(ipData)); populateInputsWithAPAPI(ipData); }); } else { console.log( "populating inputs with data from IP API data stored in local storage" ); populateInputsWithAPAPI(JSON.parse(ipapiData)); } }, }); } setupCountry(); });