Screen stocks based on a set of criteria. This can be useful to find companies that match a specific criteria or your analysis. Further filtering can be done by utilising the Finance Toolkit and calculating the relevant ratios to filter by. This can be:

  • Market capitalization (market_cap_higher, market_cap_lower)
  • Price (price_higher, price_lower)
  • Beta (beta_higher, beta_lower)
  • Volume (volume_higher, volume_lower)
  • Dividend (dividend_higher, dividend_lower)
  • Classification (sector, industry, country, exchange, is_etf)

The result is capped at limit companies, 1000 by default. Getting back exactly that many means the list was truncated, which is warned about in the log; narrow the criteria or raise the limit to see the remainder.

Also known as: filter stocks, financial criteria screener.

Stock Screener in Python or via the MCP

Install the Finance Toolkit with:

pip install financetoolkit -U

Then call get_stock_screener as shown below.

from financetoolkit import Discovery

discovery = Discovery(api_key="FINANCIAL_MODELING_PREP_KEY")

discovery.get_stock_screener(
    market_cap_higher=1000000,
    market_cap_lower=200000000000,
    price_higher=100,
    price_lower=200,
    beta_higher=1,
    beta_lower=1.5,
    volume_higher=100000,
    volume_lower=2000000,
    dividend_higher=1,
    dividend_lower=2,
    is_etf=False
)

Or, after setting up the Finance Toolkit MCP, ask:

Which stocks, leaving out ETFs, have a market cap between $1 million and $200 billion, a price between $100 and $200, a beta between 1 and 1.5, a daily volume between 100,000 and 2 million shares and a dividend between $1 and $2 per share?

Which returns:

Symbol Name Market Cap Sector Industry Beta Price Dividend Volume avgVolume Exchange Exchange Code Country Currency Market Cap (USD)
WPM.TO Wheaton Precious Metals Corp. 7.68348e+10 Basic Materials Gold 1.243 169.18 1.0425 549294 784311 Toronto Stock Exchange TSX CA CAD 5.48769e+10
ODFL Old Dominion Freight Line, Inc. 3.79958e+10 Industrials Trucking 1.204 182.7 1.15 1993098 1766126 NASDAQ Global Select NASDAQ US USD 3.79958e+10
EXPD Expeditors International of Washington, Inc. 2.55055e+10 Industrials Integrated Freight & Logistics 1.064 196.21 1.58 989988 1040746 New York Stock Exchange NYSE US USD 2.55055e+10
IHG InterContinental Hotels Group PLC 2.37383e+10 Consumer Cyclical Travel Lodging 1.028 162.4 1.231 333742 219735 New York Stock Exchange NYSE GB USD 2.37383e+10
TOL Toll Brothers, Inc. 1.28914e+10 Consumer Cyclical Residential Construction 1.302 139.9 1.03 996905 996604 New York Stock Exchange NYSE US USD 1.28914e+10
RRX Regal Rexnord Corporation 9.84697e+09 Industrials Industrial - Machinery 1.069 147.92 1.4 833290 1254610 New York Stock Exchange NYSE US USD 9.84697e+09
TFII TFI International Inc. 9.24671e+09 Industrials Trucking 1.469 112.5 1.88 217798 316092 New York Stock Exchange NYSE CA USD 9.24671e+09
TKR The Timken Company 7.57622e+09 Industrials Manufacturing - Tools & Accessories 1.183 109.33 1.42 836982 921212 New York Stock Exchange NYSE US USD 7.57622e+09
SSD Simpson Manufacturing Co., Inc. 7.55594e+09 Basic Materials Construction Materials 1.318 184.36 1.18 489272 287909 New York Stock Exchange NYSE US USD 7.55594e+09
AGCO AGCO Corporation 7.43037e+09 Industrials Agricultural - Machinery 1.074 106.1 1.18 574467 1028668 New York Stock Exchange NYSE US USD 7.43037e+09
AWI Armstrong World Industries, Inc. 7.10776e+09 Basic Materials Construction Materials 1.158 168.18 1.356 432292 400187 New York Stock Exchange NYSE US USD 7.10776e+09
JCOM Ziff Davis, Inc. 6.75066e+09 Technology Software - Infrastructure 1.0328 142.84 1.76 355657 357547 NASDAQ Global Select NASDAQ US USD 6.75066e+09
VCTR Victory Capital Holdings, Inc. 6.61843e+09 Financial Services Asset Management 1.133 107.6 1.98 379475 645526 NASDAQ Global Select NASDAQ US USD 6.61843e+09
ENS EnerSys 5.98971e+09 Industrials Electrical Equipment & Parts 1.186 166.08 1.075 374598 537471 New York Stock Exchange NYSE US USD 5.98971e+09
CAKE The Cheesecake Factory Incorporated 5.39256e+09 Consumer Cyclical Restaurants 1.037 108.37 1.17 1802234 1574028 NASDAQ Global Select NASDAQ US USD 5.39256e+09
EXP Eagle Materials Inc. 5.35929e+09 Basic Materials Construction Materials 1.335 174.71 1 432955 442898 New York Stock Exchange NYSE US USD 5.35929e+09
SIG Signet Jewelers Limited 4.49001e+09 Consumer Cyclical Luxury Goods 1.104 117.18 1.37 860622 862382 New York Stock Exchange NYSE BM USD 4.49001e+09
MCRI Monarch Casino & Resort, Inc. 2.01951e+09 Consumer Cyclical Gambling, Resorts & Casinos 1.405 112.68 1.2 142490 156229 NASDAQ Global Select NASDAQ US USD 2.01951e+09
ALG Alamo Group Inc. 1.77915e+09 Industrials Industrial - Machinery 1.078 146.18 1.36 208708 169615 New York Stock Exchange NYSE US USD 1.77915e+09

Parameters

get_stock_screener accepts the following parameters.

ParameterTypeDescriptionExample
market_cap_higherintThe minimum market capitalization of the stock in US dollars (not in millions), e.g. 1_000_000_000 for $1 billion. Defaults to None, which applies no filter.10000000000
market_cap_lowerintThe maximum market capitalization of the stock in US dollars. The screener returns the largest companies first, so this bound is only sent to it when the currency of the listings is known: with an exchange, or with a country and primary_only. Otherwise it is applied to the companies returned. Defaults to None, which applies no filter.200000000000
price_higherfloat | NoneThe minimum price of the stock. Defaults to None, which applies no filter.10
price_lowerfloat | NoneThe maximum price of the stock. Defaults to None, which applies no filter.500
beta_higherfloat | NoneThe minimum beta of the stock. Defaults to None, which applies no filter.1
beta_lowerfloat | NoneThe maximum beta of the stock. Defaults to None, which applies no filter.2
volume_higherintThe minimum volume of the stock, in shares traded. Defaults to None, which applies no filter.1000000
volume_lowerintThe maximum volume of the stock. Defaults to None, which applies no filter.100000000
dividend_higherfloat | NoneThe minimum dividend of the stock, as an amount per share over the last annual period rather than as a yield. Defaults to None, which applies no filter.1
dividend_lowerfloat | NoneThe maximum dividend of the stock. Defaults to None, which applies no filter.5
sectorstr | NoneThe sector to restrict the screen to, e.g. “Energy”. Defaults to None, which applies no filter."Technology"
industrystr | NoneThe industry to restrict the screen to, e.g. “Biotechnology”. Defaults to None, which applies no filter."Semiconductors"
countrystr | NoneThe country to restrict the screen to, as a two-letter code (“US”) or a name (“United States”). Defaults to None, which applies no filter."US"
exchangestr | NoneThe exchange code to restrict the screen to, e.g. “NASDAQ”. Defaults to None, which applies no filter."NASDAQ"
is_etfbool | NoneWhether to restrict the screen to ETFs or to exclude them. Defaults to None, which applies no filter.False
limitintThe maximum number of companies to return. Defaults to 1000.100
primary_onlyboolWhether to keep only the home listing of each company (on an exchange in its own country, the most traded one among several) rather than every listing (e.g. ING in Amsterdam, New York, Toronto and Frankfurt). Defaults to False. Market caps are in each listing’s own currency in “Market Cap” and in US dollars in “Market Cap (USD)”, which the market cap bounds and the ranking use.True
Share