The filter menu provides a set of filters for first-level data filtering. You can:
- Search the entire data universe for a specific stock.
- Select a specific watchlist.
- Specify which markets, countries and industries should be included or excluded.
- Filter out stocks above and below a specific market capitalization.
- Remove stocks below a certain liquidity level.
- Filter out stocks for which the company didn't publish any results during the last x months.
- Specify in which currency you want the filters to work.
These filters - excluding the stock search and watchlist - will also define the stock universe used to calculate relative scores such as the Magic Formula, the ERP5 and the O'Shaughnessy Value Composites (VC1, VC2, VC3).
Finally, you can set up four levels of hierarchical filters that allow you to start from a subset of the data, create a subset from this subset, and so on.
The filter menu is available as a slide-in panel. You can open it by clicking the 'Filter Menu' button in the top menu bar. Once you have set these filters, you can close the menu by clicking on the 'Filter Menu' option again.
The following section describes each filter individually:
The screener grid always displays the number of records selected based on the filters set in the filter menu or directly on the columns in the grid. The 'number of records displayed' and the 'total number of records are shown at the bottom right of the grid. To make this information available when you have the filter menu open, we added a 'Number of records' field at the top of the menu. This field automatically gets updated whenever the filters are updated.
You can easily search for a specific company using the 'Company Search' field. When you have a value in this field, the screener will ignore all other filters. When you start typing the name of a company, a list of options will appear. You can select a company from the list
- by clicking on it, or
- by selecting it using the up & down arrows and pressing the 'tab' key
After selecting the company, it will appear in the screener grid if it has its primary listing in a country covered by your subscription. If this is not the case, the screener grid will be empty.
Use this filter to show only the stocks belonging to a specific watchlist. When you select a watchlist here, all other filters are ignored except the 'Company Search' filter. You can remove this filter by selecting the first blank item in the list.
A common requirement is to be able to filter out companies listed on specific markets. Stocks listed on security exchanges such as the 'Pink sheets' and the 'OTC bulletin board' are often unsuited to be included in value investing models. Since these markets are not regulated, the companies don't have to meet the same stringent financial reporting requirements, and it's often quite difficult to get reliable financial information.
Excluding stocks with a primary listing on these markets is easy and can be done by unticking the specific market(s). You can see the changes reflected in the grid once you close the list (by clicking outside the list control). To see all selected markets, hover over the filter field.
Please note that the filter will only show the markets covered by your subscription.
The next filter displays a list of countries your subscription covers. By ticking one or more countries in this list, stocks that have their primary listing in a securities exchange based in those countries will display. The grid is refreshed after closing the list (by clicking outside of the list control).
There are three different options to select countries.
- Select countries individually by clicking on the checkbox next to the specific country.
- Click on a subregion to select all countries belonging to that subregion.
- Click 'Select All' to select all countries in the list.
For each option, clicking a second time will remove these countries from the screener. If you selected a lot of countries, just hovering over the picklist will display a list of the countries selected.
Please note that the filter will only show the markets covered by your subscription.
Most strategies have specific guidelines for excluding industries. The Greenblatt Magic formula, for instance, excludes financial companies and utilities. We don't remove any companies from our base set, but specific industries can be removed very easily using this filter. There are three ways to do this:
- Tick the checkbox next to the specific industry.
- Click on the industry group to select all industries belonging to this group.
- Click on 'Select All' to select all industries.
The screener grid is refreshed after every list closing (by clicking outside of the list control).
The industries filter will also be used to define the stock universe on which relative scores such as the Magic Formula, the ERP5 and the O'Shaughnessy Value Composites (VC1, VC2, VC3) are calculated.
We use 'The Refinitiv Business Classification'. The NAICS structure consists of 32 business sectors, 61 industry groups and 153 industries. For more information, visit this link.
You can very easily limit the size of the companies by using the market cap filter. If you want to select only small-cap stocks according to the US definition, set the minimum to $300m and the max to $2,000m. Updates are immediately reflected in the screener grid, and you can see companies added or removed as you update these threshold values. (Click outside of the control for the changes to take effect)
The currency used in the market cap filter can be selected in the currency filter covered below.
The market cap filter will also be used to define the stock universe on which relative scores such as the Magic Formula, the ERP5 and the O'Shaughnessy Value Composites (VC1, VC2, VC3) are calculated.
Increased demand for the illiquid stocks will almost immediately drive prices up, making it impossible to build a position at a fair price. It will also be very difficult to sell positions in illiquid stocks as sell orders will decrease prices. To remove these stocks, just set the minimum daily traded value filter. Setting it to 50k, for instance, will remove all stocks with an average daily trading value (close * volume) of less than 50k during the last month. The currency used for this filter is based on the currency filter explained below.
The minimum trading value filter will also be used to define the stock universe on which relative scores such as the Magic Formula, the ERP5 and the O'Shaughnessy Value Composites (VC1, VC2, VC3) are calculated.
This filter allows you to remove companies that have not posted quarterly results recently. By setting this to 'Last 6 Months', you limit the stock selection to only contain companies that have posted quarterly results with an end date in the last 6 months. This helps keep the screening results fresh and removes companies that have been delisted or are no longer filing quarterly results.
The results age filter will also be used to define the stock universe on which relative scores such as the Magic Formula, the ERP5 and the O'Shaughnessy Value Composites (VC1, VC2, VC3) are calculated.
The currency picklist allows you to specify in which currency you want the filters to be applied. If you select 'USD', for instance:
- The filters on market cap and value traded will be executed in dollars.
- The amounts displayed in the grid (Enterprise Value, EBIT, Net Debt, Excess Cash,..) will be converted to USD.
By converting the values, it becomes very easy to compare companies even if they report their quarterly results in different currencies. We always take the currency exchange rate of the prior day to calculate the amounts.
One of the most powerful screening innovations was introduced by James P. O'Shaughnessy in the 4th edition of 'What works on Wall Street'. O'Shaughnessy found that by combining momentum and value factors, performance significantly increased while at the same time reducing risk. He found that a model based on first selecting the stocks with strong momentum and then selecting the 25 stocks with the highest yield was one of the best-performing strategies in his study. We found very similar results in our study. By, for instance, selecting the top 20% book-to-market companies and then taking the shares in the top 20% price increase, the return over the 12 years of the study was 1029%.
Running multifactor analysis can be very laborious in excel as you need to set filters, select a subset, copy it to another sheet and set another filter... In our screener, you can set these screens up in seconds and instantly get results. We provide four filters, and for each of them, you can select a base and top level, each between 0 and 100. 0-10 means good, and 90-100 means bad. Depending on the ratio, 0-10 returns the highest (e.g. EBITDA Yield) or the lowest (e.g. Price-to-Sales) values.
In the example model below, we:
- Select the top 20% stocks with the highest price increase during the last six months. This reduces the stocks in the screener from 32,052 to 6,314 stocks.
- Then, from this subset, we select the top 20% of stocks ranked by shareholder yield. This leaves 1,263 stocks in our selection.
- We filter the 1,263 and only keep the 20% stocks with the highest EBITDA Yield. This brings back 253 stocks.
- Finally, we select the top 20% of stocks ranked by Book-to-market. This keeps only 51 stocks in our selection.
These 51 stocks can be further filtered or ordered in the screener grid on the right. This might leave even fewer stocks in the grid. Please note that the above example is for demonstration purposes only. We don't have any studies showing that this model is beating the market.
Our powerful screener can update the results in real-time as you're changing the factors and the % ranges.
Ever since we started offering the stock screener, our objective has been to make it intuitive, easy and available to all types of investors. We want to provide everyone with the capabilities to run these models on the markets they can invest in and get instant results.
The easiest way to use the stock screener is to start from a template. Open the templates by clicking on the 'Templates' menu item. This will display a list of templates created by the top gurus in the industry. Every screener has a short description and a hyperlink. Clicking on this link will reload the screener using this template.
Each template has preset filters in the filter menu and the screener grid. For some filters such as 'Countries', it will keep the countries you had selected before running the template.
Our more experienced users typically have a few screens they have taken great care to build. They run them regularly to see what stocks come to the surface. It's extremely easy to save your favourites to our cloud, upon which they become available on all your devices.
To save your screen, click the 'Add to favourites' button in the grid toolbar. A popup window opens with two panels:
- The top panel allows you to select an existing favourite and overwrite it with your current screen.
- In the bottom panel, you can create a new favourite by specifying a name and an optional description. Click on the 'Create' button to create your favourite.
All your favourites are available in the 'Favorites' item in the top menu. Clicking on 'Favorites' shows a list of all your favourites and a description. It also shows a 'Delete' button which allows you to remove the favourite from your list. Clicking on the name will open the favourite.
It's also very easy to create watchlists of stocks you want to check regularly. Instead of using the 'Search company' filter to look for each company individually, you can create your lists. The watchlists become available in the 'Watchlist' filter in the filter menu.
To create a new watchlist, hover over the watchlists menu item in the top menubar. The watchlist create/edit window will appear.
Enter a name and an optional description. After clicking on the 'Create' button, the watchlist will show up in the top part of the window. Click on the 'Edit' button to add stocks to the list.
All watchlists you create become available in the watchlist filter. Open the 'Filter Menu' and select your watchlist in the watchlist filter. The screener grid will be refreshed and only show the companies on the watchlist. Please note that if you add companies not covered by your subscription, these will not be displayed.
It should be noted that relative scores such as the Magic Formula, the ERP5 and the O'Shaughnessy Value Composites (VC1, VC2, VC3) will only be calculated if they're included in the selected stock universe. In the example below, the universe is restricted to the US and Canada, and as a result, these scores will only be calculated for the stocks that have their primary listing in these countries. Adding other countries or changing the market cap filters will recalculate and display the relative scores for all stocks in the updated stock universe.
After setting up your base filters in the 'Filter Menu', you can add filters and sort on a specific column. As explained in the multifactor analysis section above, our screener implements multifactor analysis as described by James O'Shaughnessy in the 4th edition of 'What works on Wall Street'. Instead of applying all filters on the basic data set as most other screeners do, we provide the ability to apply filters in levels. The results set retrieved by applying the filters defined in the filter menu can be fine-tuned further by adding one or more column filters in the grid. The results can also be ordered on a specific column, allowing you to select the top x stocks.
Our screener table can also be customized to build the exact screener you want. You can show or hide the columns you want to include, reorder the columns and specify the number of records you wish to include. The table is extremely fast as it only loads the data displayed on the screen, but you can also export the full result set to excel.
The table automatically adjusts to the screen's width and shows as many columns as possible on your screen. You can fine-tune the width of individual columns to show more columns if needed.
Here's an overview of the main features of the grid:
In the next section, we will discuss all features in detail:
Column filters can be added as part of your model (e.g. Piotroski F-score > 6), but they're also often used to filter out extreme or negative values (e.g. P/E < 0).
To add a column filter, click on the filter icon in the column header. A filter menu will show where you can specify up to 2 filters for this column. The filter menu will show different options for numbers, dates or text. After entering the filters, click on the 'Filter' button.
You can set filters on as many columns as you need. When a column is filtered, the filter icon in the column header will have a white background. Filters can be cleared in 2 ways:
- By clicking on the filter icon in the column header and pressing the 'Clear' button.
- Click the 'Reset Table Filters' button in the table toolbar. This will remove all filters and sorts from the grid.
Most models rank the data set by a specific column. For the Greenblatt Magic Formula screener, for instance, results are sorted ascending on the Magic Formula ranking.
Sorting the values in the screener table is very easy:
- Click on the column header once to sort ascending, i.e. from low to high.
- Click again to sort descending.
- Click again to remove the sort.
Sorting is only allowed on 1 column at a time, so another column sorting will be removed after you apply to sort to a specific column. The column header will show a small triangle if used to sort the table data.
When using a template, columns that filter or sort the data will be shown on the left. You can very easily customize the order of the columns by using our drag-and-drop functionality:
- Click on the column header you want to move and keep the mouse button down.
- Move the column on top of the column where you want it to be moved. As you move the column, you will see the header and a plus sign on the left.
- Release the mouse button. The column is added to the left of the column on which you dropped it.
When you move columns, the new order will be stored in the cloud. When you open the screen later on the same or another device, the same order will be displayed.
By default, each column has been preconfigured to have an optimal width depending on the header and content. You can also change the column width to, for instance, show more columns on your screen.
Position the mouse cursor on the line that divides 2 column headers. When the cursor transforms into the resize cursor, click the left mouse button and hold it down. Drag the cursor to the left or right and release the mouse button to set the new width.
If you want to remove the filters and custom sort in the table grid, just click the 'Reset Table Filter' button.
Most models advocate buying the top 20 or 30 stocks in the selection. To simplify this, we added a 'Page Size' selector at the bottom of the grid that allows you to specify how many records should be shown per page. We also provide an easy navigator that takes you to the other pages.
This setting can also tailor the screener to your screen height. By setting it to a matching height, you can avoid scrolling up and down the list.
The data table contains many columns. Most of the columns might not be relevant, so we offer an easy way to hide or show them:
- Click on the 'Select Columns' button in the menu at the top of the table.
- Open the relevant categories and check/uncheck the factors you wish to show/hide. The table will refresh as you make the changes.
- Close the 'Add/remove columns' window.
The Show All button will show all columns.
The Hide All button will hide all columns in one click. This makes it quicker to select the specific columns you want to see.
Our screener is very versatile and offers many features to slice and dice the data in all possible ways, but some of our more advanced users like to filter and sort the data in excel. Other users like to record their favourite screens at regular intervals. Our table has an 'Export to Excel' functionality, which creates a formatted spreadsheet in the local settings of the user.
- Click on the 'Export to Excel' button at the top of the table.
- The spreadsheet will show in the download section of your browser. (which is usually at the bottom left of the browser window.)
- Click on the spreadsheet to open it.
Please note that depending on the data selected in the screener and the internet bandwidth, it can take a few seconds to download a workbook. During the download, there's no feedback that the process is running. Please be patient and wait until the download is completed.
Exporting works on all browsers and is not restricted. An export workbook contains three sheets:
- Results: this sheet contains the full dataset with only the columns visible in the screener. It also uses the same column order and sorts the data based on the column used to sort in the screener.
- Filters: this sheet provides a list of all filters used in the screener.
- Custom Factors: This sheet shows the type and the different factors used for the configured custom composite factors.
The companies listed for a specific screen will change over time. As a result of stock price updates or new results, a stock could fall outside the limits of a filter. And since our screener works up to 6 levels of filtering, it might be difficult to find out exactly why the company no longer shows up in the list.
There are different categories of filters:
- Template filters: some templates like the Enhanced Dividend Yield screen sets additional filters in the background. These filters cannot be altered.
- Menu Filters: this - in combination with the template filters - defines the initial stock universe against which all calculations will be performed. Find more info here.
- Multifactor analysis filters: this allows you to create filters in layers. Find more info here.
- Table Filters: this allows additional filters to be created for all columns in the screener. Find more info here.
The filters are applied in different levels:
- Template and menu filters define the first level of filtering. Within the menu filters, when the security filter is filled in, all other filters will be ignored. Watchlists are the second most important filter, and if this is filled in, all other filters will be ignored. Then the other template and menu filters will be applied.
- Mulitfactor analysis filters will be applied to the stock universe created by the filters above. First, factor 1 is applied. This set is used as the basis for factor 2, etc... This step allows users to add up to 4 levels of filtering based on ratio and percentile ranges.
- Table filters are based on the set created by applying the two groups of filters explained above.
To see a list of all filters, click the 'Where is my company' button. This brings up a window listing all the different filters. To find out why a certain company is not listed on the screen, just type the company name in the provided textbox. While typing the name, a list of companies will show. Click on the specific company or hit the tab button to select it. This runs a batch of tests that will reveal why the company dropped out or why it's included.
The testing algorithm is performance optimised and will only perform tests if the previous filtering layer doesn't already remove the stock. For example, if a stock is not included in the countries filter, it's not worth checking the multifactor analysis as the stock would not be included in the base set used by the multifactor analysis. Similarly, it will not test any table filters if the stock was already filtered out based on template filters, menu filters or multifactor filters. The only exception to this rule is filtering on name or watchlist. In this case, it will still run the tests even if the stock doesn't appear in the watchlist or doesn't have the name set in the name filter.
For each line in the filters list, the following information will be displayed:
- Filter: the name and type of the filter.
- Value: the value of the filter defined in the template or set by the user.
- Test: the results of the test. 'Pass' means that the company meets the filter criteria. 'Fail' means that the company does not meet the filter criteria. 'Not Tested' indicates that the test was not necessary since the company was already excluded by an upstream filter.
- Security value: this shows the value for a specific company. For menu filters or table filters, this is the value for this specific company. For factors, this will show the percentile in the subset to which the company belongs.
Our stock screener has popular composite factors, such as the Greenblatt Magic Formula, ERP5, and the O'Shaughnessy Value Composite. By ranking on a combined score based on multiple factors, one can easily find stocks that rank relatively well on both factors. The Greenblatt Magic formula, for instance, ranks companies based on ROC and Earnings yield and then sums up the two ranks. It then ranks companies on the combined score. Companies with a bad ROC or Earnings Yield tend to drop to the bottom of the screener, so you're left with companies that score quite well on the two different ratios. Unlike multifactor analysis, all factors get equal weight in the overall result.
But what if you want to use a different set of factors or build a customized version with, for instance, an extra factor like price index 6M? This is now possible by using custom factors.
Click on the Custom Factors button to open the custom factors window. Click inside the factor 1 textbox and select a factor from the list. You can repeat this process and add as many factors as required. After selecting the factor, you can pick the calculation method. We support two calculation methods:
- Value: each factor will be ranked individually first. In the second step, the sum of the rakings is ranked again. Companies where one of the ratios is missing automatically get a bad score. Examples of factors that use this calculation method are the magic formula and ERP5.
- Percentile: Each factor will be used to create 100 buckets with the same number of stocks. (percentiles) Group 1 contains the best stocks; group 100 contains the worst. A company for which this ratio is missing will be put in group 50. The sum of the percentiles of the different ratios is used to create overall percentiles again. Examples of factors that use this calculation method are O'Shaugnessy's VC1, VC2, and VC3.
We provide 2 custom factors that act just like any other column in the list. To display these custom factors, you use the display/hide column functionality. Custom factors can be used to sort the results in the grid, set specific filters, run multifactor analysis, etc...
The screener table contains a lot of columns, and you can scroll through them using the horizontal scrollbar at the bottom of the table. To be sure that you're looking at the right row, you can select the row by clicking on any cell. This will highlight the selected row.
Our screener table provides a wide range of ratios our engine calculates, but we don't provide any raw data or detailed financials. To make it easy to get this data, we provide links to the company pages of some of the leading financial sites. Just click on the triangle next in the first column of the table to open up the 'Stock Information' sheet.
One of the most popular factors in our screen is the Piotroski F-Score which is a combination of 9 balance sheet-based health signals. To see how the company scores on each of the signals, you can open the Piotroski F-Score tab.
The company details slide-down pane provides stock information and quick links to websites with more financial data. If, however, you want to dive a bit deeper into the stock and get a more graphic representation of the most important factors, you can click on the scorecard icon.