Tuesday
Dec162008
Stock Trading System Simulations: Out of the Starting Block
Tuesday, December 16, 2008 at 12:05AM
| StockMarketStudent | |
![]() |
|
| Using the Portfolio123 screen backtest capability I have discovered some useful formulae. Now it's time to get my feet wet with some simulations.
|
|
At some point in time I have to stop playing with the Portfolio123 screen backtest and move forward. The exercise has been useful and I now have some weapons in my arsenal. But it is time to leave the starting block and get going on development of a trading system. General Trading System ParametersMy initial trading system will hold approximately 30 stocks. I may vary this number as time goes on to achieve the best performance and lowest drawdown. There is nothing cast in stone here. 30 stocks allows me to reduce down to 20 stocks without violating my objectives or up to 40 stocks without having broker's fees impact my results. Based on the last post I will continue to use the ranking system "Fourth Generation with Unfollowed Small". This is a very powerful ranking system that seems well suited for industry strength systems. Now for stock buy rules. Stock Buy RulesAfter long consideration I have decided that the best formula to base my system on is the one listed below, mainly because it is the one most suited for meeting my objectives (stated in one of my first posts): long term, high profit percentage per trade, etc. The formula is a test of "industry strength". i.e. only buy stocks within industries on the rise:FMedian("Close(0)",#Industry)/FMedian("Close(220)",#Industry) >
(1+0.1*FMedian("ATRN(100,0)",#Industry))
with the number of industry constituents greater than 25: NoConst > 25
This second formula assures better reliability as the number of stocks within the industry under consideration has to have a reasonable number of stocks. I set my liquidity filters slightly above what is in my stock universe definition. This will eliminate the majority of cases where liquidity drops shortly after a stock is bought causing the stock to be sold because it dropped out of the stock universe. i.e. there is some slack. Close(0) > 3
AvgDailyTot(66) > 500000 MktCap > 125 As a reminder here is my stock universe definition: Close(0) > 2.50
AvgDailyTot(66) > 350000 MktCap > 100 I added a price filter to weed out stocks that are underperforming over the longer term: Close(0)/Close(250) > 1
After doing some simulation test runs I decided on a stock ranking buy rule: Rank > 98
Stock Sell RulesI want to exit my stock holding if the industry is exhibiting weakness. To detect this condition I used a variation on the buy rule:(FMedian("Close(0)",#Industry)/FMedian("Close(220)",#Industry) <
(1-0.05*FMedian("ATRN(100,0)",#Industry)))
I also want to exit if the stock is underperforming long term:Close(0)/Close(250) < 1
The final sell rules have to do with stock ranking. If the stock ranking drops by 7 points in one week or drops below 80 then I wish to sell the stock. Rank < RankPrev(1) -7
Rank < 80 Simulation SetupThe following screen shot shows the setup immediately prior to running a simulation backtest.![]() Simulation Results![]() Unfortunately, I'm having some internet connection issues. So I can't access any of the stats. I'll end here and pick this up tomorrow (or soon thereafter). Take care and happy trading. |
|









Reader Comments