1) My findings are that you can't ever predict future stock performance based on historical data, no matter how many tests/trials/algorithms you run. The reason for this is because we, as mere mortal humans, just simply can't predict the future -- no matter how much we try to obfuscate this fact with math and data science, unless you're modeling every single thing that's happening on the planet at the same time and have created a singularity or something, you just can't. This means there is always something potentially lurking around the corner that can absolutely destroy your returns. Now, can you have success in the short/medium term? Maybe. You have a chance to come out a winner in Vegas too.
2) The difference between simulated trades and real trades is actually quite significant. Every real trade you make on the market, no matter how small and/or insignificant you think it is, actually does have a real impact on the market. This is where I find it typically goes sideways when people come up with algorithms based on historical data. An analogy for this is voting -- you might feel that your one single vote doesn't matter, but the fact that everyone voted is everything. You can't easily simulate this as far as I can think of.