Has it been a merry Christmas for Marks & Spencer? The High Street stalwart lifts the lid on festive trading this week and is tipped to report modest growth in food sales.

This would reverse the trend experienced by rivals Tesco and Sainsbury’s which are expected to admit a fall in sales this week because of a squeeze on food pricing.

But the strength of M&S’s supermarkets will be a rare morsel of good news. Société Générale downgraded the retailer today and cut its target price, reflecting expectations in the City that its general merchandise division — clothing, home furnishings and the like — will suffer its 14th consecutive quarter of falling sales when numbers are revealed on Thursday.

Although Anne Critchlow, a SocGen analyst, thinks M&S is improving margins, she doesn’t think shares will rise much until it sorts out its general merchandise problems. M&S fell 8.1p to 468.95p.

Oil continued to dominate the agenda, with the continued fall in its price polarising producers and consumers. Gas-guzzling cruise operator Carnival jumped 79p to 3007.5p but producers suffered: Tullow Oil lost 5.4p to 407.55p, BG Group fell 12.6p to 851.45p and Royal Dutch Shell was off 23p to 2145.5p.

BP tumbled 10.75p to 399.75p, struggling with not just depressed oil prices but also the plunging rouble. BP owns almost 20% of Russia’s state-owned oil company Rosneft.

The Footsie dropped 32.05 points to 6515.75 Generic drug manufacturer Hikma Pharmaceuticals leapt 106p to 2089.5p after Jefferies backed the business. The broker believes the Jordanian business will rebound this year, after suffering in 2014 from Middle Eastern turmoil and a restructuring of its Algerian operation.

US activist investor fund Elliott Advisors has increased its stake in Italian restaurant chain Prezzo and converted its holding from a contract for difference into shares.

Elliott now owns 13.4% of Prezzo, off 2.25p at 127.62p. The pizza and pasta chain agreed its sale to buy-out group TPG in November, but critics say the deal undervalues the business.

Own brand cleaner-maker McBride improved 1.25p to 79.87p after announcing that first-half trading has been in line, thanks to its ongoing cost-cutting drive and strong demand from Germany.