StockFetcher Forums · Filter Exchange · HOW TO DESIGN A SYSTEM (NOT JUST A FILTER) | << 1 ... 39 40 41 42 43 >>Post Follow-up |
frsrblch 35 posts msg #118776 - Ignore frsrblch |
3/26/2014 12:15:50 PM Usually when I get massive returns on a backtest, I've made an error somewhere in my Excel calculations, but if the SF backtest is spitting out these results, I would say this warrants further study. How did this broader filter perform over more recent periods, and how does it compare to the S&P500-only version of the filter? |
Kegger 3 posts msg #118785 - Ignore Kegger |
3/26/2014 10:11:20 PM So let me start with the baseline filter results, adding in the missing "S&P 500" line to select only s&p 500 stocks. Here are the numbers for the last 12 years, in 2 year increments. Each 2 years starts over with 100K initial balance. It was a little easier than trying to compound the results and it lended for some nice comparisons as well. These are my results for the original filter: Period Ending Value 2002-2004 216,879 2004-2006 137,264 2006-2008 120,913 2008-2010 158,622 2010-2012 142,129 2012-2014 172,025 Then, I removed the "S&P 500" entry criteria and tested again: Period Ending Value 2002-2004 721,957 2004-2006 233,169 2006-2008 467,942 2008-2010 209,871 2010-2012 2,538,315 2012-2014 630,692 Yeah, thats ridiculous. 100K to 2.5M in 2 years. haha fat chance. I dug into that item a little deeper and noticed that most of the stocks were penny stocks, which not only would be insane to trade at that volume it probably wouldn't even be feasible. So I added a limit to the entry criteria of the next test of "price above 1": Period Ending Value 2002-2004 686,574 2004-2006 275,781 2006-2008 229,521 2008-2010 195,050 2010-2012 481,360 2012-2014 265,701 Still pretty insane, and thinking too good to be true. Deeper dive showed a lot of OTC stocks, which I can't trade with my account anyway normally. So I'll filter those out next by adding "market is not otcbb" to the entry filter: Period Ending Value 2002-2004 662,977 2004-2006 175,977 2006-2008 291,727 2008-2010 113,527 2010-2012 186,958 2012-2014 253,748 So now its looking like something that might actually be tradeable for me. Except when I check my account I notice that I get charged more per trade depending on volume. So normally I get charged 5.95/trade, but if I trade 1500 shares it goes up to 8.95, and if I try to trade like 4000 shares now I'm paying $20/trade. Is that normal? Anyway, its what I have to work with. I could test that by breaking up into sections by price but now I've tripled or quadrupled my testing effort. So I take the cowards way out and just limit the low end to stocks above $5 with "price above 5 and market is not otcbb": Period Ending Value 2002-2004 247,581 2004-2006 168,242 2006-2008 189,716 2008-2010 106,933 2010-2012 126,807 2012-2014 186,189 So now I'm back to something I could put into real use. Comparing to the original filter results, I see that this version does better in good years but worse in bad years. I suppose I should compound the results to verify, but I suspect this new version does perform better overall. So where does that leave me? I guess the underlying assumption that pair trading has to be correlated to the index is still mostly valid, but maybe it doesn't really matter which index is used. I should try the same with a different index and see what happens. Anyway, thanks for the great initial post on this, it really got me thinking in different directions and I feel like I'm a better trader for it. |
novacane32000 331 posts msg #118835 - Ignore novacane32000 |
3/28/2014 8:23:13 PM Drawdowns are the first thing I look at when backtesting. Doesnt matter if you are making 40% a yr for 10 yrs straight,if you have a 50% drawdown in just one of those yrs that is enough to scare me off. Could you stomach losing half your acct? Trade for modest and consistent profits and protect your hard earned money. Trying to get rich off trading will make you poor. |
alf44 2,025 posts msg #118836 - Ignore alf44 |
3/28/2014 10:42:28 PM . "Trade for modest and consistent profits and protect your hard earned money. Trying to get rich off trading will make you poor." ----- Well said ! That should be written on a post-it ... and stuck on your forehead every morning !!! . |
jemarcks 26 posts msg #121002 - Ignore jemarcks modified |
7/10/2014 4:48:44 PM Kevin, EDIT: My post was somehow eaten so here it is again. Thanks for this system Kevin! Great work! I am paper trading this system to see how it works on out of sample data for a while. I had a question... when the entry filter returns several stocks with a zscore of -3.87, how do you know which stock to pick? Thanks. jeff |
petersst 7 posts msg #121056 - Ignore petersst |
7/19/2014 4:49:07 PM Ciao Kevin! Is there an updated final filter for SF? The filter in the email trail back to 2011 seems to change with enhancements and when I run it, it does not return any stocks. Thanks in advance for posting the latest and greatest on the filter. Cheers, Scott |
Caspian101 5 posts msg #121374 - Ignore Caspian101 modified |
8/22/2014 3:30:17 PM This is an excellent filter, thanks. |
jemarcks 26 posts msg #121489 - Ignore jemarcks |
9/11/2014 3:36:43 PM I have been tinkering with this Zscore system that Kevin published (Thanks Kevin!!) for a week or so using Stratasearch for back testing and wanted to share some results. First I wanted to reproduce Kevin's results and was able to do that. I used the same evaluation period, and same filter as posted on the first page of this thread. Then I added an additional entry filter to limit stocks to those > $1 per share and the MA(20) of its volume * close >= 200000 to find the stock that are liquid enough. This didnt change Kevins results much at all but here they are as the baseline. This is from the variable equity report using monthly Sharpe Ratio. Multiply by 3.46 to get annual. PortSize AvgAnnReturn ZS RRRatio SharpeRatio ZS 1 295.94 % 2.7289 0.2882 2 199.84 % 3.2404 0.3302 3 218.03 % 4.8694 0.3707 4 180.24 % 6.2112 0.3937 5 192.43 % 8.9181 0.4474 6 186.79 % 13.01 0.4959 7 159.63 % 13.1717 0.4986 8 130.22 % 13.4424 0.4945 9 105.56 % 11.5657 0.4922 10 86.32 %8.9019 0.4649 Next I was thinking about the ranking function to select stocks. Kevins system uses ZScore ascending which picks the stocks with the lowest zscore first which seems reasonable. (ZScore(@zdays)) Next I tried Price Rate of Change (proc) to rank the stocks selected and reran the combinations of days from 10 to 30. proc(close,@zdays) The results were better with PROC than ZScore as the ranking function. This seems to make sense because zscore tells us how far from the mean we have dipped and PROC tells us the rate of change of the dip and we have captured more profit from the stocks dipping the hardest. PortSize AvgAnnReturn ZSROC RRRatio SharpeRatio ZSROC 1 111.69 % 1.8519 0.254 2 214.83 % 4.0376 0.3315 3 208.65 % 5.5788 0.3975 4 225.13 % 8.0273 0.4319 5 230.02 % 10.0068 0.4676 6 272.08 % 16.5115 0.5205 7 201.74 % 16.1121 0.5165 8 147.99 % 14.1959 0.5126 9 120.93 % 10.967 0.4948 10 104.78 % 10.392 0.4954 The max drawdown for both systems was about 11.5% Percent in market stayed about 58%. I would be happy to post the detailed performance charts if someone will explain how its done. Thanks and I welcome your feedback on this excellent system. Also, is anyone still trading this system or some variant? Im curious how it has been working. If you found a more profitable system than this one, I would be all ears! |
tennisplayer2 210 posts msg #121493 - Ignore tennisplayer2 |
9/12/2014 12:12:25 AM How will the filter look like with Price rate of change (PROC) in it? Thanks. |
jemarcks 26 posts msg #121494 - Ignore jemarcks |
9/12/2014 9:47:40 AM When backtesting, in the selection criteria you would use roc(16,1) ascending. |
StockFetcher Forums · Filter Exchange · HOW TO DESIGN A SYSTEM (NOT JUST A FILTER) | << 1 ... 39 40 41 42 43 >>Post Follow-up |
Copyright 2022 - Vestyl Software L.L.C.•Terms of Service | License | Questions or comments? Contact Us
EOD Data sources: DDFPlus & CSI Data
Quotes delayed during active market hours. Delay times are at least 15 mins for NASDAQ, 20 mins for NYSE and Amex. Delayed intraday data provided by DDFPlus