Stock Trading Using Stochastics (End of Day)
Stochastics is one of the most widely used technical indicators in the world. Surprisely, most traders like to modify the original indicator into something else because they find the original implementation too noisy.
I am going to show you a trading setup using the original Stochastics SlowK indicator that works very well on daily data across many stocks that I think you will consider re-examine this classic technical indicator once more.
The Trading Setup
1. Applies on daily stock data
2. SlowK using the original 5, 3 parameter setting
3. This setup is long side only
4. Whenever SlowK crosses below the original oversold level, 25, we have a buy signal – go long at market
5. When SlowK recovers from the oversold level, and exceeded the original overbought level, 75, exit the open position at market
6. If within 5 days #5 has not happened, exit the open position at market anyway
Here is a chart showing the setup at work,
To implement the system, there are 2 issues that have to be addressed,
1. For long term testing of trading systems on stock data, it is inheritedly not stable because the surviving stocks we see today are in general long side biased as they survived for so long.
The solution is to include stock symbols that perform very badly for extended period of time in our testing so that we can tell if the system can survive such bad condition.
2. Position size cannot be fixed for stock trading system when we are testing over a long period of time because the stock price we see today in the chart is not really the price printed the day when the stock was traded due to split adjustment, dividend adjustment, etc. The price in the adjusted data series for symbols like IBM from 10 years ago is such a small number comparing to the current price level, it is making the trading system statistics we can collect less useful in general.
To validate the system we can check the system across a set of symbols to see if it performs in general pretty well over majority of the symbols, or, by using fixed size position, cross check each symbol over small partitions of the testing period to see if consistencies exists in the performance for each individual symbol over each individual time period, and as a whole.
I have written the system using formula indicator that takes into account of both position sizing and fixed position size (when the percent of equity parameter is set to 0).
The system is available here, SlowK Swing Trading System.
Some basic checking is done on the Dow Industrial Components.
I have set the system to start with $10K capital using cash only strategy. And always use round lot size of 100. Commission is taken into account too.
Here is the result for Exxon Mobile (XOM).
Remember that I mentioned including symbols with prolonged distressed perfomance? Here is the result for Intel (INTC).
Now, on American Express (AXP).
From these charts, we have learned a few things,
1. This sytem can handle prolonged bear market in a stock pretty well.
2. The system is pretty stable in terms of performance over time.
So, how does this system fair over all 30 Dow components, I ran the system through all of them in the pattern scanner, over the past 2000 trading days.
The system fair pretty well as there is only one symbol that is losing money.
The most important thing that makes this system work is that it steps in when the situation looks very bad. It does not wait for, say, a confirmation day, before entering the market. That is the very essence of what SlowK is all about – It gives you a setup, so that you are prepared for what may happen next.
If you are a discretionary trader, think of what this setup means – if you are aware of the setup from daily data, you are then well prepared to take advantage of the possible turnaround in the market by monitoring the real-time action closely.
For system traders, the topic of integrating multiple time frames into the same system will be suitable for another full length article. In short, the risk taken by the daily system should be greatly reduced if real-time confirmation is taken into account.