Stocks higher

Stocks in London and elsewhere across Europe rose on Thursday morning, clawing back some of the losses from the previous session. The FTSE 100 opened up over half a percent, having slid by almost one-and-half-percent in Wednesday’s session. Shares have been assisted by a steadily rising oil price over the last week, though crude prices have eased back about $1 from yesterday’s more than one-week high. Treasury yields remain firm with 10s near 3.44%, which is pressuring gold to $1,685, its weakest since July, lifted the dollar to a two-day high, just short of its 20-year peak struck earlier this month. 

 

Indices stuck in ranges

Indices remain range-bound. The FTSE is smack in the middle of the range it’s traded for the last 12 months. US markets are in a range of a shorter time frame – since June – prices sitting around the halfway point from the June lows to the August highs. And yesterday was an indecisive session on Wall Street, with the major US indices oscillating between being in the red and green all day. The S&P 500 eventually closed up a third of one percent, led by tech as the Nasdaq Composite rose three-quarters of a percent.

 

New chief at Shell

Shell will enter a new era as chief executive Ben van Beurden steps down after almost a decade at the helm. He’s overseen some remarkable changes as the company ditched its dual share structure, moved headquarters to London, committed to becoming a zero carbon business by 2050, endured a pandemic that saw oil prices collapse and a war in Europe that helped produced record profits. It’s been a funny old ten years for the oil industry with drilling now in vogue again. With shares up 38% YTD and 60% in the last 12 months, and with the company reporting record profits of $11.5bn in July, he’s leaving on something of a high. Renewables boss Wael Sawan takes over as CEO.

 

Today’s data

French inflation a tad higher than forecast at 5.9% on the final reading is just adding to the sense that it’s not peaked. Lots of US data today with retail sales, Empire State and Philly Fed manufacturing indices, industrial production figures, plus the weekly unemployment claims data.  

 

Rail strike

US rail workers could walk out for the first time since 1992, bringing the country’s freight network to a standstill. It could cost the US economy $2bn a day and would lead to yet more supply chain headaches. Workers at companies including Union Pacific, CSX and BNSF – which is owned by Warren Buffett’s Berkshire Hathaway – are among the 100,000 who could down tools tomorrow.

Latest news

Sunday, 29 December 2024

Indices

Stock market today: Most Asian stocks fell after US equities declined

Sunday, 29 December 2024

Indices

MicroStrategy joins Nasdaq-100 index: MSTR stock performance analysis 2024

Sunday, 29 December 2024

Indices

Morning Note: Key Levels & Data Driving the Last Monday of 2024

Closing 2024

Thursday, 26 December 2024

Indices

Week ahead: Closing 2024 and First Economic data from 2025

SettingsRequest history8.1.18PHP Version1.13sRequest Duration4MBMemory UsageGET news/{slug}
status
200 OK
full_url
https://web-qa.staging.markets.com/news/stocks-tick-higher-yields-up-shell-chief-steps-down
controller_action
App\Http\Controllers\DynamicContentController@getNewsFromCollection
Theme
Open Button Position
Hide Empty Tabs
Autoshow
Reset to defaults
status
200 OK
full_url
https://web-qa.staging.markets.com/news/stocks-tick-higher-yields-up-shell-chief-steps-down
action_name
controller_action
App\Http\Controllers\DynamicContentController@getNewsFromCollection
uri
GET news/{slug}
controller
App\Http\Controllers\DynamicContentController@getNewsFromCollection
file
app/Http/Controllers/DynamicContentController.php:370-421
middleware
web, SetDomain, GoMarkets, setlocale, trackingparams, redirects, Logout, pagecache, setrisk, gettranslations, getglobalsettings, urlstructure, saveReferral
duration
1.13s
peak_memory
6MB
response
text/html; charset=UTF-8
request_format
html
request_query
[]
request_request
[]
request_headers
0 of 0
array:16 [ "cookie" => array:1 [ 0 => "mktv4_ip_override=eu" ] "accept-encoding" => array:1 [ 0 => "gzip, deflate, br, zstd" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "connection" => array:1 [ 0 => "keep-alive" ] "host" => array:1 [ 0 => "web-qa.staging.markets.com" ] ]
request_cookies
0 of 0
array:1 [ "mktv4_ip_override" => null ]
response_headers
0 of 0
array:3 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Mon, 28 Apr 2025 03:45:31 GMT" ] ]
session_attributes
0 of 0
array:1 [ "_token" => "hun4arU0Y4OlElgwYPNoLgABkGUgZPIn257is0sT" ]
  • infolog[03:45:31] LOG.info: api_7422cbf0039b6871a957bf83cf6cf9c8 [ "\/news\/stocks-tick-higher-yields-u...
  • infolog[03:45:31] LOG.info: api_906e4253f15fa9081ebca22639608d73 [ "\/news\/stocks-tick-higher-yields-u...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • infolog[03:45:31] LOG.info: api_c43a110310c5a482baade552378e6baa [ "\/news\/stocks-tick-higher-yields-u...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • warninglog[03:45:31] LOG.warning: str_replace(): Passing null to parameter #3 ($subject) of type array|string ...
  • infolog[03:45:31] LOG.info: page_451e8a2a75fc4a4abd545af639c2e34c [ "\/news\/stocks-tick-higher-yields-...
  • Booting (17.23ms)time
  • Application (1.11s)time
  • Routing (1.13ms)
  • 1 x Application (98.47%)
    1.11s
    1 x Booting (1.53%)
    17.23ms
    1 x Routing (0.1%)
    1.13ms
    102 templates were rendered
    • 1x news-contentnews-content.blade.php#?blade
    • 1x components.news-landingnews-landing.blade.php#?blade
    • 1x components.news-singlenews-single.blade.php#?blade
    • 1x components.article-navigationarticle-navigation.blade.php#?blade
    • 1x components.text-editortext-editor.blade.php#?blade
    • 1x components.share-listshare-list.blade.php#?blade
    • 1x repeatable.trading-tabletrading-table.blade.php#?blade
    • 6x repeatable.trading-table-labelstrading-table-labels.blade.php#?blade
    • 24x repeatable.trading-table-rowtrading-table-row.blade.php#?blade
    • 3x components.page-advertpage-advert.blade.php#?blade
    • 38x components.strapi-imgstrapi-img.blade.php#?blade
    • 1x components.news-columnnews-column.blade.php#?blade
    • 3x components.spacerspacer.blade.php#?blade
    • 1x components.news-rownews-row.blade.php#?blade
    • 1x layouts.mainmain.blade.php#?blade
    • 1x csscss.blade.php#?blade
    • 1x scripts.hrefmaphrefmap.blade.php#?blade
    • 1x layouts.headerheader.blade.php#?blade
    • 1x layouts.header.mobile-login-buttonsmobile-login-buttons.blade.php#?blade
    • 1x layouts.header.mobile-searchmobile-search.blade.php#?blade
    • 2x repeatable.languageslanguages.blade.php#?blade
    • 1x layouts.header.menumenu.blade.php#?blade
    • 1x layouts.header.search-togglesearch-toggle.blade.php#?blade
    • 1x layouts.header.login-buttonslogin-buttons.blade.php#?blade
    • 1x components.search-resultssearch-results.blade.php#?blade
    • 1x components.blur-animationblur-animation.blade.php#?blade
    • 1x layouts.floating.cookiescookies.blade.php#?blade
    • 1x scripts.breadcrumbsbreadcrumbs.blade.php#?blade
    • 1x components.corner-advertcorner-advert.blade.php#?blade
    • 1x layouts.footerfooter.blade.php#?blade
    • 1x scripts.functionalfunctional.blade.php#?blade
    • 1x scripts.trackingtracking.blade.php#?blade
    uri
    GET news/{slug}
    middleware
    web, SetDomain, GoMarkets, setlocale, trackingparams, redirects, Logout, pagecache, setrisk, gettranslations, getglobalsettings, urlstructure, saveReferral
    controller
    App\Http\Controllers\DynamicContentController@getNewsFromCollection
    file
    app/Http/Controllers/DynamicContentController.php:370-421
    0 statements were executed0μs
          _token
          hun4arU0Y4OlElgwYPNoLgABkGUgZPIn257is0sT
          ClearShow all
          Date ↕MethodURLData
          #12025-04-28 03:45:31GET/news/stocks-tick-higher-yields-up-shell-chief-steps-down/34102