* The system must make money - This is easy to say, but hard to do. Maximizing the percent return should be your primary objective while designing a trading system.

* The system must be able to limit risks - It's difficult to use a system that fluctuates between extreme highs and lows; not only does it inhibit your ability to liquidate, but it can also be psychologically taxing. Furthermore, by limiting risks, you are able to decrease the effect of a "bad entry" (for example, going long during a downward fluctuation).

* The system's parameters must be stable and feasible - Trading systems cannot rely on coincidence or luck! The system designer can fulfill this principle of stability by broadening the parameters and not optimizing too much in an effort to increase his or her chances of success. The feasibility of parameters, including 'slippage', is discussed in the second section of this tutorial. Again, it is very important to take slippage into account when designing a system.

* The system's timeframe must be stable and feasible - For a system's timeframe to be successful, coincidence and luck should not play a factor. Feasibility must also be considered in this instance. If timeframes are set too close together, the resulting amount of trading frequency may not be possible due to software limitations and/or market-side limitations.