European parliamentary elections may be over but the ramifications of the vote are still being felt across the Euro area, especially in France, where a snap election was called in the aftermath of the results.
Across the channel, there are now less than three weeks to go before the UK's general election.
Bank of England rate setters enter this week's monetary policy deliberation with key inflation data released a day before the interest rate announcement. However, Barclays posited that the bank would set a very high bar for any changes in either the vote split or the guidance provided by the Monetary Policy Summary and Minutes.
Market participants expect a quiet trading day on Wednesday, with a US federal holiday on the docket. On the same day, the BoJ is set to release the MPM minutes and BofA anticipates the release will be closely watched for hints on the BoJ’s thinking on QT, and distance to the next rate hike—though some of the uncertainties around JGB purchases may be resolved by the time the minutes are released.
On Thursday, the ECB is due to release its latest Economic Bulletin.
A reminder too that it is Quadruple witching for equity indices on Friday, as well as Flash PMI readings from across major economies.
Monday 17 June
02:00 - Mainland China May Industrial Production Consensus: 6.2% (prev 6.7%)
HSBC expected industrial production to grow by 6.3% y/y in May. "The manufacturing PMI in May fell 0.9ppt from April to 49.5, while the pace of expansion in production also slowed, although it remained in expansion at 50.8. Based on high-frequency data, industrial production was generally stable. "Among them, the operating rates of automobile semi-steel tyres and blast furnaces were both higher than historical levels," the bank said.
Speakers: ECB's Lagarde, Lane, de Guindos | Fed's Harker
Tuesday 18 June
04:30 - RBA Interest Rate Decision Consensus: On Hold (prev 4.35%)
JP Morgan predicted that the RBA would remain on hold, although developments since the last meeting require a vigilant tone to be maintained. "We expect the board will argue that inflation expectations are anchored which allows them to partially look through the consumption lift. The guidance that the board “is not ruling anything in or out” is likely to remain, as is the statement that it will be “some time yet” before inflation is sustainably back at the target. The more dovish remarks will likely relate to offshore matters, particularly ongoing weakness in China and geopolitical risks, though we expect the global theme of sticky services inflation will be mentioned again as a cautionary tale," the investment bank's analysts wrote.
09:00 - Germany Jun ZEW Expectations Consensus: 49.5 (prev 47.1)
HSBC noted that in May, ZEW economic expectations climbed to the highest level for almost three years. "For June, we expect the indicator to dip slightly. Stock markets have taken a hit after rate cut expectations in the eurozone and particularly the US have been dialled down. Large gains made by right-wing parties in the European election may have further dampened sentiment. Meanwhile, the assessment of the current economic situation in Germany should see an improvement, but remain overall at depressed levels," the bank predicted.
12:30 - US May Retail Sales Advance Consensus: 0.3% (prev 0.0%)
"Helping to support overall spending, unit vehicle sales (Ward’s) rose 1.0% in May. Vehicles and parts make up almost 20% of overall spending, so even small moves here can have an outsized impact," BMO's Scott Anderson noted. "Providing some offset was a 3.6% drop in retail gasoline prices, according to the latest CPI report, which will weigh on gas station receipts. Rising gasoline inventories in the last two weeks of May suggest demand might also be weakening."
11:50 - Japan May Trade Balance Consensus: -1298.5 bln (prev -465.6 bln)
Barclays estimated Japan’s trade balance slipped back into the red with imports increasing on higher oil prices and JPY depreciation despite firm exports of autos/auto parts and chip-making machinery/electronic parts.
06:00 - UK May CPI/Core CPI Consensus: 2.0% (prev 2.3%) / 3.4% (prev 3.9%)
Deutsche Bank said after a blockbuster upside surprise to CPI in April, it expected price momentum to slow a little more. "Headline CPI, we think, will slow to 2.1% y/y. Core CPI, we estimate will edge lower to 3.5% y-o-y. And services CPI we expect will slow to 5.6% y-o-y. For RPI, we expect price pressures to drop to 3.1% y/y." The bank estimated that some spillover from April price resets in the recreational, personal and leisure services baskets would keep inflation higher in May. "We also expect airfares to stay elevated. Beyond the services basket, the good news is that we will continue to see disinflationary momentum build in both the food and core goods categories. Risks to our forecasts are skewed marginally to the downside."
21:00 - Brazil Jun Interest Rate Decision Consensus: On Hold (prev 10.50%)
Oxford Economic expect Brazil's central bank to pause and keep the Selic rate at 10.5% at its upcoming policy decision on Wednesday. "The central bank’s credibility has been put into question as President Lula gradually appoints his own board of directors, which have been perceived as more dovish, stressing yields. We expect a shift in tone to regain credibility, promising a longer period within a contractionary stance until long-run inflation expectations are re-anchored. We project the Selic rate to end this year unchanged at 10.5%," the research firm said.
Speakers: ECB's Centeno
Thursday 20 June
02:15 - PBoC Interest Rate Decision Consensus: On Hold (prev 3.45%)
"We expect the one-year Loan Prime Rate (LPR) to stay at 3.45% in June. As depreciation pressure on the RMB remains, we expect the PBOC to prefer liquidity injections to provide support given considerations about exchange rate stability. Meanwhile, government bond issuance has accelerated significantly," HSBC posited.
"We expect the policy rate to be cut by 25bp to 1.25% at this upcoming meeting, mainly because the SNB is likely to be increasingly confident that inflation will remain below 2%," Nomura predicted. "However, it is a very finely balanced decision. Nevertheless, it is our base case because inflation is within the target range, it is expected to remain there and the SNB thinks policy is currently restrictive. Market pricing can be volatile, but currently, 20bp is priced for this meeting, though just a few days ago it was almost 50/50. Beyond the June meeting, we expect further progress on inflation, such that the SNB may cut twice more in 2024."
08:00 - Norway Interest Rate Decision Consensus: On Hold (prev 4.50%)
Danske noted that in March, Norges Bank signalled the first rate cut of 25bp in September, conditional on the economic development going as expected. The rate path in the accompanying monetary policy report indicated around 80% probability of a cut in September. At the ‘small meeting’ in May, NB indicated that developments since March could indicate that there may be a need to keep the rate up somewhat longer than expected in March. Although inflation has been lower than expected, economic growth appears to be picking up, reducing the need for lower interest rates.
11:00 - BoE Interest Rate Decision Consensus: On Hold (prev 5.25%)
Nomura's George Moran predicted the BoE would vote 7-2 in favour of leaving the bank rate unchanged at 5.25%, despite having raised prospects of a June cut at its May meeting. "Inflation and wage data have been stronger than expected since then. We expect only minor hawkish changes to the guidance, reflecting increased concerns about inflation persistence and a reduced impact of monetary policy on the real economy."
11:50 - Japan May CPI Consensus: 2.9% (prev 2.5%)
"We expect Japan-style core CPI (ex fresh food) to rebound to 2.5% yoy, from 2.2% yoy in April, because of an increase in electricity prices due to higher renewable energy power generation promotion levy," Citi said. "Meanwhile, we expect BoJ-style core CPI (ex fresh food and energy) to slow further to 2.3% yoy from 2.4% yoy previously."
Speakers: Fed's Barkin
Friday 21 June
06:00 - UK May Retail Sales Consensus: M/M 1.6% (prev -2.3%)
"The April commentary suggested that poor weather largely contributed to the sharp decline in sales. Sadly, the weather failed to improve materially in May," SG analysts wrote. "As a result, the BRC commentary suggested that this minimal improvement in the weather only resulted in a modest rebound in retail sales, despite the bank holiday weekend seeing strong sales. Therefore, we only expect there to have been a rebound of 0.8% mom in May, after -2% mom in April." The French bank's analysts added that more generally, real household disposable income is likely to grow throughout the year, as slower inflation, tax cuts and still resilient wage growth offset some household remortgaging at higher rates."
Speakers: ECB's Nagel
/*jshint esversion: 6 */
var socket;
var assigned_server = 3001;
var distributor_server = 3010;
var publisher_channel = '';
var broadcaster_channel = '';
var remote_ip = '';
var session_info = {};
var logging_interval;
var logging_interval_time = 120000;
var socket_emits = 0;
var session_start_time;
var reconnectionDelayGrowFactor = 1.2;
var reconnection_delay = 1000;
var playing = false;
var connected_to_assigned = false;
var socket_close_timeout;
var player_disconnected_annoucement_play_delay = 1500;
var player_disconnected_annoucement_play_timeout = null;
self.onmessage = function (msg) {
switch(msg.data.action) {
case 'Reactivate': reactivate(); break;
case 'ConnectDistributor': connect_to_distributor(msg); break;
case 'SessionStaticInfo': session_static_info(msg); break;
case 'SessionInfo': update_session_info(msg.data); break;
case 'PauseLogging': clearTimeout(logging_interval); break;
case 'RestartLogging': postMessage({action: 'RequestSessionStaticInfo' }); break;
case 'JoinPublisherChannel': join_publisher_channel(msg.data); break;
case 'JoinPlayerChannel': join_player_channel(msg.data); break;
case 'CheckChannelStatus': check_channel_status(msg.data); break;
case 'PlayerLogResponse': player_log_response(msg.data); break;
case 'CloseSocket': close_socket(); break;
case 'RequestMessageSearch': request_message_search(msg.data); break;
case 'RequestMoreMessages': request_more_messages(msg.data); break;
case 'PlayerDisconnectedAnnoucementTimeoutStart': player_disconnected_annoucement_timeout_start(); break;
case 'PlayerDisconnectedAnnoucementTimeoutClear': player_disconnected_annoucement_timeout_clear(); break;
}
};
function player_disconnected_annoucement_timeout_clear() {
clearTimeout(player_disconnected_annoucement_play_timeout);
player_disconnected_annoucement_play_timeout = null;
}
function player_disconnected_annoucement_timeout_start() {
player_disconnected_annoucement_play_timeout = setTimeout(function() { send_play_disconnect_annoucement(); }, player_disconnected_annoucement_play_delay );
}
function send_play_disconnect_annoucement() {
postMessage({action: "PlayDisconnectAnnoucement"});
}
function reactivate() {
playing = false;
connect_to_assigned_server();
}
function player_log_response(data) {
var data_array = {};
data_array.type = 'PlayerLogResponse';
data_array.respond_to_socket_final = data.respond_to_socket_final;
data_array.respond_to_socket = data.respond_to_socket;
data_array.player_socket_id = data.player_socket_id;
data_array.logs = data.logs;
var msg_string = JSON.stringify(data_array);
if (socket.readyState == 1) { socket.send(msg_string); }
}
function request_message_search(data) {
var data_array = {};
data_array.type = 'request_message_search';
data_array.publisher_channel = data.publisher_channel;
data_array.search_term = data.search_term;
var msg_string = JSON.stringify(data_array);
if (socket.readyState == 1) { socket.send(msg_string); }
}
function request_more_messages(data) {
var data_array = {};
data_array.type = 'request_more_messages';
data_array.publisher_channel = data.publisher_channel;
data_array.last_record_id = data.last_record_id;
var msg_string = JSON.stringify(data_array);
if (socket.readyState == 1) { socket.send(msg_string); }
}
function check_channel_status(data) {
var data_array = {};
data_array.type = 'check_channel_status';
data_array.app_name = data.app_name;
var msg_string = JSON.stringify(data_array);
if (socket.readyState == 1 && connected_to_assigned) { socket.send(msg_string); }
else { setTimeout(function() { check_channel_status(data); },500); }
}
function check_channel_status_response(data) {
postMessage({ action: 'CheckChannelStatusReponse', stream_status: data.stream_status.status, onair: data.stream_status.onair, connected: data.stream_status.connected });
}
function join_publisher_channel(data) {
var data_array = {};
data_array.type = 'join_publisher_channel';
if (typeof data.api_key !== 'undefined') { data_array.api_key = data.api_key; }
else {
data_array.publisher_channel = data.publisher_channel;
data_array.username = data.username;
data_array.subscriber_group = data.subscriber_group;
data_array.display_name = data.display_name;
data_array.single_sign_on = data.single_sign_on;
data_array.remote_ip = data.remote_ip;
data_array.http_referrer = data.http_referrer;
data_array.current_page = data.current_page;
data_array.php_session_id = data.php_session_id;
data_array.from_react = data.from_react;
}
var msg_string = JSON.stringify(data_array);
if (socket.readyState == 1) {
socket.send(msg_string); }
postMessage({action: 'PublisherChannelJoined' });
}
function session_static_info(msg) {
set_static_session_info(msg.data);
start_log();
}
function connect_to_distributor(msg) {
publisher_channel = msg.data.publisher_channel;
remote_ip = msg.data.remote_ip;
socket = new WebSocket("wss://ws.livesquawk.com/ws"+distributor_server);
socket.onopen = function(event) { request_server_assignment(); };
socket.onmessage = function(event) {
var msg_string = event.data.toString();
var data = JSON.parse(msg_string);
switch(data.type) {
case 'server_assignment_response': server_assignment_response(data); break;
}
};
}
function session_info_interval() {
postMessage({action: 'RequestSessionInfo' });
logging_interval = setTimeout(session_info_interval,logging_interval_time);
}
function server_assignment_response(data) {
assigned_server = data.selected_server;
socket.close();
connect_to_assigned_server();
}
function request_server_assignment() {
var data_array = {};
data_array.type = 'request_server_assignment';
var msg_string = JSON.stringify(data_array);
if (socket.readyState == 1) { socket.send(msg_string); }
}
function connect_to_assigned_server() {
socket = new WebSocket("wss://ws.livesquawk.com/ws"+assigned_server);
socket.onopen = function(event) {
postMessage({ action: 'VisibleConsole',console_string: "Connected to server "+assigned_server });
console.log("Connected to server "+assigned_server);
postMessage({ action: 'ConnectedToAssigned' });
connected_to_assigned = true;
if (playing) {
postMessage({ action: 'RejoinPlayerChannel' });
}
};
socket.onmessage = function(event) {
var msg_string = event.data.toString();
var data = JSON.parse(msg_string);
if (data.type != 'server_ping') { /* console.log(data.type); */ }
switch(data.type) {
case 'reconnect': postMessage({ action: 'VisibleConsole',console_string: "Reconnected" }); break;
case 'reload': postMessage({ action: 'Reload' }); break;
case 'start_log_response': start_log_response(data); break;
case 'application_refresh_start': application_refresh_start(data); break;
case 'application_refresh_stop': application_refresh_stop(data); break;
case 'player_log_request':
case 'check_channel_status_response': check_channel_status_response(data); break;
case 'PlayerLogRequest':
case 'new_tweet':
case 'new_latest_news':
case 'delete_report':
case 'add_report':
case 'add_ref_doc':
case 'calendar_change':
case 'calendar_insert':
case 'calendar_delete':
case 'new_note':
case 'AppStart':
case 'AppStop':
case 'BroadcasterStarted':
case 'BroadcasterStopped':
case 'added_cme_report':
case 'updated_cme_report':
case 'added_cme_commentary':
case 'updated_cme_commentary':
case 'server_assignment_response':
case 'initial_messages':
case 'message_categories':
case 'more_messages':
case 'matched_messages':
pass_straight_to_post_message(data);
break;
case 'output':
case 'server_ping':
case 'reconnect':
case 'disconnect':
break;
}
};
socket.onerror = function(event) {
postMessage({ action: 'VisibleConsole',console_string: "LS Socket Error" + event.type });
console.log(event);
postMessage({ action: 'LSSocketConnectionError' });
};
socket.onclose = function(event) {
console.log('Socket is closed. Reconnect will be attempted in 1 second.', event.reason);
socket_close_timeout = setTimeout(connect_to_assigned_server, reconnection_delay);
reconnection_delay = reconnection_delay*reconnectionDelayGrowFactor;
connected_to_assigned = false;
};
}
function close_socket() {
clearTimeout(socket_close_timeout);
socket_close_timeout = null;
socket.onclose = function(event) {};
socket.onmessage = function(event) {};
socket.onerror = function(event) {};
socket.close(1000);
console.log('Socket Closed');
}
function pass_straight_to_post_message(data) {
data.action = data.type;
postMessage(data);
}
function join_player_channel(data) {
var data_array = {};
data_array.type = 'join_player_channel';
data_array.player_channel = data.player_channel;
data_array.remote_ip = data.remote_ip;
data_array.username = data.username;
data_array.app_name = data.app_name;
data_array.onair_status = data.onair_status;
data_array.http_referrer = data.http_referrer;
data_array.current_page = data.current_page;
data_array.php_session_id = data.php_session_id;
var msg_string = JSON.stringify(data_array);
if (socket.readyState == 1) { socket.send(msg_string); }
postMessage({action: 'PlayerChannelJoined' });
playing = true;
}
function start_log_response(data) {
session_info.session_id = data.log_record_id;
session_info_interval();
}
function application_refresh_start(data) {
if (data.app_name == session_info.application_name) { postMessage({action: 'ApplicationRefreshStart' }); }
}
function application_refresh_stop(data) {
if (data.app_name == session_info.application_name) { postMessage({action: 'ApplicationRefreshStop' }); }
}
function set_static_session_info(data) {
session_info.browser_codename = data.browser_codename;
session_info.browser_name = data.browser_name;
session_info.user_agent = data.user_agent;
session_info.browser_version = data.browser_version;
session_info.cookies_enabled = data.cookies_enabled;
session_info.platform = data.platform;
session_info.player_version = data.player_version;
session_info.stream = data.stream;
session_info.connection_protocol = data.protocol;
session_info.delay_target = data.delay_target;
session_info.session_email = data.session_email;
session_info.remote_ip = data.remote_ip;
session_info.php_session_id = data.php_session_id;
session_info.application_name = data.application_name;
session_info.http_referrer = data.http_referrer;
}
function start_log() {
var session_start_date = new Date();
session_start_time = session_start_date.getTime();
var months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
var session_start_date_string = session_start_date.getDate() + " " + months[session_start_date.getMonth()] + " " + session_start_date.getFullYear();
var data_array = {};
data_array.type = 'webrtc_start_log';
data_array.remote_ip = session_info.remote_ip;
data_array.username = session_info.session_email;
data_array.php_session_id = session_info.php_session_id;
data_array.webrtc_protocol = '';
data_array.session_start_time = (session_start_time/1000).toFixed(0);
data_array.stream_name = session_info.stream;
data_array.session_start_date = session_start_date_string;
var msg_string = JSON.stringify(data_array);
if (socket.readyState == 1) { socket.send(msg_string); }
}
function update_session_info(data) {
var data_array = {};
var msg_string = '';
var current_date = new Date();
var current_time = current_date.getTime();
session_info.protocol = data.protocol;
session_info.curr_delay = (data.effective_latency / 1000).toFixed(2);
session_info.session_length = current_time - session_start_time;
session_info.ping_time = data.ping_time;
session_info.jitter = data.jitter;
session_info.packet_loss = data.packet_loss;
session_info.effective_latency = data.effective_latency;
session_info.mean_opinion_score = data.mean_opinion_score;
session_info.restarts = data.restarts;
if (socket_emits == 0) {
data_array = {};
data_array.type = 'webrtc_log_data_full';
data_array.connection_protocol = session_info.protocol;
data_array.threshold = 0;
data_array.curr_delay = session_info.curr_delay;
data_array.session_length = session_info.session_length;
data_array.date = current_time;
data_array.browser_codename = session_info.browser_codename;
data_array.browser_name = session_info.browser_name;
data_array.user_agent = session_info.user_agent;
data_array.browser_version = session_info.browser_version;
data_array.cookies_enabled = session_info.cookies_enabled;
data_array.platform = session_info.platform;
data_array.player_version = session_info.player_version;
data_array.stream = session_info.stream;
data_array.restarts = session_info.restarts;
data_array.delay_target = 0;
data_array.op_sys = '';
data_array.flash_version = '';
data_array.remote_ip = session_info.remote_ip;
data_array.http_referrer = session_info.http_referrer;
data_array.php_session_id = session_info.php_session_id;
data_array.user_email = session_info.session_email;
data_array.webrtc_protocol = session_info.protocol;
data_array.ping_time = session_info.ping_time;
data_array.jitter = session_info.jitter;
data_array.packet_loss = session_info.packet_loss;
data_array.effective_latency = session_info.effective_latency;
data_array.mean_opinion_score = session_info.mean_opinion_score;
data_array.session_id = session_info.session_id;
msg_string = JSON.stringify(data_array);
if (socket.readyState == 1) { socket.send(msg_string); }
}
else {
data_array = {};
data_array.type = 'webrtc_log_data';
data_array.session_id = session_info.session_id;
data_array.php_session_id = session_info.php_session_id;
data_array.connection_protocol = session_info.protocol;
data_array.restarts = session_info.restarts;
data_array.threshold = 0;
data_array.curr_delay = session_info.curr_delay;
data_array.session_length = session_info.session_length;
data_array.date = current_time;
data_array.webrtc_protocol = session_info.protocol;
data_array.ping_time = session_info.ping_time;
data_array.jitter = session_info.jitter;
data_array.packet_loss = session_info.packet_loss;
data_array.effective_latency = session_info.effective_latency;
data_array.mean_opinion_score = session_info.mean_opinion_score;
data_array.stream = session_info.stream;
msg_string = JSON.stringify(data_array);
if (socket.readyState == 1) { socket.send(msg_string); }
}
socket_emits++;
if (socket_emits == 100) { socket_emits = 0; }
}
All times are GMT
16 June 2024 | 20:30 GMT
During the week
European parliamentary elections may be over but the ramifications of the vote are still being felt across the Euro area, especially in France, where a snap election was called in the aftermath of the results.
Across the channel, there are now less than three weeks to go before the UK's general election.
Bank of England rate setters enter this week's monetary policy deliberation with key inflation data released a day before the interest rate announcement. However, Barclays posited that the bank would set a very high bar for any changes in either the vote split or the guidance provided by the Monetary Policy Summary and Minutes.
Market participants expect a quiet trading day on Wednesday, with a US federal holiday on the docket. On the same day, the BoJ is set to release the MPM minutes and BofA anticipates the release will be closely watched for hints on the BoJ’s thinking on QT, and distance to the next rate hike—though some of the uncertainties around JGB purchases may be resolved by the time the minutes are released.
On Thursday, the ECB is due to release its latest Economic Bulletin.
A reminder too that it is Quadruple witching for equity indices on Friday, as well as Flash PMI readings from across major economies.
Monday 17 June
02:00 - Mainland China May Industrial Production
Consensus: 6.2% (prev 6.7%)
HSBC expected industrial production to grow by 6.3% y/y in May. "The manufacturing PMI in May fell 0.9ppt from April to 49.5, while the pace of expansion in production also slowed, although it remained in expansion at 50.8. Based on high-frequency data, industrial production was generally stable. "Among them, the operating rates of automobile semi-steel tyres and blast furnaces were both higher than historical levels," the bank said.
Speakers: ECB's Lagarde, Lane, de Guindos | Fed's Harker
Tuesday 18 June
04:30 - RBA Interest Rate Decision
Consensus: On Hold (prev 4.35%)
JP Morgan predicted that the RBA would remain on hold, although developments since the last meeting require a vigilant tone to be maintained. "We expect the board will argue that inflation expectations are anchored which allows them to partially look through the consumption lift. The guidance that the board “is not ruling anything in or out” is likely to remain, as is the statement that it will be “some time yet” before inflation is sustainably back at the target. The more dovish remarks will likely relate to offshore matters, particularly ongoing weakness in China and geopolitical risks, though we expect the global theme of sticky services inflation will be mentioned again as a cautionary tale," the investment bank's analysts wrote.
09:00 - Germany Jun ZEW Expectations
Consensus: 49.5 (prev 47.1)
HSBC noted that in May, ZEW economic expectations climbed to the highest level for almost three years. "For June, we expect the indicator to dip slightly. Stock markets have taken a hit after rate cut expectations in the eurozone and particularly the US have been dialled down. Large gains made by right-wing parties in the European election may have further dampened sentiment. Meanwhile, the assessment of the current economic situation in Germany should see an improvement, but remain overall at depressed levels," the bank predicted.
12:30 - US May Retail Sales Advance
Consensus: 0.3% (prev 0.0%)
"Helping to support overall spending, unit vehicle sales (Ward’s) rose 1.0% in May. Vehicles and parts make up almost 20% of overall spending, so even small moves here can have an outsized impact," BMO's Scott Anderson noted. "Providing some offset was a 3.6% drop in retail gasoline prices, according to the latest CPI report, which will weigh on gas station receipts. Rising gasoline inventories in the last two weeks of May suggest demand might also be weakening."
11:50 - Japan May Trade Balance
Consensus: -1298.5 bln (prev -465.6 bln)
Barclays estimated Japan’s trade balance slipped back into the red with imports increasing on higher oil prices and JPY depreciation despite firm exports of autos/auto parts and chip-making machinery/electronic parts.
Speakers: ECB's Knot, Cipollone, de Guindos, Villeroy | Fed's Cook, Barkin, Logan, Kugler, Musalem, Goolsbee, Collins | RBNZ's Conway
Wednesday 19 June
06:00 - UK May CPI/Core CPI
Consensus: 2.0% (prev 2.3%) / 3.4% (prev 3.9%)
Deutsche Bank said after a blockbuster upside surprise to CPI in April, it expected price momentum to slow a little more. "Headline CPI, we think, will slow to 2.1% y/y. Core CPI, we estimate will edge lower to 3.5% y-o-y. And services CPI we expect will slow to 5.6% y-o-y. For RPI, we expect price pressures to drop to 3.1% y/y." The bank estimated that some spillover from April price resets in the recreational, personal and leisure services baskets would keep inflation higher in May. "We also expect airfares to stay elevated. Beyond the services basket, the good news is that we will continue to see disinflationary momentum build in both the food and core goods categories. Risks to our forecasts are skewed marginally to the downside."
21:00 - Brazil Jun Interest Rate Decision
Consensus: On Hold (prev 10.50%)
Oxford Economic expect Brazil's central bank to pause and keep the Selic rate at 10.5% at its upcoming policy decision on Wednesday. "The central bank’s credibility has been put into question as President Lula gradually appoints his own board of directors, which have been perceived as more dovish, stressing yields. We expect a shift in tone to regain credibility, promising a longer period within a contractionary stance until long-run inflation expectations are re-anchored. We project the Selic rate to end this year unchanged at 10.5%," the research firm said.
Speakers: ECB's Centeno
Thursday 20 June
02:15 - PBoC Interest Rate Decision
Consensus: On Hold (prev 3.45%)
"We expect the one-year Loan Prime Rate (LPR) to stay at 3.45% in June. As depreciation
pressure on the RMB remains, we expect the PBOC to prefer liquidity injections to provide
support given considerations about exchange rate stability. Meanwhile, government bond
issuance has accelerated significantly," HSBC posited.
08:30 - SNB Interest Rate Decision
Consensus: 25bps Cut (prev 1.50%)
"We expect the policy rate to be cut by 25bp to 1.25% at this upcoming meeting, mainly because the SNB is likely to be increasingly confident that inflation will remain below 2%," Nomura predicted. "However, it is a very finely balanced decision. Nevertheless, it is our base case because inflation is within the target range, it is expected to remain there and the SNB thinks policy is currently restrictive. Market pricing can be volatile, but currently, 20bp is priced for this meeting, though just a few days ago it was almost 50/50. Beyond the June meeting, we expect further progress on inflation, such that the SNB may cut twice more in 2024."
08:00 - Norway Interest Rate Decision
Consensus: On Hold (prev 4.50%)
Danske noted that in March, Norges Bank signalled the first rate cut of 25bp in September, conditional on the economic development going as expected. The rate path in the accompanying monetary policy report indicated around 80% probability of a cut in September. At the ‘small
meeting’ in May, NB indicated that developments since March could indicate that there may be a need to keep the rate up somewhat longer than expected in March. Although inflation has been lower than expected, economic growth appears to be picking up, reducing the need for lower interest rates.
11:00 - BoE Interest Rate Decision
Consensus: On Hold (prev 5.25%)
Nomura's George Moran predicted the BoE would vote 7-2 in favour of leaving the bank rate unchanged at 5.25%, despite having raised prospects of a June cut at its May meeting. "Inflation and wage data have been stronger than expected since then. We expect only minor hawkish changes to the guidance, reflecting increased concerns about inflation persistence and a reduced impact of monetary policy on the real economy."
11:50 - Japan May CPI
Consensus: 2.9% (prev 2.5%)
"We expect Japan-style core CPI (ex fresh food) to rebound to 2.5% yoy, from 2.2% yoy in April, because of an increase in electricity prices due to higher renewable energy power generation promotion levy," Citi said. "Meanwhile, we expect BoJ-style core CPI (ex fresh food and energy) to slow further to 2.3% yoy from 2.4% yoy previously."
Speakers: Fed's Barkin
Friday 21 June
06:00 - UK May Retail Sales
Consensus: M/M 1.6% (prev -2.3%)
"The April commentary suggested that poor weather largely contributed to the sharp decline in
sales. Sadly, the weather failed to improve materially in May," SG analysts wrote. "As a result, the BRC commentary suggested that this minimal improvement in the weather only resulted in a modest rebound in retail sales, despite the bank holiday weekend seeing strong sales. Therefore, we only expect there to have been a rebound of 0.8% mom in May, after -2% mom in April." The French bank's analysts added that more generally, real household disposable income is likely to grow throughout the year, as slower inflation, tax cuts and still resilient wage growth offset some household remortgaging at higher rates."
Speakers: ECB's Nagel