I noticed the old backtest starts giving different results over the weekend. I suspect this may be due to incorrect price and volume data. Particularly in the attached simplified backtest, on 27th May 2016, ew_price is 99.43 and ew_volume is 1505852 making its dollar volume 149726864, which is less than cut_off_dol_vol of 153094813 and hence not selected. While according to yahoo data on that day, ew_price should be 36.28 and ew_vol should be 5424900, making its dollar volume 196815372 and should be selected.

rrc_sym has string format to be LOM R735QTJ8XC9X. This is probably due to ticker change but cannot find such records on google.

Also the price seems to differ by a small amount for a number of symbols (probably due to rounding) on certain days which make a visible difference when compounded over a long period.