Hey hey hey!

Late last night we launched our newest feature: Universe selection. This allows the algorithm to define the universe of symbols it would like to receive data for by specifying a function that returns the symbols! QuantConnect currently provides what we call 'coarse' universe selection data. This is an aggregate of daily that includes the daily close, daily volume, and the dollar volume (daily close * EMA30(volume)).

You can add coarse universe selection criteria by using the AddUniverse method. Here's an example of adding a coarse universe selection that takes all symbols with a daily dollar volume of over $1 billion:// in Initialize()
const decimal OneBillion = 1000m*1000m*1000m;
AddUniverse(coarse =>
return from c in coarse
where c.DollarVolume >= OneBillion
select c.Symbol;

What this code means is that we want to filter the complete unverse of US equity symbols by selecting all symbols with a DollarVolume >= OneBillion! We'll automatically handle pumping the right data for your selected symbols in your OnData method. Also, we won't remove securities that have open orders or positions.

Have a peek at the attached demo coarse universe algorithm example. We welcome feedback and questions!