Trading systems or strategies use a predefined set of trading rules to generate objective buy and sell signals. While the variety of trading systems is almost limitless, most profitable trading systems have certain elements in common. Whether you build your own strategy or purchase one, trading a strategy with these characteristics will maximize your chances of success.
Most profitable trading strategies have the right level of complexity in their trading logic. These goldilocks strategies are not too simple and not too complex. The financial markets are certainly complex. An overly simple strategy is unlikely to respond adequately to the market’s complexity. On the other hand, if the strategy is overly complex, it may be over-fit to the market. An over-fit strategy is one that doesn’t generalize well to data other than that on which it was based. Complex strategies tend to be over-sensitive to changes in the market and need constant adjustment and modification.
A profitable trading strategy needs to have realistic entries and exits. For example, it’s easy in most scripting languages to specify limit orders for a trade entry. In practice, a limit order may not be filled, depending on the liquidity of the market and how many traders have orders in front of yours. Similarly, it may be possible to specify a market-on-close exit, but if the order is placed exactly at the market’s close, there will be no opportunity to fill it. The simulation results, on the other hand, may not take this into account. Also, some markets may not allow certain types of orders. If your market only allows market orders, a strategy based on stop orders may not be profitable if the strategy logic has to be converted to market orders.
Many traders focus more on trade entries than exits. However, in many cases, exits are more important. One essential element of strategy exit logic is that a profitable trading system should contain exits for both exiting at a loss and exiting at a profit. An example of exiting at a loss is a protective (money management) stop. A target exit, based on a limit order, is an example of exiting at a profit. Without the ability to exit a losing trade, the losses in a trading strategy are potentially unlimited. Similarly, without the ability to exit a profitable trade, it’s likely to turn into a loss.
Although it sounds obvious, an important element of a profitable trading strategy is correct coding. Certainly, if you develop a system yourself, it’s important to verify that the system code does what you intend. It’s tempting to start testing a newly code strategy for profitability as soon as the code verifies or compiles, but it’s important to check that the intended logic was properly coded first.
Another characteristic that’s required for profitability is reasonable cost assumptions. Trading costs include commissions, fees, and slippage. The latter is defined as the difference between the order price and the price at which the order is filled. A realistic amount for slippage depends on the market and the type of order. In some markets, stop orders have less slippage than market orders, whereas limit orders have zero slippage (although they may not be filled). If your trading platform has built-in logic to convert limit orders to market orders, then slippage would need to be assumed even for limit orders. Assuming too little slippage can mean the difference between a profitable system and a losing one.
In general, the most profitable systems are the most consistent ones. Demonstrating consistent profitability over a long period of time means the system works well in a variety of market conditions. Trading systems that have extended flat or drawdown periods are clearly tailored to certain types of market conditions. If those conditions don’t manifest in the future, there’s no reason to expect the strategy to be profitable. Also, the historical performance results should be based on realistic assumptions for starting equity and risk. If the stated performance is based on a much higher starting account size than you’ll have or the strategy requires taking on more risk than you can tolerate, the strategy may not be profitable for you.
Finally, profitable trading strategies have good real-time or out-of-sample results. Trading systems are typically developed using price data for one or more markets. The data over which the strategy is initially developed is referred to as the in-sample data set. Once a strategy is developed, it should always be tested on a second set of price data that was not used during development. This is called the out-of-sample data set. Only strategies that are profitable on out-of-sample data are likely to be profitable in the future. Once a strategy is deployed, it can be tracked live — either simulated or with real money. Profitable real-time tracking results are the final arbiter of profitability.
Reprinted with permission Michael Bryant (www.adaptrade.com)