Quantopian's community platform is shutting down. Please read this post for more information and download your code.
Back to Community
Q1500US vs get_fundamentals

Hi,

I tried to get list os securities similar to Q1500US using this get_fundamentals query:

get_fundamentals(  
            query(fundamentals.asset_classification.morningstar_sector_code)  
            .filter(fundamentals.asset_classification.morningstar_sector_code.isnot(None))  
            .filter(fundamentals.share_class_reference.currency_id == "USD")  
            .filter(fundamentals.company_reference.country_id == "USA")  
            .filter(not_(fundamentals.share_class_reference.exchange_id.like('OTC%')))  
            .filter(not_(fundamentals.share_class_reference.symbol.like('%.WI')))  
            .filter(fundamentals.share_class_reference.is_depositary_receipt == False)  
            .filter(fundamentals.share_class_reference.is_primary_share == "1")  
            .filter(fundamentals.share_class_reference.security_type == "ST00000001")  
            .filter(not_(fundamentals.balance_sheet.limited_partnership.isnot(None)))  
            .filter(not_(fundamentals.company_reference.standard_name.like('.* L[\\. ]?P\.?$')))  
            .filter(fundamentals.valuation.market_cap > 500000000))  

plus the code ranking get_fundamentals result by average dollar volume for 200 days and capping sectors to 30% (see attached algo).

Surprisingly the difference between Q1500 and this method is quite substantial (most of the time it's around 10%, max 50%).

What am I missing here? According to the documentation https://www.quantopian.com/help#quantopian_pipeline_filters_Q1500US the results should be at least similar.