Oil and gas price surge turns BP into a ‘cash machine’