I suspect a bug with the Strategy Tester when using Fast genetic based algorithm. After a few passes which can either generate zero, negative or positive profit, then the following passes always generate 0.
I tested the values of one of the pass which generated 0 by disabling the optimization and it generated results. So it may be a problem of cache or resetting data when running the optimization.
I am not the owner of the EA so I cannot provide you with any code. The bug started less than 1 month ago because on January and beginning of February it was working fine.
There is another bug which is probably related to the first one, sometimes the Optimization Graph is not cleared after a stop and start.
MetaTrader Version 5.00 build 2007 25 Feb 2019
EDIT: I just identified that the number of passes after which it always generates 0 corresponds to the number of agents. So it may be a bug when you reset an agent in order to start a new pass.
This behavior has been observed since around Feb, 20th. There's quite a few threads about this. I don't know if it's related to a specific build or Windows version, because in my case it also occurs with an older build (1995 of Feb 15th) on a fresh Win 7 installation. A workaround exists in calling ExpertRemove() prior to testing cycle completion to free the cache, but that requires modification of EA source code.