I'm constructing money-neutral spread by this formula:

Spread = log(P1) - log(P2), where P1 and P2 is prices of two instruments

But sometimes spread can get into negative zone, when log(P1) < log(P2). How to avoid this and make spread always positive?

  • $\begingroup$ Adding additional information may help us understand your needs. I mean: why not a simple value? $\endgroup$ Apr 10, 2014 at 6:57
  • $\begingroup$ spread sign is not important. P&L will be determined by change in equity line. $\endgroup$
    – dkhokhlov
    Apr 10, 2014 at 7:17
  • $\begingroup$ My backtesting program accepts only data with positive quotes. I want to backtest this spread like standalone instrument. $\endgroup$ Apr 10, 2014 at 8:05
  • $\begingroup$ Multiply it by $-1$. $\endgroup$ Apr 10, 2014 at 8:48
  • $\begingroup$ but if spread sometimes is positive, sometimes is negative? $\endgroup$ Apr 10, 2014 at 9:17

2 Answers 2


Solution is following:

  • Calculate the spread: spread = log(P1 / P2)
  • Find minimum value of spread: minVal = Min(spread)
  • If minVal < 0 then do transformation for spread: spread = spread + Abs(minVal) + 0.01

Now we have spread with positive values.


My understanding is following:

Spread = Log(P1) - lambda * Log(P2) Lambda is the hedging ratio to eliminate market risk

Assuming the two securities are cointegrated, if Spread is positive, security P1 is relatively more expensive than P2. As a trader, you might want to consider short P1 and long P2.

If Spread is negative, security P1 is cheaper than P2 in relative term. So one might want to long P1 and short P2.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.