Back

Filter out

I am using 

self.AddUniverse(self.CoarseSelectionFunction)

def CoarseSelectionFunction(self, coarse):
'''Take the top self.coarse_university_size by dollar volume using coarse'''
# sort descending by daily dollar volume
sortedByDollarVolume = sorted(coarse, key=lambda x: x.DollarVolume, reverse=True)

# we need to return only the symbol objects
return [ x.Symbol for x in sortedByDollarVolume[:5] ]

To get the top 5 securities with the highest dollar volume. 

What I get is 

    AAPL, EEM, FB, IWM, SPY

Which obviously includes several ETFs.

How can I filter out everything except for actual stocks? 

How can I get a Universe that corresponds with the S&P500 ? 

Update Backtest







I believe you can filter out stocks that do not have fundamental data like EV/EBITDA and this will remove ETFs since they don't have that. For trying to get the S&P500 you could sort by market cap and take the top 500, that would probably be your best bet. 

0

William is right regarding the filtering of fundamental data. The link below will be very helpful in trying to understand how the Universe selection will work. AddUniverse() can have a course selection function and a fine selection function that can be tailored to providing the S&P500 tickers. The universe will first go through the course selection and then the fine selection. The example code from Github is an example of what needs to be done. With regards to the documentation provided, click on the highlighted words/links to see the full scope of the selection as well - there is a lot of filtering data available.

https://github.com/QuantConnect/Lean/blob/8534df4e20b8eaa8c89880629d6c9d9613044fba/Algorithm.Framework/Selection/QC500UniverseSelectionModel.pyhttps://www.quantconnect.com/docs/algorithm-reference/universes
0

The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Update Backtest





0

The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Loading...

This discussion is closed