Arithmetic/Log returns of positive/negative/0 values

I'm trying to work out the correlation between movements in prices of 2 products i'm tracking. I will extend this to around 20 products but just want to get the basics done first...The problem I have is that the prices I have are sometimes negative or 0 and this causes a problem with log returns. For example if we have series A as -0.25 0 and 0.25 then the arithmetic return between 1st point and 2nd point comes out as -0.75 (using (P2-P1)-1), log return (ln(P2/P1)) produces an error in Excel. I don't think this makes sense as the figure has gone up but shows a -0.75 return (and is this return as a percentage?)

How would you guys go about working out the correlations between different time series of product prices; change price data into log returns, then enter into a correlation matrix? Or Arithmetic returns, or just use prices. Can’t remember exactly the differences between each, other than log returns can be added to give total return…and remember something vaguely about if using log returns then the data has to be normally distributed.

Or would you work out the difference between today’s price and yesterday’s price and then work out the returns of these numbers and correlations from that?

I know it's a lot of questions, if anything i can do the rest if i can just find out what returns i'm supposed to use here (or if i'm supposed to use prices), and how i can get the returns to produce something that makes sense with the negative/positive/0 values.