Sometimes in order to truly understand a system or a task you have to try really hard to suck at it before you can comprehend what success means.
If you are having trouble trying to figure out what makes a trading strategy profitable take a step back for a minute and think about what you would need to incorporate into a strategy to make it horrible. Think of every way you could lose money and then one piece at a time deconstruct the system and rebuild it with the inverse of those elements.
The trick here is to keep things simple and make sure you understand the problem domain you are handling. For example if you think overtrading is a sin, as I do, then the first thing on your list may be “make 100 trades in a day”. Obviously, if you were to make 100 trades in one day you would have to execute a trade ever 3 minutes or so (if I did my math correctly). From that you can incur the root issue with making 100 trades in a single day. Problems that revolve around momentum and your account size (which could translate to having to do with risk management). So, those are two domains you need to understand to write a trading system backed by substantial logic.
What I have found, when it comes to any sort of creative process, is that getting the ball rolling usually the hardest step.