Polish refiners PKN Orlen and Lotos said weak margins would continue to weigh on operating results which dropped 60 percent in their second quarters, although both beat low expectations on the net profit level.
But large one-off gains from the revaluation of their required oil reserves helped the net profits of the two state-controlled companies outpace market forecasts, even as underlying operating figures slipped.
Lotos shares edged 0.5 percent higher, while PKN slipped 0.5 percent. But both outperformed Warsaw's main index .WIG20, which was down 1.1 percent.
Only PKN's Czech unit Unipetrol, which did not benefit from a quarterly revaluation of its oil reserves, disappointed investors with a larger than expected net loss, dragging its shares 5.7 percent lower.
There still aren't many positive signals from the economy. Last week the refining margins have dropped under $2 a barrel, PKN Orlen's finance director Slawomir Jedrzejczyk said.
Lotos chief executive Mariusz Machajewski said refining margins would stabilise in the third quarter, albeit at very low levels, helping net profit at least meet its weak operating performance from the second quarter.
The central European oil groups were tripped up by contracting refining and petrochemical margins due to lower demand, as well as a narrowing gap between Ural oil it refines and Brent oil used as a benchmark for prices.
PKN, which has struggled with its hefty debt, posted a 33 percent drop in net profit to 1.17 billion zlotys ($408 million), above the 1.02 billion forecast in a Reuters poll.
Lotos's net profit, fuelled mainly by financial gains, jumped 85 percent to 739 million zlotys, compared to an average analyst forecast of 683 million.
Rising oil prices boosted both refiners operating results through inventory revaluations as PKN gained 928 milion zlotys and Lotos 239 million.
Moreover, the strengthening zloty reduced the value of foreign currency loans bringing a gain of 619 million zlotys to Orlen and 763 million to Lotos.
(Editing by Mike Nesbit and Dan Lalor)
($1 = 2.867 zlotys)