Oil is priced in USD. The USD cross rate has lost 30% since Jan. 2002. Oil in constant Jan. 2002 USD would be about $30 today instead of $40 if the USD had not corrected.
There is also increased demand, but even if we have a recession, the price of oil will likely remain high due to the weak USD.