Score should be the same as the monthly.
Main difference will be:
Monthly
EOM = Month() != Ref(Month(),-1);
PositionScore = IIf(Year()>=1985 AND EOM,Score,scoreNoRotate);
Weekly
DofW = dayofweek() < Ref(dayofweek(),-1);
PositionScore = IIf(Year()>=1985 AND DofW,score,scoreNoRotate);