check your data before you blame your strategy
bad week, went looking for what changed in my logic. nothing had. what changed was that a chunk of my session had thinner data than usual and my averages were computed over fewer points than they should have been.
the strategy behaved exactly as written. it was just written to assume input that wasn't there.
now the first question on a bad day is "was the data normal", not "what did i do wrong". saves a lot of pointless rewriting.