StockFetcher Forums · Filter Exchange · Most up months over the past 2 years!<< >>Post Follow-up
80 posts
msg #122326
Ignore 15minoffame
12/20/2014 11:19:16 PM

This task would've been much easier if SF, of course, would implement monthly statistics, but I digress. I would've gone further back, but SF will only allow you 800 previous calendar days. Still, it's interesting to see which stocks have done exceptionally well and exceptionally poor in the past two years.

The filter would even be more complete if someone could help me figure out how to write a count of current streak of winning months. I would love to also have a column for number of months in the past 2 years gaining 1-2%, 3-4%, and 5+.

I'd like to thank TRO for giving me the idea for this. While this filter is certainly not on the same plane as his Run Forest Run, maybe someone can still benefit from this. Feel free to point out any errors you see or any suggestions to make it even better!

Here's to a profitable 2015!

close above 1
average volume(63) above 1000000

set{jan1,Date(20140131,close) - Date(20131231,close)}
set{jan1a,Date(20130131,close) - Date(20121231,close)}
set{jan2,count(jan1 above 0,1)}
set{jan2a,count(jan1a above 0,1)}

set{feb1,Date(20140228,close) - Date(20140131,close)}
set{feb1a,Date(20130228,close) - Date(20130131,close)}
set{feb2,count(feb1 above 0,1)}
set{feb2a,count(feb1a above 0,1)}

set{mar1,Date(20140331,close) - Date(20140228,close)}
set{mar1a,Date(20130329,close) - Date(20130228,close)}
set{mar2,count(mar1 above 0,1)}
set{mar2a,count(mar1a above 0,1)}

set{apr1,Date(20140430,close) - Date(20140331,close)}
set{apr1a,Date(20130430,close) - Date(20140329,close)}
set{apr2,count(apr1 above 0,1)}
set{apr2a,count(apr1a above 0,1)}

set{may1,Date(20140530,close) - Date(20140430,close)}
set{may1a,Date(20130531,close) - Date(20130430,close)}
set{may2,count(may1 above 0,1)}
set{may2a,count(may1a above 0,1)}

set{june1,Date(20140630,close) - Date(20140530,close)}
set{june1a,Date(20130628,close) - Date(20130531,close)}
set{june2,count(june1 above 0,1)}
set{june2a,count(june1a above 0,1)}

set{july1,Date(20140731,close) - Date(20140630,close)}
set{july1a,Date(20130731,close) - Date(20130628,close)}
set{july2,count(july1 above 0,1)}
set{july2a,count(july1a above 0,1)}

set{aug1,Date(20140829,close) - Date(20140731,close)}
set{aug1a,Date(20130830,close) - Date(20130731,close)}
set{aug2,count(aug1 above 0,1)}
set{aug2a,count(aug1a above 0,1)}

set{sept1,Date(20140930,close) - Date(20140829,close)}
set{sept1a,Date(20130930,close) - Date(20130830,close)}
set{sept2,count(sept1 above 0,1)}
set{sept2a,count(sept1a above 0,1)}

set{oct1,Date(20141031,close) - Date(20140930,close)}
set{oct1a,Date(20131031,close) - Date(20130930,close)}
set{oct2,count(oct1 above 0,1)}
set{oct2a,count(oct1a above 0,1)}

set{nov1,Date(20141128,close) - Date(20141031,close)}
set{nov1a,Date(20131129,close) - Date(20131031,close)}
set{nov2,count(nov1 above 0,1)}
set{nov2a,count(nov1a above 0,1)}

set{dec1, close - Date(20141128,close)}
set{dec1a,Date(20131231,close) - Date(20131129,close)}
set{dec2,count(dec1 above 0,1)}
set{dec2a,count(dec1a above 0,1)}

set{up1,jan2 + feb2}
set{up2, mar2 + up1}
set{up3, apr2 + up2}
set{up4, may2 + up3}
set{up5, june2 + up4}
set{up6, july2 + up5}
set{up7, aug2 + up6}
set{up8, sept2 + up7}
set{up9, oct2 + up8}
set{up10, nov2 + up9}
set{up11, dec2 + up10}
set{up12,jan2a + up11}
set{up13,feb2a + up12}
set{up14, mar2a + up13}
set{up15, apr2a + up14}
set{up16, may2a + up15}
set{up17, june2a + up16}
set{up18, july2a + up17}
set{up19, aug2a + up18}
set{up20, sept2a + up19}
set{up21, oct2a + up20}
set{up22, nov2a + up21}
set{monthsup, dec2a + up22}

set{pct1, monthsup/24}
set{pct, pct1 *100}

set{avg1,jan + feb}
set{avg2, mar + avg1}
set{avg3, apr + avg2}
set{avg4, may + avg3}
set{avg5, june + avg4}
set{avg6, july + avg5}
set{avg7, aug + avg6}
set{avg8, sept + avg7}
set{avg9, oct + avg8}
set{avg10, nov + avg9}
set{avg11, dec + avg10}
set{avg12,jan1a + avg11}
set{avg13,feb1a + avg12}
set{avg14, mar1a + avg13}
set{avg15, apr1a + avg14}
set{avg16, may1a + avg15}
set{avg17, june1a + avg16}
set{avg18, july1a + avg17}
set{avg19, aug1a + avg18}
set{avg20, sept1a + avg19}
set{avg21, oct1a + avg20}
set{avg22, nov1a + avg21}
set{total, dec1a + avg22}

set{avg_gain, total/24}

set{a1, DATE(20140131,close)-DATE(20131231,close)}
set{n1, a1/DATE(20131231,close)}
set{jan, n1*100}

set{b1, DATE(20140228,close)-DATE(20140131,close)}
set{o1, b1/DATE(20140131,close)}
set{feb, o1*100}

set{c1, DATE(20140331,close)-DATE(20140228,close)}
set{p1, c1/DATE(20140228,close)}
set{mar, p1*100}

set{d1, DATE(20140430,close)-DATE(20140331,close)}
set{q1, d1/DATE(20140331,close)}
set{apr, q1*100}

set{e1, DATE(20140530,close)-DATE(20140430,close)}
set{r1, e1/DATE(20140430,close)}
set{may, r1*100}

set{f1, DATE(20140630,close)-DATE(20140530,close)}
set{s1, f1/DATE(20140530,close)}
set{june, s1*100}

set{g1, DATE(20140731,close)-DATE(20140630,close)}
set{t1, g1/DATE(20140630,close)}
set{july, t1*100}

set{h1, DATE(20140829,close)-DATE(20140731,close)}
set{u1, h1/DATE(20140731,close)}
set{aug, u1*100}

set{i1, DATE(20140930,close)-DATE(20140829,close)}
set{v1, i1/DATE(20140829,close)}
set{sept, v1*100}

set{j1, DATE(20141031,close)-DATE(20140930,close)}
set{w1, j1/DATE(20140930,close)}
set{oct, w1*100}

set{k1, DATE(20141128,close)-DATE(20141031,close)}
set{x1, k1/DATE(20141031,close)}
set{nov, x1*100}

set{l1, close-DATE(20141128,close)}
set{y1, l1/DATE(20141128,close)}
set{dec, y1*100}

set{m1, close-DATE(20131231,close)}
set{z1, m1/DATE(20131231,close)}
set{2014, z1*100}

set{a2, DATE(20131231,close)-DATE(20121231,close)}
set{n2, a2/DATE(20121231,close)}
set{2013, n2*100}

add column monthsup
add column pct
add column avg_gain
add column separator

add column 2014
add column 2013
add column separator

add column dec
add column nov
add column oct
add column sept
add column aug
add column july
add column june
add column may
add column apr
add column mar
add column feb
add column jan

sort column 5 descending

268 posts
msg #122362
Ignore novacane32000
12/24/2014 1:19:37 PM

How would you trade using this filter?

80 posts
msg #122439
Ignore 15minoffame
12/31/2014 11:16:15 PM

I was trying to make a seasonality filter. Some stocks for whatever reason tend to do well in a certain month. It's too bad SF won't provide data more than 800 days. Nevertheless, the past two years can give you a start. Let's take LUV, the #1 stock in this filter. I'll plug it in Stockcharts Seasonality chart and it tells me that over the past 10 years, July has historically been its best month with a 80% win rate and an average gain of 6.1%.

Yes, it's a pain compiling it manually, but you'd be surprised how fast you can fill up each month with at least a handful of stocks. Of course, LUV won't do well EVERY July but you should at least have it on your radar by mid-June. That's how I did so well with AAPL in July. It's almost automatic with a 90% win rate & an avg gain of 9.2% over the past 10 years.

By the way, I would put LUV at the top of your watch list. It's currently on a 17 month winning streak! What's not to...ahem, LUV about that! :-)

StockFetcher Forums · Filter Exchange · Most up months over the past 2 years!<< >>Post Follow-up

*** Disclaimer *** does not endorse or suggest any of the securities which are returned in any of the searches or filters. They are provided purely for informational and research purposes. does not recommend particular securities., Vestyl Software, L.L.C. and involved content providers shall not be liable for any errors or delays in the content, or for any actions taken based on the content.

Copyright 2016 - 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