The figure on the left shows our proposed flowchart of the steps needed in the design of a trading system Click on it to magnify.
For a novice trader, the task seems quite challenging, but the trading profession, like many other professions, is not for lazy people.
There are other less through ways, of course, for example, going directly from limited testing to paper-trading, but this longer flow ensures that a system that shows profitability at the end of this pipeline will be performing close to its backtested performance.
Furthermore, the trader will be trading it confidently, conscious of what to expect in terms of results, per cent gainers, and drawdowns.
Of course, this a long process, taking from months to more than a year. But, like Kevin Davey says in his book “Building Algorithmic Trading Systems” ‘That’s how it’s supposed to be. Think about it for a second – if it were easy to find a strategy, don’t you think others would have already found it and exploited it?’
Kevin Davey states that strategy development is like a factory, a pipeline of ideas that get evolved along the refining process until its output, as garbage or as gold nuts. Accordingly, there is the need to keep the factory working all the time, loading it with new preliminary strategies.
Throughout this and future articles, we are going to explore Fig 1 chart flow and find out what is required on every step of the process.
Kevin Davey on his book (see reference below) gives an excellent list of things to consider about idea gathering:
- Keep an updated list of ideas. Whenever you jump into a trading idea or something that intrigues you, write it down on your list.
- Look for ideas. Ideas are around us in books, web pages, internet forums, and magazines.
- Dumb ideas are those never tested. Everything can be a profitable idea. Even the craziest idea might end as a sound system.
- If you make a mistake while coding (or in your script if you aren’t coding), test it anyway. Penicillin was found by chance (gl/3oF2QK )
- If your idea results in a lousy system, try the opposite: switch buy and sell signals and see what happens, although not always works, it might.
- Plan to test one to five strategies per week. With this amount of inputs, it may take six months, but you’ll end up with a pack of good trading systems.
- Find other traders and offer them to swap ideas and strategies. Take what others have and build strategies around those ideas.
Before going on into limited or extended testing, we need to define the specific objectives our system must accomplish.
A list of the items might be:
- The possible markets the system is going to trade
- The Time-frame or time-frames applicable
- Minimum volatility to trade
- Allowed time intervals
- Purely automatic, Automatic entries and manual on exits or just Expert advisor.
- Reward-to-risk desired interval (aiming for 1.5:1 at least is a good starting point)
- Minimum per cent gainers we need to be comfortable with.
- Minimum quality criteria for the system:
- maximum allowed coefficient of variation
- Minimum quality metrics ( Sharpe, Sortino, SQN …)
- Maximum drawdown length
- Trading on strength / Trading on weakness
- More than X trades a day / less than X trades a day
- More than five losers in a row
- Targets too large / short
Idea Test Plan
We take an idea from our list of ideas, and we decide how to develop the following details:
- Testing and trading platform
- Data needed
- market direction
- timeframe or bar size
- trading intervals (optional)
- Entry rules
- Filters to allow long and allow short signals
- Triggers for long and short signals
- Exit rules
- Long and short stops
- trail stops
- volatility stops
- Profit targets
At this stage, the position sizing algorithm should be kept to one unit per trade. We need to test its performance with a constant unitary size.
Our next theme will be The Strategy Tester
Reference: Buiding Winning Algorithmic Trading Systems, Kevin J. Davey. Wiley, 2014