There is no perfect trading system.
I have developed, coded, and tested literally thousands of trading systems. I am not exaggerating. They are all imperfect. Now, I would have always agreed with that on a intellectual level. But I think I did not really “get” that until I had done the work of developing these systems and tested them though various market conditions.
Now I think of systems in terms of yield. A system is not unlike a bond that has a yield that streams off of the instrument itself.
If you like things more literal. Imagine you build windmills. You can maximize efficiency of your blade shape for different speeds and frequency of winds. But one blade will not be efficient in all conditions. Just like a real wind farm, you maximize your blade shape for your prevailing wind condition. If the winds are significantly above or below that condition it is often best to just brake-stop the windmill.
System designers obsess over the shape of their blade, but they often do not think about measuring the conditions in which that blade has maximum efficiency.