I have been working on a momentum-based breakout strategy, and naturally, it performs best when the stocks it is trading are trending upward, and less so when it is ranging. The problem is that it is somewhat fit to the general market over the past few years and will not perform out of sample during times they are in a downtrend/ranging, with highest DD on days/weeks the stock/s went negative. Essentially, my algo is very good at capturing breakouts, but on bad days, it will also capture many false positives that cannot go the distance.  So rather than trying to fit my algo better to the specific stocks I have been testing on, I would rather fit my stock selection to my algorithm. In a sense, so that it doesn't matter whether google or amazon, etc is having a good day, but instead that some stocks are having a good day.

 

As far as I understand, coarse universe selection occurs at midnight. The problem is that any stock that is currently experiencing an uncharacteristic, overnight uptrend, will not be included in my universe. I do not want to trade XYZPharmaCompany which had a drug approved and gapped up 10% overnight, the next day. I want to trade it the morning it has gapped up. 

Currently, creating a universe of stocks with fundamental data greater than 10$ with 100mil dollar volume narrows down the list massively but it is still very large (around 500). From there, however, my understanding is that it would be too data-intensive (using second data/consolidated 60 sec bars) to simply use RateOfChange or MomentumPercent as a trade criteria to ignore stocks that have not gained 5%ish percent between yesterday's close and the first few minutes of the session. Or am I wrong, (both for backtesting purposes and live trading)?

In an ideal world, I would like my universe to consist of the top 10-25 gainers 5-10 minutes after market open, greater than 10$ with an average of 100mil + dollar volume. But so far, I believe I am constrained by the Universe method. 

 

Thankyou