diff --git "a/examples/findSymbols.ipynb" "b/examples/findSymbols.ipynb"
new file mode 100644--- /dev/null
+++ "b/examples/findSymbols.ipynb"
@@ -0,0 +1,3130 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Finding Symbols\n",
+ "\n",
+ "\n",
+ "Finding the ticker symbol, security identifier, the sector, and other metadata is easy if you know where to look. This guide is intended to introduce some methods for searching, screening, and discovery.\n",
+ "\n",
+ "For maximum coverage and functionality, install OpenBB with `[all]` packages.\n",
+ "\n",
+ "The examples here will assume that the OpenBB Platform has been installed, the environment is active, and it has been imported into a Python session. If the installation is fresh, or an extension was just installed, the Python interface will need to be rebuilt. It will only take a few moments to complete."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from openbb import obb"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "The simplest way to find tickers is with a basic text query.\n",
+ "\n",
+ "## Search Nasdaq"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " nasdaq_traded | \n",
+ " exchange | \n",
+ " etf | \n",
+ " round_lot_size | \n",
+ " test_issue | \n",
+ " cqs_symbol | \n",
+ " nasdaq_symbol | \n",
+ " next_shares | \n",
+ " market_category | \n",
+ " financial_status | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " AMJB | \n",
+ " JPMorgan Chase & Co. Alerian MLP Index ETNs du... | \n",
+ " Y | \n",
+ " P | \n",
+ " Y | \n",
+ " 100.0 | \n",
+ " N | \n",
+ " AMJB | \n",
+ " AMJB | \n",
+ " N | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " BBAG | \n",
+ " JPMorgan BetaBuilders U.S. Aggregate Bond ETF | \n",
+ " Y | \n",
+ " P | \n",
+ " Y | \n",
+ " 100.0 | \n",
+ " N | \n",
+ " BBAG | \n",
+ " BBAG | \n",
+ " N | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " BBAX | \n",
+ " JPMorgan BetaBuilders Developed Asia Pacific-e... | \n",
+ " Y | \n",
+ " Z | \n",
+ " Y | \n",
+ " 100.0 | \n",
+ " N | \n",
+ " BBAX | \n",
+ " BBAX | \n",
+ " N | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name nasdaq_traded \\\n",
+ "0 AMJB JPMorgan Chase & Co. Alerian MLP Index ETNs du... Y \n",
+ "1 BBAG JPMorgan BetaBuilders U.S. Aggregate Bond ETF Y \n",
+ "2 BBAX JPMorgan BetaBuilders Developed Asia Pacific-e... Y \n",
+ "\n",
+ " exchange etf round_lot_size test_issue cqs_symbol nasdaq_symbol \\\n",
+ "0 P Y 100.0 N AMJB AMJB \n",
+ "1 P Y 100.0 N BBAG BBAG \n",
+ "2 Z Y 100.0 N BBAX BBAX \n",
+ "\n",
+ " next_shares market_category financial_status \n",
+ "0 N NaN NaN \n",
+ "1 N NaN NaN \n",
+ "2 N NaN NaN "
+ ]
+ },
+ "execution_count": 2,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "obb.equity.search(\"JPMorgan\", provider=\"nasdaq\").to_df().head(3)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Search Cboe"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " description | \n",
+ " data_delay | \n",
+ " currency | \n",
+ " time_zone | \n",
+ " open_time | \n",
+ " close_time | \n",
+ " tick_days | \n",
+ " tick_frequency | \n",
+ " tick_period | \n",
+ " display_override_auto_hide | \n",
+ " show_intraday_chart | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 31 | \n",
+ " SPXUIV | \n",
+ " PROSHARES ULTRAPRO SHORT SP500 ETF | \n",
+ " PROSHARES ULTRAPRO SHORT SP500 ETF\\n | \n",
+ " 15 | \n",
+ " USD | \n",
+ " America/Chicago | \n",
+ " 08:00:00 | \n",
+ " 16:00:00 | \n",
+ " MonToFri | \n",
+ " C | \n",
+ " Regular | \n",
+ " False | \n",
+ " True | \n",
+ "
\n",
+ " \n",
+ " | 32 | \n",
+ " SPXVIV | \n",
+ " PROSHARES S&P 500 EX-HEALTH CARE ETF | \n",
+ " PROSHARES S&P 500 EX-HEALTH CARE ETF | \n",
+ " 15 | \n",
+ " USD | \n",
+ " America/Chicago | \n",
+ " 08:00:00 | \n",
+ " 16:00:00 | \n",
+ " MonToFri | \n",
+ " C | \n",
+ " Regular | \n",
+ " False | \n",
+ " True | \n",
+ "
\n",
+ " \n",
+ " | 33 | \n",
+ " VIX1D | \n",
+ " Cboe 1-Day Volatility Index® | \n",
+ " Estimates expected volatility by aggregating t... | \n",
+ " 15 | \n",
+ " USD | \n",
+ " America/Chicago | \n",
+ " 08:00:00 | \n",
+ " 16:00:00 | \n",
+ " MonToFri | \n",
+ " C | \n",
+ " Regular | \n",
+ " False | \n",
+ " True | \n",
+ "
\n",
+ " \n",
+ " | 34 | \n",
+ " VIX3M | \n",
+ " Cboe S&P 500 3 Month Volatility Index | \n",
+ " The Cboe 3-Month Volatility Index (VIX3M) is d... | \n",
+ " 15 | \n",
+ " USD | \n",
+ " America/Chicago | \n",
+ " 08:00:00 | \n",
+ " 16:00:00 | \n",
+ " MonToFri | \n",
+ " C | \n",
+ " Regular | \n",
+ " False | \n",
+ " True | \n",
+ "
\n",
+ " \n",
+ " | 35 | \n",
+ " WPUT | \n",
+ " Cboe S&P 500 One-Week PutWrite Index | \n",
+ " Tracks the value of a portfolio that overlays ... | \n",
+ " 15 | \n",
+ " USD | \n",
+ " America/Chicago | \n",
+ " 08:00:00 | \n",
+ " 16:00:00 | \n",
+ " MonToFri | \n",
+ " C | \n",
+ " Regular | \n",
+ " False | \n",
+ " True | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name \\\n",
+ "31 SPXUIV PROSHARES ULTRAPRO SHORT SP500 ETF \n",
+ "32 SPXVIV PROSHARES S&P 500 EX-HEALTH CARE ETF \n",
+ "33 VIX1D Cboe 1-Day Volatility Index® \n",
+ "34 VIX3M Cboe S&P 500 3 Month Volatility Index \n",
+ "35 WPUT Cboe S&P 500 One-Week PutWrite Index \n",
+ "\n",
+ " description data_delay currency \\\n",
+ "31 PROSHARES ULTRAPRO SHORT SP500 ETF\\n 15 USD \n",
+ "32 PROSHARES S&P 500 EX-HEALTH CARE ETF 15 USD \n",
+ "33 Estimates expected volatility by aggregating t... 15 USD \n",
+ "34 The Cboe 3-Month Volatility Index (VIX3M) is d... 15 USD \n",
+ "35 Tracks the value of a portfolio that overlays ... 15 USD \n",
+ "\n",
+ " time_zone open_time close_time tick_days tick_frequency tick_period \\\n",
+ "31 America/Chicago 08:00:00 16:00:00 MonToFri C Regular \n",
+ "32 America/Chicago 08:00:00 16:00:00 MonToFri C Regular \n",
+ "33 America/Chicago 08:00:00 16:00:00 MonToFri C Regular \n",
+ "34 America/Chicago 08:00:00 16:00:00 MonToFri C Regular \n",
+ "35 America/Chicago 08:00:00 16:00:00 MonToFri C Regular \n",
+ "\n",
+ " display_override_auto_hide show_intraday_chart \n",
+ "31 False True \n",
+ "32 False True \n",
+ "33 False True \n",
+ "34 False True \n",
+ "35 False True "
+ ]
+ },
+ "execution_count": 3,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "obb.index.search(\"SPX\", provider=\"cboe\").to_df().tail(5)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Search ETFs"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " short_name | \n",
+ " inception_date | \n",
+ " issuer | \n",
+ " investment_style | \n",
+ " esg | \n",
+ " currency | \n",
+ " unit_price | \n",
+ " close | \n",
+ " ... | \n",
+ " beta_3y | \n",
+ " return_5y | \n",
+ " return_10y | \n",
+ " beta_10y | \n",
+ " beta_15y | \n",
+ " mer | \n",
+ " dividend_frequency | \n",
+ " pe_ratio | \n",
+ " pb_ratio | \n",
+ " beta_20y | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 21 | \n",
+ " ZGD | \n",
+ " BMO Equal Weight Global Gold Index ETF | \n",
+ " ZGD:CA | \n",
+ " 2012-11-14 | \n",
+ " BMO ETF | \n",
+ " Mid Cap Blend | \n",
+ " False | \n",
+ " CAD | \n",
+ " 104.80 | \n",
+ " 106.56 | \n",
+ " ... | \n",
+ " 0.658557 | \n",
+ " 0.130072 | \n",
+ " -0.079531 | \n",
+ " 0.444583 | \n",
+ " NaN | \n",
+ " 0.0062 | \n",
+ " Annually | \n",
+ " 9.0939 | \n",
+ " 0.8812 | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 22 | \n",
+ " ZGLD | \n",
+ " BMO Gold Bullion ETF | \n",
+ " ZGLD:CA | \n",
+ " 2024-03-08 | \n",
+ " BMO ETF | \n",
+ " Gold | \n",
+ " False | \n",
+ " CAD | \n",
+ " 36.83 | \n",
+ " 36.83 | \n",
+ " ... | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 23 | \n",
+ " ZGLD.U | \n",
+ " BMO Gold Bullion ETF | \n",
+ " ZGLD.U:CA | \n",
+ " 2024-03-08 | \n",
+ " BMO ETF | \n",
+ " Gold | \n",
+ " False | \n",
+ " USD | \n",
+ " 36.05 | \n",
+ " 36.70 | \n",
+ " ... | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 24 | \n",
+ " ZGLH | \n",
+ " BMO Gold Bullion Hedged to CAD ETF | \n",
+ " ZGLH:CA | \n",
+ " 2024-03-08 | \n",
+ " BMO ETF | \n",
+ " Gold | \n",
+ " False | \n",
+ " CAD | \n",
+ " 34.04 | \n",
+ " 35.77 | \n",
+ " ... | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 25 | \n",
+ " ZJG | \n",
+ " BMO Junior Gold Index ETF | \n",
+ " ZJG:CA | \n",
+ " 2010-01-19 | \n",
+ " BMO ETF | \n",
+ " Small Cap Blend | \n",
+ " True | \n",
+ " CAD | \n",
+ " 92.75 | \n",
+ " 92.84 | \n",
+ " ... | \n",
+ " 0.641448 | \n",
+ " 0.087857 | \n",
+ " -0.111992 | \n",
+ " 0.449994 | \n",
+ " NaN | \n",
+ " 0.0061 | \n",
+ " Annually | \n",
+ " 13.5959 | \n",
+ " 0.9830 | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
5 rows × 35 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name short_name inception_date \\\n",
+ "21 ZGD BMO Equal Weight Global Gold Index ETF ZGD:CA 2012-11-14 \n",
+ "22 ZGLD BMO Gold Bullion ETF ZGLD:CA 2024-03-08 \n",
+ "23 ZGLD.U BMO Gold Bullion ETF ZGLD.U:CA 2024-03-08 \n",
+ "24 ZGLH BMO Gold Bullion Hedged to CAD ETF ZGLH:CA 2024-03-08 \n",
+ "25 ZJG BMO Junior Gold Index ETF ZJG:CA 2010-01-19 \n",
+ "\n",
+ " issuer investment_style esg currency unit_price close ... \\\n",
+ "21 BMO ETF Mid Cap Blend False CAD 104.80 106.56 ... \n",
+ "22 BMO ETF Gold False CAD 36.83 36.83 ... \n",
+ "23 BMO ETF Gold False USD 36.05 36.70 ... \n",
+ "24 BMO ETF Gold False CAD 34.04 35.77 ... \n",
+ "25 BMO ETF Small Cap Blend True CAD 92.75 92.84 ... \n",
+ "\n",
+ " beta_3y return_5y return_10y beta_10y beta_15y mer \\\n",
+ "21 0.658557 0.130072 -0.079531 0.444583 NaN 0.0062 \n",
+ "22 NaN NaN NaN NaN NaN NaN \n",
+ "23 NaN NaN NaN NaN NaN NaN \n",
+ "24 NaN NaN NaN NaN NaN NaN \n",
+ "25 0.641448 0.087857 -0.111992 0.449994 NaN 0.0061 \n",
+ "\n",
+ " dividend_frequency pe_ratio pb_ratio beta_20y \n",
+ "21 Annually 9.0939 0.8812 NaN \n",
+ "22 NaN NaN NaN NaN \n",
+ "23 NaN NaN NaN NaN \n",
+ "24 NaN NaN NaN NaN \n",
+ "25 Annually 13.5959 0.9830 NaN \n",
+ "\n",
+ "[5 rows x 35 columns]"
+ ]
+ },
+ "execution_count": 5,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "obb.etf.search(\"gold\", provider=\"tmx\").to_df().iloc[-5:]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " market_cap | \n",
+ " sector | \n",
+ " industry | \n",
+ " beta | \n",
+ " price | \n",
+ " last_annual_dividend | \n",
+ " volume | \n",
+ " exchange | \n",
+ " exchange_name | \n",
+ " country | \n",
+ " actively_trading | \n",
+ " isFund | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " QYLD | \n",
+ " Global X NASDAQ 100 Covered Call ETF | \n",
+ " 8.197931e+09 | \n",
+ " Financial Services | \n",
+ " Asset Management - Global | \n",
+ " 0.65 | \n",
+ " 17.7950 | \n",
+ " 2.05994 | \n",
+ " 5225008.0 | \n",
+ " NASDAQ | \n",
+ " NASDAQ Global Market | \n",
+ " US | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " ZWB.TO | \n",
+ " BMO Covered Call Canadian Banks ETF | \n",
+ " 2.988597e+09 | \n",
+ " Financial Services | \n",
+ " Asset Management | \n",
+ " 0.96 | \n",
+ " 18.2600 | \n",
+ " 1.32000 | \n",
+ " 88508.0 | \n",
+ " TSX | \n",
+ " Toronto Stock Exchange | \n",
+ " CA | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " XYLD | \n",
+ " Global X S&P 500 Covered Call ETF | \n",
+ " 2.885254e+09 | \n",
+ " Financial Services | \n",
+ " Asset Management - Global | \n",
+ " 0.51 | \n",
+ " 40.9825 | \n",
+ " 3.82220 | \n",
+ " 157906.0 | \n",
+ " AMEX | \n",
+ " New York Stock Exchange Arca | \n",
+ " US | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " ZWU.TO | \n",
+ " BMO Covered Call Utilities ETF | \n",
+ " 1.863225e+09 | \n",
+ " Financial Services | \n",
+ " Asset Management | \n",
+ " 0.62 | \n",
+ " 10.7900 | \n",
+ " 0.84000 | \n",
+ " 58903.0 | \n",
+ " TSX | \n",
+ " Toronto Stock Exchange | \n",
+ " CA | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " ZWC.TO | \n",
+ " BMO CA High Dividend Covered Call ETF | \n",
+ " 1.637541e+09 | \n",
+ " Financial Services | \n",
+ " Asset Management | \n",
+ " 0.89 | \n",
+ " 17.6200 | \n",
+ " 1.54000 | \n",
+ " 22081.0 | \n",
+ " TSX | \n",
+ " Toronto Stock Exchange | \n",
+ " CA | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name market_cap \\\n",
+ "0 QYLD Global X NASDAQ 100 Covered Call ETF 8.197931e+09 \n",
+ "1 ZWB.TO BMO Covered Call Canadian Banks ETF 2.988597e+09 \n",
+ "2 XYLD Global X S&P 500 Covered Call ETF 2.885254e+09 \n",
+ "3 ZWU.TO BMO Covered Call Utilities ETF 1.863225e+09 \n",
+ "4 ZWC.TO BMO CA High Dividend Covered Call ETF 1.637541e+09 \n",
+ "\n",
+ " sector industry beta price \\\n",
+ "0 Financial Services Asset Management - Global 0.65 17.7950 \n",
+ "1 Financial Services Asset Management 0.96 18.2600 \n",
+ "2 Financial Services Asset Management - Global 0.51 40.9825 \n",
+ "3 Financial Services Asset Management 0.62 10.7900 \n",
+ "4 Financial Services Asset Management 0.89 17.6200 \n",
+ "\n",
+ " last_annual_dividend volume exchange exchange_name \\\n",
+ "0 2.05994 5225008.0 NASDAQ NASDAQ Global Market \n",
+ "1 1.32000 88508.0 TSX Toronto Stock Exchange \n",
+ "2 3.82220 157906.0 AMEX New York Stock Exchange Arca \n",
+ "3 0.84000 58903.0 TSX Toronto Stock Exchange \n",
+ "4 1.54000 22081.0 TSX Toronto Stock Exchange \n",
+ "\n",
+ " country actively_trading isFund \n",
+ "0 US True False \n",
+ "1 CA True False \n",
+ "2 US True False \n",
+ "3 CA True False \n",
+ "4 CA True False "
+ ]
+ },
+ "execution_count": 6,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "obb.etf.search(\"covered call\", provider=\"fmp\").to_df().iloc[:5]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Search the SEC\n",
+ "\n",
+ "Use an empty string, `\"\"`, to return the complete list - over 10,000.\n",
+ "\n",
+ "The SEC sorts this list by market cap. Applying the `to_df()` method to `all_companies` will show them from biggest-to-smallest."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "10551\n"
+ ]
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " cik | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " MSFT | \n",
+ " MICROSOFT CORP | \n",
+ " 789019 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " AAPL | \n",
+ " Apple Inc. | \n",
+ " 320193 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " GOOGL | \n",
+ " Alphabet Inc. | \n",
+ " 1652044 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " NVDA | \n",
+ " NVIDIA CORP | \n",
+ " 1045810 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " AMZN | \n",
+ " AMAZON COM INC | \n",
+ " 1018724 | \n",
+ "
\n",
+ " \n",
+ " | 5 | \n",
+ " META | \n",
+ " Meta Platforms, Inc. | \n",
+ " 1326801 | \n",
+ "
\n",
+ " \n",
+ " | 6 | \n",
+ " BRK-B | \n",
+ " BERKSHIRE HATHAWAY INC | \n",
+ " 1067983 | \n",
+ "
\n",
+ " \n",
+ " | 7 | \n",
+ " LLY | \n",
+ " ELI LILLY & Co | \n",
+ " 59478 | \n",
+ "
\n",
+ " \n",
+ " | 8 | \n",
+ " TSM | \n",
+ " TAIWAN SEMICONDUCTOR MANUFACTURING CO LTD | \n",
+ " 1046179 | \n",
+ "
\n",
+ " \n",
+ " | 9 | \n",
+ " AVGO | \n",
+ " Broadcom Inc. | \n",
+ " 1730168 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name cik\n",
+ "0 MSFT MICROSOFT CORP 789019\n",
+ "1 AAPL Apple Inc. 320193\n",
+ "2 GOOGL Alphabet Inc. 1652044\n",
+ "3 NVDA NVIDIA CORP 1045810\n",
+ "4 AMZN AMAZON COM INC 1018724\n",
+ "5 META Meta Platforms, Inc. 1326801\n",
+ "6 BRK-B BERKSHIRE HATHAWAY INC 1067983\n",
+ "7 LLY ELI LILLY & Co 59478\n",
+ "8 TSM TAIWAN SEMICONDUCTOR MANUFACTURING CO LTD 1046179\n",
+ "9 AVGO Broadcom Inc. 1730168"
+ ]
+ },
+ "execution_count": 8,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "all_companies = obb.equity.search(\"\", provider=\"sec\")\n",
+ "\n",
+ "print(len(all_companies.results))\n",
+ "\n",
+ "all_companies.to_df().head(10)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Find an Institution\n",
+ "\n",
+ "Some reporting companies, like invesment trusts and insurance companies, do not have a ticker symbol directly associated with them. Filers in the US will have a CIK number, used to retrieve documents from the SEC."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 9,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " name | \n",
+ " cik | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " BERKSHIRE HATHAWAY ENERGY CO | \n",
+ " 0001081316 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " BERKSHIRE HATHAWAY FINANCE CORP | \n",
+ " 0001274791 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " BERKSHIRE HATHAWAY HOMESTATE INSURANCE CO. | \n",
+ " 0000829771 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " BERKSHIRE HATHAWAY INC /DE/ | \n",
+ " 0000109694 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " BERKSHIRE HATHAWAY INC/DE | \n",
+ " 0000109694 | \n",
+ "
\n",
+ " \n",
+ " | 5 | \n",
+ " BERKSHIRE HATHAWAY INC | \n",
+ " 0001067983 | \n",
+ "
\n",
+ " \n",
+ " | 6 | \n",
+ " BERKSHIRE HATHAWAY LIFE INSURANCE CO OF NEBRASKA | \n",
+ " 0001015867 | \n",
+ "
\n",
+ " \n",
+ " | 7 | \n",
+ " LMZ & BERKSHIRE HATHAWAY CO | \n",
+ " 0001652795 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " name cik\n",
+ "0 BERKSHIRE HATHAWAY ENERGY CO 0001081316\n",
+ "1 BERKSHIRE HATHAWAY FINANCE CORP 0001274791\n",
+ "2 BERKSHIRE HATHAWAY HOMESTATE INSURANCE CO. 0000829771\n",
+ "3 BERKSHIRE HATHAWAY INC /DE/ 0000109694\n",
+ "4 BERKSHIRE HATHAWAY INC/DE 0000109694\n",
+ "5 BERKSHIRE HATHAWAY INC 0001067983\n",
+ "6 BERKSHIRE HATHAWAY LIFE INSURANCE CO OF NEBRASKA 0001015867\n",
+ "7 LMZ & BERKSHIRE HATHAWAY CO 0001652795"
+ ]
+ },
+ "execution_count": 9,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "instututions = obb.regulators.sec.institutions_search(\"Berkshire Hathaway\").to_df()\n",
+ "instututions"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Find a Filing\n",
+ "\n",
+ "Search for filings by CIK or ticker symbol."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 10,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "filing_date 2003-02-14\n",
+ "accepted_date 2003-02-14 00:00:00\n",
+ "report_type 13F-NT\n",
+ "filing_url https://www.sec.gov/Archives/edgar/data/000082...\n",
+ "report_url https://www.sec.gov/Archives/edgar/data/000082...\n",
+ "report_date 2002-12-31\n",
+ "act \n",
+ "items \n",
+ "primary_doc_description FORM 13F-NT, PERIOD ENDED 12/31/2002\n",
+ "primary_doc a87269a7e13fvnt.txt\n",
+ "accession_number 0000950150-03-000213\n",
+ "file_number 028-02226\n",
+ "film_number 03565329\n",
+ "is_inline_xbrl 0\n",
+ "is_xbrl 0\n",
+ "size 4246\n",
+ "complete_submission_url https://www.sec.gov/Archives/edgar/data/000082...\n",
+ "Name: 84, dtype: object"
+ ]
+ },
+ "execution_count": 10,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "homestate_filings = obb.equity.fundamental.filings(cik=\"0000829771\", provider=\"sec\")\n",
+ "\n",
+ "homestate_filings.to_df().iloc[-1]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Or, search by form type."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "filing_date 2024-01-11\n",
+ "accepted_date 2024-01-11 00:00:00\n",
+ "report_type DEF 14A\n",
+ "filing_url https://www.sec.gov/Archives/edgar/data/000032...\n",
+ "report_url https://www.sec.gov/Archives/edgar/data/000032...\n",
+ "report_date 2024-02-28\n",
+ "act 34\n",
+ "items \n",
+ "primary_doc_description APPLE INC. - DEF 14A\n",
+ "primary_doc laapl2024_def14a.htm\n",
+ "accession_number 0001308179-24-000010\n",
+ "file_number 001-36743\n",
+ "film_number 24529569\n",
+ "is_inline_xbrl 1\n",
+ "is_xbrl 1\n",
+ "size 9051163\n",
+ "complete_submission_url https://www.sec.gov/Archives/edgar/data/000032...\n",
+ "Name: 0, dtype: object"
+ ]
+ },
+ "execution_count": 12,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "aapl_filings = obb.equity.fundamental.filings(\"AAPL\", type=\"4\", provider=\"sec\")\n",
+ "\n",
+ "aapl_filings.to_df().iloc[0]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Screen Markets\n",
+ "\n",
+ "Screeners provide a targeted search, a tool for comparison and discovery. Find stocks from around the world with the screener endpoint, and the `openbb-fmp` provider.\n",
+ "\n",
+ "### Find Stocks From India"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "5662"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " market_cap | \n",
+ " sector | \n",
+ " industry | \n",
+ " beta | \n",
+ " price | \n",
+ " last_annual_dividend | \n",
+ " volume | \n",
+ " exchange | \n",
+ " exchange_name | \n",
+ " country | \n",
+ " is_etf | \n",
+ " actively_trading | \n",
+ " isFund | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " RELIANCE.NS | \n",
+ " Reliance Industries Limited | \n",
+ " 20273316637500 | \n",
+ " Energy | \n",
+ " Oil & Gas Refining & Marketing | \n",
+ " 0.631 | \n",
+ " 2996.25 | \n",
+ " 10.0 | \n",
+ " 5222236 | \n",
+ " NSE | \n",
+ " National Stock Exchange of India | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " RELIANCE.BO | \n",
+ " Reliance Industries Limited | \n",
+ " 20265535473000 | \n",
+ " Energy | \n",
+ " Oil & Gas Refining & Marketing | \n",
+ " 0.631 | \n",
+ " 2995.1 | \n",
+ " 10.0 | \n",
+ " 193482 | \n",
+ " BSE | \n",
+ " Bombay Stock Exchange | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " TCS.NS | \n",
+ " Tata Consultancy Services Limited | \n",
+ " 16288641180000 | \n",
+ " Technology | \n",
+ " Information Technology Services | \n",
+ " 0.531 | \n",
+ " 4502.0 | \n",
+ " 56.0 | \n",
+ " 1829132 | \n",
+ " NSE | \n",
+ " National Stock Exchange of India | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " TCS.BO | \n",
+ " Tata Consultancy Services Limited | \n",
+ " 16281224095500 | \n",
+ " Technology | \n",
+ " Information Technology Services | \n",
+ " 0.531 | \n",
+ " 4499.95 | \n",
+ " 56.0 | \n",
+ " 81625 | \n",
+ " BSE | \n",
+ " Bombay Stock Exchange | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " HDFCBANK.NS | \n",
+ " HDFC Bank Limited | \n",
+ " 12426411437000 | \n",
+ " Financial Services | \n",
+ " Banks - Regional | \n",
+ " 0.833 | \n",
+ " 1631.3 | \n",
+ " 19.5 | \n",
+ " 10645258 | \n",
+ " NSE | \n",
+ " National Stock Exchange of India | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name market_cap \\\n",
+ "0 RELIANCE.NS Reliance Industries Limited 20273316637500 \n",
+ "1 RELIANCE.BO Reliance Industries Limited 20265535473000 \n",
+ "2 TCS.NS Tata Consultancy Services Limited 16288641180000 \n",
+ "3 TCS.BO Tata Consultancy Services Limited 16281224095500 \n",
+ "4 HDFCBANK.NS HDFC Bank Limited 12426411437000 \n",
+ "\n",
+ " sector industry beta price \\\n",
+ "0 Energy Oil & Gas Refining & Marketing 0.631 2996.25 \n",
+ "1 Energy Oil & Gas Refining & Marketing 0.631 2995.1 \n",
+ "2 Technology Information Technology Services 0.531 4502.0 \n",
+ "3 Technology Information Technology Services 0.531 4499.95 \n",
+ "4 Financial Services Banks - Regional 0.833 1631.3 \n",
+ "\n",
+ " last_annual_dividend volume exchange exchange_name \\\n",
+ "0 10.0 5222236 NSE National Stock Exchange of India \n",
+ "1 10.0 193482 BSE Bombay Stock Exchange \n",
+ "2 56.0 1829132 NSE National Stock Exchange of India \n",
+ "3 56.0 81625 BSE Bombay Stock Exchange \n",
+ "4 19.5 10645258 NSE National Stock Exchange of India \n",
+ "\n",
+ " country is_etf actively_trading isFund \n",
+ "0 IN False True False \n",
+ "1 IN False True False \n",
+ "2 IN False True False \n",
+ "3 IN False True False \n",
+ "4 IN False True False "
+ ]
+ },
+ "execution_count": 7,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "results = obb.equity.screener(country=\"IN\", provider=\"fmp\").to_df()\n",
+ "display(len(results))\n",
+ "results.head(5).convert_dtypes()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 9,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "9"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " last_price | \n",
+ " change | \n",
+ " change_percent | \n",
+ " market_cap | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " IBN | \n",
+ " ICICI Bank Limited Common Stock | \n",
+ " 28.38 | \n",
+ " 0.28 | \n",
+ " 0.00996 | \n",
+ " 99843513339 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " SIFY | \n",
+ " Sify Technologies Limited American Depositary ... | \n",
+ " 0.3256 | \n",
+ " -0.0256 | \n",
+ " -0.07289 | \n",
+ " 59693049 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " RDY | \n",
+ " Dr. Reddy's Laboratories Ltd Common Stock | \n",
+ " 82.698 | \n",
+ " -1.512 | \n",
+ " -0.01796 | \n",
+ " 13795536962 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " WIT | \n",
+ " Wipro Limited Common Stock | \n",
+ " 6.16 | \n",
+ " -0.1 | \n",
+ " -0.01597 | \n",
+ " 32186851595 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " HDB | \n",
+ " HDFC Bank Limited Common Stock | \n",
+ " 59.805 | \n",
+ " -0.645 | \n",
+ " -0.01067 | \n",
+ " 151444414047 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name last_price \\\n",
+ "0 IBN ICICI Bank Limited Common Stock 28.38 \n",
+ "1 SIFY Sify Technologies Limited American Depositary ... 0.3256 \n",
+ "2 RDY Dr. Reddy's Laboratories Ltd Common Stock 82.698 \n",
+ "3 WIT Wipro Limited Common Stock 6.16 \n",
+ "4 HDB HDFC Bank Limited Common Stock 59.805 \n",
+ "\n",
+ " change change_percent market_cap \n",
+ "0 0.28 0.00996 99843513339 \n",
+ "1 -0.0256 -0.07289 59693049 \n",
+ "2 -1.512 -0.01796 13795536962 \n",
+ "3 -0.1 -0.01597 32186851595 \n",
+ "4 -0.645 -0.01067 151444414047 "
+ ]
+ },
+ "execution_count": 9,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# The Nasdaq screener is limited to the American market listings.\n",
+ "results = obb.equity.screener(country=\"india\", provider=\"nasdaq\").to_df()\n",
+ "display(len(results))\n",
+ "results.head(5).convert_dtypes()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Search by Sector"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 11,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "778"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " market_cap | \n",
+ " sector | \n",
+ " industry | \n",
+ " beta | \n",
+ " price | \n",
+ " last_annual_dividend | \n",
+ " volume | \n",
+ " exchange | \n",
+ " exchange_name | \n",
+ " country | \n",
+ " is_etf | \n",
+ " actively_trading | \n",
+ " isFund | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " HDFCBANK.NS | \n",
+ " HDFC Bank Limited | \n",
+ " 12426411437000 | \n",
+ " Financial Services | \n",
+ " Banks - Regional | \n",
+ " 0.833 | \n",
+ " 1631.3 | \n",
+ " 19.5 | \n",
+ " 10645258 | \n",
+ " NSE | \n",
+ " National Stock Exchange of India | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " ICICIBANK.NS | \n",
+ " ICICI Bank Limited | \n",
+ " 8386856697000 | \n",
+ " Financial Services | \n",
+ " Banks - Regional | \n",
+ " 0.862 | \n",
+ " 1191.1 | \n",
+ " 10.0 | \n",
+ " 8563551 | \n",
+ " NSE | \n",
+ " National Stock Exchange of India | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " SBIN.NS | \n",
+ " State Bank of India | \n",
+ " 7320857583000 | \n",
+ " Financial Services | \n",
+ " Banks - Regional | \n",
+ " 0.888 | \n",
+ " 820.3 | \n",
+ " 13.7 | \n",
+ " 7829674 | \n",
+ " NSE | \n",
+ " National Stock Exchange of India | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " SBIN.BO | \n",
+ " State Bank of India | \n",
+ " 7319518891500 | \n",
+ " Financial Services | \n",
+ " Banks - Regional | \n",
+ " 0.888 | \n",
+ " 820.15 | \n",
+ " 13.7 | \n",
+ " 494896 | \n",
+ " BSE | \n",
+ " Bombay Stock Exchange | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " LICI.BO | \n",
+ " Life Insurance Corporation of India | \n",
+ " 6803167418560 | \n",
+ " Financial Services | \n",
+ " Insurance - Life | \n",
+ " 0.576 | \n",
+ " 1075.6 | \n",
+ " 13.0 | \n",
+ " 29486 | \n",
+ " BSE | \n",
+ " Bombay Stock Exchange | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name market_cap \\\n",
+ "0 HDFCBANK.NS HDFC Bank Limited 12426411437000 \n",
+ "1 ICICIBANK.NS ICICI Bank Limited 8386856697000 \n",
+ "2 SBIN.NS State Bank of India 7320857583000 \n",
+ "3 SBIN.BO State Bank of India 7319518891500 \n",
+ "4 LICI.BO Life Insurance Corporation of India 6803167418560 \n",
+ "\n",
+ " sector industry beta price last_annual_dividend \\\n",
+ "0 Financial Services Banks - Regional 0.833 1631.3 19.5 \n",
+ "1 Financial Services Banks - Regional 0.862 1191.1 10.0 \n",
+ "2 Financial Services Banks - Regional 0.888 820.3 13.7 \n",
+ "3 Financial Services Banks - Regional 0.888 820.15 13.7 \n",
+ "4 Financial Services Insurance - Life 0.576 1075.6 13.0 \n",
+ "\n",
+ " volume exchange exchange_name country is_etf \\\n",
+ "0 10645258 NSE National Stock Exchange of India IN False \n",
+ "1 8563551 NSE National Stock Exchange of India IN False \n",
+ "2 7829674 NSE National Stock Exchange of India IN False \n",
+ "3 494896 BSE Bombay Stock Exchange IN False \n",
+ "4 29486 BSE Bombay Stock Exchange IN False \n",
+ "\n",
+ " actively_trading isFund \n",
+ "0 True False \n",
+ "1 True False \n",
+ "2 True False \n",
+ "3 True False \n",
+ "4 True False "
+ ]
+ },
+ "execution_count": 11,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "sector_results = obb.equity.screener(\n",
+ " country=\"IN\", sector=\"financial_services\", provider=\"fmp\"\n",
+ ").to_df()\n",
+ "display(len(sector_results))\n",
+ "sector_results.head(5).convert_dtypes()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "1617"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " last_price | \n",
+ " change | \n",
+ " change_percent | \n",
+ " market_cap | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " CELZ | \n",
+ " Creative Medical Technology Holdings, Inc. Com... | \n",
+ " 3.5 | \n",
+ " 0.3169 | \n",
+ " 0.09956 | \n",
+ " 4683441 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " STEC | \n",
+ " Santech Holdings Limited American Depositary S... | \n",
+ " 0.48 | \n",
+ " 0.043 | \n",
+ " 0.0984 | \n",
+ " 13440000 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " RILYG | \n",
+ " B. Riley Financial, Inc. 5.00% Senior Notes du... | \n",
+ " 12.0 | \n",
+ " 1.03 | \n",
+ " 0.09389 | \n",
+ " 363543636 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " PFTA | \n",
+ " Perception Capital Corp. III Class A Ordinary ... | \n",
+ " 11.75 | \n",
+ " 0.98 | \n",
+ " 0.09099 | \n",
+ " <NA> | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " ALFUW | \n",
+ " Centurion Acquisition Corp. Warrant | \n",
+ " 0.1199 | \n",
+ " 0.0099 | \n",
+ " 0.09 | \n",
+ " <NA> | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name last_price \\\n",
+ "0 CELZ Creative Medical Technology Holdings, Inc. Com... 3.5 \n",
+ "1 STEC Santech Holdings Limited American Depositary S... 0.48 \n",
+ "2 RILYG B. Riley Financial, Inc. 5.00% Senior Notes du... 12.0 \n",
+ "3 PFTA Perception Capital Corp. III Class A Ordinary ... 11.75 \n",
+ "4 ALFUW Centurion Acquisition Corp. Warrant 0.1199 \n",
+ "\n",
+ " change change_percent market_cap \n",
+ "0 0.3169 0.09956 4683441 \n",
+ "1 0.043 0.0984 13440000 \n",
+ "2 1.03 0.09389 363543636 \n",
+ "3 0.98 0.09099 \n",
+ "4 0.0099 0.09 "
+ ]
+ },
+ "execution_count": 12,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# The same can be done with the Nasdaq provider, covering the American market.\n",
+ "sector_results = obb.equity.screener(\n",
+ " sector=\"financial_services\", provider=\"nasdaq\"\n",
+ ").to_df()\n",
+ "display(len(sector_results))\n",
+ "sector_results.head(5).convert_dtypes()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Search by Industry"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 19,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "25"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " country | \n",
+ " sector | \n",
+ " industry | \n",
+ " market_cap | \n",
+ " price | \n",
+ " change_percent | \n",
+ " volume | \n",
+ " price_to_earnings | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " XELB | \n",
+ " Xcel Brands Inc | \n",
+ " USA | \n",
+ " Consumer Cyclical | \n",
+ " Apparel Manufacturing | \n",
+ " 1.696000e+07 | \n",
+ " 0.72 | \n",
+ " 0.0460 | \n",
+ " 2070 | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " SGC | \n",
+ " Superior Group of Companies Inc.. | \n",
+ " USA | \n",
+ " Consumer Cyclical | \n",
+ " Apparel Manufacturing | \n",
+ " 2.280000e+08 | \n",
+ " 13.60 | \n",
+ " 0.0049 | \n",
+ " 39502 | \n",
+ " 19.84 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " JRSH | \n",
+ " Jerash holdings (US) Inc | \n",
+ " USA | \n",
+ " Consumer Cyclical | \n",
+ " Apparel Manufacturing | \n",
+ " 3.626000e+07 | \n",
+ " 2.95 | \n",
+ " 0.0034 | \n",
+ " 1348 | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " PVH | \n",
+ " PVH Corp | \n",
+ " USA | \n",
+ " Consumer Cyclical | \n",
+ " Apparel Manufacturing | \n",
+ " 5.740000e+09 | \n",
+ " 102.71 | \n",
+ " -0.0013 | \n",
+ " 253106 | \n",
+ " 9.09 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " RL | \n",
+ " Ralph Lauren Corp | \n",
+ " USA | \n",
+ " Consumer Cyclical | \n",
+ " Apparel Manufacturing | \n",
+ " 1.051000e+10 | \n",
+ " 169.68 | \n",
+ " -0.0027 | \n",
+ " 157365 | \n",
+ " 16.36 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name country sector \\\n",
+ "0 XELB Xcel Brands Inc USA Consumer Cyclical \n",
+ "1 SGC Superior Group of Companies Inc.. USA Consumer Cyclical \n",
+ "2 JRSH Jerash holdings (US) Inc USA Consumer Cyclical \n",
+ "3 PVH PVH Corp USA Consumer Cyclical \n",
+ "4 RL Ralph Lauren Corp USA Consumer Cyclical \n",
+ "\n",
+ " industry market_cap price change_percent volume \\\n",
+ "0 Apparel Manufacturing 1.696000e+07 0.72 0.0460 2070 \n",
+ "1 Apparel Manufacturing 2.280000e+08 13.60 0.0049 39502 \n",
+ "2 Apparel Manufacturing 3.626000e+07 2.95 0.0034 1348 \n",
+ "3 Apparel Manufacturing 5.740000e+09 102.71 -0.0013 253106 \n",
+ "4 Apparel Manufacturing 1.051000e+10 169.68 -0.0027 157365 \n",
+ "\n",
+ " price_to_earnings \n",
+ "0 NaN \n",
+ "1 19.84 \n",
+ "2 NaN \n",
+ "3 9.09 \n",
+ "4 16.36 "
+ ]
+ },
+ "execution_count": 19,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "industry_results = obb.equity.screener(\n",
+ " industry=\"apparel_manufacturing\", provider=\"finviz\"\n",
+ ").to_df()\n",
+ "display(len(industry_results))\n",
+ "industry_results.head(5)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "297"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " market_cap | \n",
+ " sector | \n",
+ " industry | \n",
+ " beta | \n",
+ " price | \n",
+ " last_annual_dividend | \n",
+ " volume | \n",
+ " exchange | \n",
+ " exchange_name | \n",
+ " country | \n",
+ " is_etf | \n",
+ " actively_trading | \n",
+ " isFund | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " TIMKEN.BO | \n",
+ " Timken India Limited | \n",
+ " 2.787793e+11 | \n",
+ " Industrials | \n",
+ " Manufacturing - Tools & Accessories | \n",
+ " 0.575 | \n",
+ " 3706.25 | \n",
+ " 2.5 | \n",
+ " 5827 | \n",
+ " BSE | \n",
+ " Bombay Stock Exchange | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " TIMKEN.NS | \n",
+ " Timken India Limited | \n",
+ " 2.787003e+11 | \n",
+ " Industrials | \n",
+ " Manufacturing - Tools & Accessories | \n",
+ " 0.575 | \n",
+ " 3705.20 | \n",
+ " 2.5 | \n",
+ " 115595 | \n",
+ " NSE | \n",
+ " National Stock Exchange of India | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " SKFINDIA.BO | \n",
+ " SKF India Limited | \n",
+ " 2.615542e+11 | \n",
+ " Industrials | \n",
+ " Manufacturing - Tools & Accessories | \n",
+ " 0.462 | \n",
+ " 5290.55 | \n",
+ " 130.0 | \n",
+ " 1950 | \n",
+ " BSE | \n",
+ " Bombay Stock Exchange | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " SKFINDIA.NS | \n",
+ " SKF India Limited | \n",
+ " 2.614405e+11 | \n",
+ " Industrials | \n",
+ " Manufacturing - Tools & Accessories | \n",
+ " 0.462 | \n",
+ " 5288.25 | \n",
+ " 130.0 | \n",
+ " 62289 | \n",
+ " NSE | \n",
+ " National Stock Exchange of India | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " PTCIL.NS | \n",
+ " PTC Industries Limited | \n",
+ " 1.890617e+11 | \n",
+ " Industrials | \n",
+ " Manufacturing - Metal Fabrication | \n",
+ " 0.510 | \n",
+ " 13092.10 | \n",
+ " NaN | \n",
+ " 2965 | \n",
+ " NSE | \n",
+ " National Stock Exchange of India | \n",
+ " IN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name market_cap sector \\\n",
+ "0 TIMKEN.BO Timken India Limited 2.787793e+11 Industrials \n",
+ "1 TIMKEN.NS Timken India Limited 2.787003e+11 Industrials \n",
+ "2 SKFINDIA.BO SKF India Limited 2.615542e+11 Industrials \n",
+ "3 SKFINDIA.NS SKF India Limited 2.614405e+11 Industrials \n",
+ "4 PTCIL.NS PTC Industries Limited 1.890617e+11 Industrials \n",
+ "\n",
+ " industry beta price last_annual_dividend \\\n",
+ "0 Manufacturing - Tools & Accessories 0.575 3706.25 2.5 \n",
+ "1 Manufacturing - Tools & Accessories 0.575 3705.20 2.5 \n",
+ "2 Manufacturing - Tools & Accessories 0.462 5290.55 130.0 \n",
+ "3 Manufacturing - Tools & Accessories 0.462 5288.25 130.0 \n",
+ "4 Manufacturing - Metal Fabrication 0.510 13092.10 NaN \n",
+ "\n",
+ " volume exchange exchange_name country is_etf \\\n",
+ "0 5827 BSE Bombay Stock Exchange IN False \n",
+ "1 115595 NSE National Stock Exchange of India IN False \n",
+ "2 1950 BSE Bombay Stock Exchange IN False \n",
+ "3 62289 NSE National Stock Exchange of India IN False \n",
+ "4 2965 NSE National Stock Exchange of India IN False \n",
+ "\n",
+ " actively_trading isFund \n",
+ "0 True False \n",
+ "1 True False \n",
+ "2 True False \n",
+ "3 True False \n",
+ "4 True False "
+ ]
+ },
+ "execution_count": 18,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "industry_results = obb.equity.screener(\n",
+ " industry=\"manufacturing\", provider=\"fmp\", country=\"IN\"\n",
+ ").to_df()\n",
+ "display(len(industry_results))\n",
+ "industry_results.head(5)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Search by Exchange\n",
+ "\n",
+ "Some countries, like America, have multiple exchanges. Narrow the search by combining two or more parameters. The example below finds the companies listed on the American Stock Exchange (AMEX) that are domiciled in China."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 21,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "5"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " market_cap | \n",
+ " sector | \n",
+ " industry | \n",
+ " beta | \n",
+ " price | \n",
+ " last_annual_dividend | \n",
+ " volume | \n",
+ " exchange | \n",
+ " exchange_name | \n",
+ " country | \n",
+ " is_etf | \n",
+ " actively_trading | \n",
+ " isFund | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " MYND | \n",
+ " Mynd.ai, Inc. | \n",
+ " 93150152 | \n",
+ " Consumer Defensive | \n",
+ " Education & Training Services | \n",
+ " 0.939 | \n",
+ " 1.9200 | \n",
+ " 5.628 | \n",
+ " 10348 | \n",
+ " AMEX | \n",
+ " American Stock Exchange | \n",
+ " CN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " AMBO | \n",
+ " Ambow Education Holding Ltd. | \n",
+ " 3731855 | \n",
+ " Consumer Defensive | \n",
+ " Education & Training Services | \n",
+ " 0.733 | \n",
+ " 1.3065 | \n",
+ " NaN | \n",
+ " 21603 | \n",
+ " AMEX | \n",
+ " American Stock Exchange | \n",
+ " CN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " CPHI | \n",
+ " China Pharma Holdings, Inc. | \n",
+ " 3664258 | \n",
+ " Healthcare | \n",
+ " Drug Manufacturers - Specialty & Generic | \n",
+ " 0.726 | \n",
+ " 0.2135 | \n",
+ " NaN | \n",
+ " 77994 | \n",
+ " AMEX | \n",
+ " American Stock Exchange | \n",
+ " CN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " DXF | \n",
+ " Dunxin Financial Holdings Limited | \n",
+ " 3243104 | \n",
+ " Financial Services | \n",
+ " Financial - Credit Services | \n",
+ " 1.304 | \n",
+ " 0.1394 | \n",
+ " NaN | \n",
+ " 187314 | \n",
+ " AMEX | \n",
+ " American Stock Exchange | \n",
+ " CN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " ITP | \n",
+ " IT Tech Packaging, Inc. | \n",
+ " 2413803 | \n",
+ " Basic Materials | \n",
+ " Paper, Lumber & Forest Products | \n",
+ " -0.120 | \n",
+ " 0.2398 | \n",
+ " NaN | \n",
+ " 3062 | \n",
+ " AMEX | \n",
+ " American Stock Exchange | \n",
+ " CN | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name market_cap sector \\\n",
+ "0 MYND Mynd.ai, Inc. 93150152 Consumer Defensive \n",
+ "1 AMBO Ambow Education Holding Ltd. 3731855 Consumer Defensive \n",
+ "2 CPHI China Pharma Holdings, Inc. 3664258 Healthcare \n",
+ "3 DXF Dunxin Financial Holdings Limited 3243104 Financial Services \n",
+ "4 ITP IT Tech Packaging, Inc. 2413803 Basic Materials \n",
+ "\n",
+ " industry beta price \\\n",
+ "0 Education & Training Services 0.939 1.9200 \n",
+ "1 Education & Training Services 0.733 1.3065 \n",
+ "2 Drug Manufacturers - Specialty & Generic 0.726 0.2135 \n",
+ "3 Financial - Credit Services 1.304 0.1394 \n",
+ "4 Paper, Lumber & Forest Products -0.120 0.2398 \n",
+ "\n",
+ " last_annual_dividend volume exchange exchange_name country \\\n",
+ "0 5.628 10348 AMEX American Stock Exchange CN \n",
+ "1 NaN 21603 AMEX American Stock Exchange CN \n",
+ "2 NaN 77994 AMEX American Stock Exchange CN \n",
+ "3 NaN 187314 AMEX American Stock Exchange CN \n",
+ "4 NaN 3062 AMEX American Stock Exchange CN \n",
+ "\n",
+ " is_etf actively_trading isFund \n",
+ "0 False True False \n",
+ "1 False True False \n",
+ "2 False True False \n",
+ "3 False True False \n",
+ "4 False True False "
+ ]
+ },
+ "execution_count": 21,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "exchange_results = obb.equity.screener(\n",
+ " exchange=\"amex\", country=\"CN\", provider=\"fmp\"\n",
+ ").to_df()\n",
+ "display(len(exchange_results))\n",
+ "exchange_results"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Filter ADRs\n",
+ "\n",
+ "Use the Nasdaq screener to get only American Depositary Receipts"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 22,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " last_price | \n",
+ " change | \n",
+ " change_percent | \n",
+ " market_cap | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " GDS | \n",
+ " GDS Holdings Limited ADS | \n",
+ " 16.1350 | \n",
+ " 1.3750 | \n",
+ " 0.09316 | \n",
+ " 95038491 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " YQ | \n",
+ " 17 Education & Technology Group Inc. American ... | \n",
+ " 2.1700 | \n",
+ " 0.1700 | \n",
+ " 0.08500 | \n",
+ " 7207460 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " STEC | \n",
+ " Santech Holdings Limited American Depositary S... | \n",
+ " 0.4729 | \n",
+ " 0.0359 | \n",
+ " 0.08215 | \n",
+ " 4125000 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " TURB | \n",
+ " Turbo Energy, S.A. American Depositary Shares | \n",
+ " 1.5342 | \n",
+ " 0.1043 | \n",
+ " 0.07294 | \n",
+ " 1000000 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " FRES | \n",
+ " Fresh2 Group Limited American Depositary Shares | \n",
+ " 1.7297 | \n",
+ " 0.0997 | \n",
+ " 0.06117 | \n",
+ " 644183 | \n",
+ "
\n",
+ " \n",
+ " | ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " | 190 | \n",
+ " JFU | \n",
+ " 9F Inc. American Depositary Shares | \n",
+ " 1.8000 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 3584421 | \n",
+ "
\n",
+ " \n",
+ " | 191 | \n",
+ " XHG | \n",
+ " XChange TEC.INC American Depositary Shares | \n",
+ " 0.9500 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 2780673 | \n",
+ "
\n",
+ " \n",
+ " | 192 | \n",
+ " JZ | \n",
+ " Jianzhi Education Technology Group Company Lim... | \n",
+ " 0.8000 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 1666667 | \n",
+ "
\n",
+ " \n",
+ " | 193 | \n",
+ " NWGL | \n",
+ " Nature Wood Group Limited American Depositary ... | \n",
+ " 1.6000 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 1493743 | \n",
+ "
\n",
+ " \n",
+ " | 194 | \n",
+ " FORTY | \n",
+ " Formula Systems (1985) Ltd. American Depositar... | \n",
+ " 76.0550 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 131939 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
195 rows × 6 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name last_price \\\n",
+ "0 GDS GDS Holdings Limited ADS 16.1350 \n",
+ "1 YQ 17 Education & Technology Group Inc. American ... 2.1700 \n",
+ "2 STEC Santech Holdings Limited American Depositary S... 0.4729 \n",
+ "3 TURB Turbo Energy, S.A. American Depositary Shares 1.5342 \n",
+ "4 FRES Fresh2 Group Limited American Depositary Shares 1.7297 \n",
+ ".. ... ... ... \n",
+ "190 JFU 9F Inc. American Depositary Shares 1.8000 \n",
+ "191 XHG XChange TEC.INC American Depositary Shares 0.9500 \n",
+ "192 JZ Jianzhi Education Technology Group Company Lim... 0.8000 \n",
+ "193 NWGL Nature Wood Group Limited American Depositary ... 1.6000 \n",
+ "194 FORTY Formula Systems (1985) Ltd. American Depositar... 76.0550 \n",
+ "\n",
+ " change change_percent market_cap \n",
+ "0 1.3750 0.09316 95038491 \n",
+ "1 0.1700 0.08500 7207460 \n",
+ "2 0.0359 0.08215 4125000 \n",
+ "3 0.1043 0.07294 1000000 \n",
+ "4 0.0997 0.06117 644183 \n",
+ ".. ... ... ... \n",
+ "190 NaN NaN 3584421 \n",
+ "191 NaN NaN 2780673 \n",
+ "192 NaN NaN 1666667 \n",
+ "193 NaN NaN 1493743 \n",
+ "194 NaN NaN 131939 \n",
+ "\n",
+ "[195 rows x 6 columns]"
+ ]
+ },
+ "execution_count": 22,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "obb.equity.screener(exsubcategory=\"adr\", provider=\"nasdaq\").to_df()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Filter by Metric\n",
+ "\n",
+ "Applying some filters refines and targets the search. The example below finds listing on the NYSE domiciled in the USA, with a market cap between $100-300 billion, and exhibiting a beta value of less than 0.5"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 13,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " market_cap | \n",
+ " sector | \n",
+ " industry | \n",
+ " beta | \n",
+ " price | \n",
+ " last_annual_dividend | \n",
+ " volume | \n",
+ " exchange | \n",
+ " exchange_name | \n",
+ " country | \n",
+ " is_etf | \n",
+ " actively_trading | \n",
+ " isFund | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " MRK | \n",
+ " Merck & Co., Inc. | \n",
+ " 294367485300 | \n",
+ " Healthcare | \n",
+ " Drug Manufacturers - General | \n",
+ " 0.389000 | \n",
+ " 116.130 | \n",
+ " 3.08000 | \n",
+ " 3111763 | \n",
+ " NYSE | \n",
+ " New York Stock Exchange | \n",
+ " US | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " VZ | \n",
+ " Verizon Communications Inc. | \n",
+ " 171053845200 | \n",
+ " Communication Services | \n",
+ " Telecommunications Services | \n",
+ " 0.393000 | \n",
+ " 40.635 | \n",
+ " 2.66000 | \n",
+ " 6202285 | \n",
+ " NYSE | \n",
+ " New York Stock Exchange | \n",
+ " US | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " TBC | \n",
+ " AT&T Inc. 5.625% Global Notes d | \n",
+ " 140078065351 | \n",
+ " Communication Services | \n",
+ " Telecommunications Services | \n",
+ " 0.275703 | \n",
+ " 24.565 | \n",
+ " 1.40628 | \n",
+ " 18782 | \n",
+ " NYSE | \n",
+ " New York Stock Exchange | \n",
+ " US | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " PGR | \n",
+ " The Progressive Corporation | \n",
+ " 139775286220 | \n",
+ " Financial Services | \n",
+ " Insurance - Property & Casualty | \n",
+ " 0.356000 | \n",
+ " 238.660 | \n",
+ " 0.40000 | \n",
+ " 616656 | \n",
+ " NYSE | \n",
+ " New York Stock Exchange | \n",
+ " US | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " TBB | \n",
+ " AT&T Inc. 5.35% GLB NTS 66 | \n",
+ " 139658512827 | \n",
+ " Communication Services | \n",
+ " Telecommunications Services | \n",
+ " 0.253859 | \n",
+ " 23.395 | \n",
+ " 1.33752 | \n",
+ " 21852 | \n",
+ " NYSE | \n",
+ " New York Stock Exchange | \n",
+ " US | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ " | 5 | \n",
+ " LMT | \n",
+ " Lockheed Martin Corporation | \n",
+ " 132376882460 | \n",
+ " Industrials | \n",
+ " Aerospace & Defense | \n",
+ " 0.454000 | \n",
+ " 555.370 | \n",
+ " 12.60000 | \n",
+ " 304130 | \n",
+ " NYSE | \n",
+ " New York Stock Exchange | \n",
+ " US | \n",
+ " False | \n",
+ " True | \n",
+ " False | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name market_cap \\\n",
+ "0 MRK Merck & Co., Inc. 294367485300 \n",
+ "1 VZ Verizon Communications Inc. 171053845200 \n",
+ "2 TBC AT&T Inc. 5.625% Global Notes d 140078065351 \n",
+ "3 PGR The Progressive Corporation 139775286220 \n",
+ "4 TBB AT&T Inc. 5.35% GLB NTS 66 139658512827 \n",
+ "5 LMT Lockheed Martin Corporation 132376882460 \n",
+ "\n",
+ " sector industry beta price \\\n",
+ "0 Healthcare Drug Manufacturers - General 0.389000 116.130 \n",
+ "1 Communication Services Telecommunications Services 0.393000 40.635 \n",
+ "2 Communication Services Telecommunications Services 0.275703 24.565 \n",
+ "3 Financial Services Insurance - Property & Casualty 0.356000 238.660 \n",
+ "4 Communication Services Telecommunications Services 0.253859 23.395 \n",
+ "5 Industrials Aerospace & Defense 0.454000 555.370 \n",
+ "\n",
+ " last_annual_dividend volume exchange exchange_name country \\\n",
+ "0 3.08000 3111763 NYSE New York Stock Exchange US \n",
+ "1 2.66000 6202285 NYSE New York Stock Exchange US \n",
+ "2 1.40628 18782 NYSE New York Stock Exchange US \n",
+ "3 0.40000 616656 NYSE New York Stock Exchange US \n",
+ "4 1.33752 21852 NYSE New York Stock Exchange US \n",
+ "5 12.60000 304130 NYSE New York Stock Exchange US \n",
+ "\n",
+ " is_etf actively_trading isFund \n",
+ "0 False True False \n",
+ "1 False True False \n",
+ "2 False True False \n",
+ "3 False True False \n",
+ "4 False True False \n",
+ "5 False True False "
+ ]
+ },
+ "execution_count": 13,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "obb.equity.screener(\n",
+ " exchange=\"nyse\",\n",
+ " mktcap_min=100000000000,\n",
+ " mktcap_max=300000000000,\n",
+ " country=\"us\",\n",
+ " beta_max=0.5,\n",
+ " provider=\"fmp\",\n",
+ ").to_df()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Finviz Screener\n",
+ "\n",
+ "The `openbb-finviz` provider extension supports screener presets from V3 SDK and Terminal. See the details here: [https://pypi.org/project/openbb-finviz/](https://pypi.org/project/openbb-finviz/)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 27,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " symbol | \n",
+ " name | \n",
+ " country | \n",
+ " sector | \n",
+ " industry | \n",
+ " market_cap | \n",
+ " price | \n",
+ " change_percent | \n",
+ " volume | \n",
+ " price_to_earnings | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " GRFS | \n",
+ " Grifols SA ADR | \n",
+ " Spain | \n",
+ " Healthcare | \n",
+ " Drug Manufacturers - General | \n",
+ " 2.270000e+09 | \n",
+ " 8.81 | \n",
+ " 0.1488 | \n",
+ " 5055854 | \n",
+ " 35.13 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " ZM | \n",
+ " Zoom Video Communications Inc | \n",
+ " USA | \n",
+ " Technology | \n",
+ " Software - Application | \n",
+ " 2.097000e+10 | \n",
+ " 67.81 | \n",
+ " 0.1258 | \n",
+ " 15285228 | \n",
+ " 24.27 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " EVH | \n",
+ " Evolent Health Inc | \n",
+ " USA | \n",
+ " Healthcare | \n",
+ " Health Information Services | \n",
+ " 3.680000e+09 | \n",
+ " 31.61 | \n",
+ " 0.1247 | \n",
+ " 4519171 | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " GDS | \n",
+ " GDS Holdings Limited ADR | \n",
+ " China | \n",
+ " Technology | \n",
+ " Information Technology Services | \n",
+ " 3.060000e+09 | \n",
+ " 16.19 | \n",
+ " 0.0968 | \n",
+ " 2308546 | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " LCID | \n",
+ " Lucid Group Inc | \n",
+ " USA | \n",
+ " Consumer Cyclical | \n",
+ " Auto Manufacturers | \n",
+ " 9.070000e+09 | \n",
+ " 3.91 | \n",
+ " 0.0922 | \n",
+ " 41571321 | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 5 | \n",
+ " OSIS | \n",
+ " OSI Systems Inc. | \n",
+ " USA | \n",
+ " Technology | \n",
+ " Electronic Components | \n",
+ " 2.690000e+09 | \n",
+ " 157.68 | \n",
+ " 0.0903 | \n",
+ " 299756 | \n",
+ " 21.68 | \n",
+ "
\n",
+ " \n",
+ " | 6 | \n",
+ " ZK | \n",
+ " ZEEKR Intelligent Technology Holding Ltd. ADR | \n",
+ " China | \n",
+ " Consumer Cyclical | \n",
+ " Auto Manufacturers | \n",
+ " 4.450000e+09 | \n",
+ " 17.99 | \n",
+ " 0.0677 | \n",
+ " 792117 | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 7 | \n",
+ " QXO | \n",
+ " QXO Inc. | \n",
+ " USA | \n",
+ " Technology | \n",
+ " Software - Application | \n",
+ " 5.870000e+09 | \n",
+ " 14.34 | \n",
+ " 0.0614 | \n",
+ " 4871978 | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " symbol name country \\\n",
+ "0 GRFS Grifols SA ADR Spain \n",
+ "1 ZM Zoom Video Communications Inc USA \n",
+ "2 EVH Evolent Health Inc USA \n",
+ "3 GDS GDS Holdings Limited ADR China \n",
+ "4 LCID Lucid Group Inc USA \n",
+ "5 OSIS OSI Systems Inc. USA \n",
+ "6 ZK ZEEKR Intelligent Technology Holding Ltd. ADR China \n",
+ "7 QXO QXO Inc. USA \n",
+ "\n",
+ " sector industry market_cap price \\\n",
+ "0 Healthcare Drug Manufacturers - General 2.270000e+09 8.81 \n",
+ "1 Technology Software - Application 2.097000e+10 67.81 \n",
+ "2 Healthcare Health Information Services 3.680000e+09 31.61 \n",
+ "3 Technology Information Technology Services 3.060000e+09 16.19 \n",
+ "4 Consumer Cyclical Auto Manufacturers 9.070000e+09 3.91 \n",
+ "5 Technology Electronic Components 2.690000e+09 157.68 \n",
+ "6 Consumer Cyclical Auto Manufacturers 4.450000e+09 17.99 \n",
+ "7 Technology Software - Application 5.870000e+09 14.34 \n",
+ "\n",
+ " change_percent volume price_to_earnings \n",
+ "0 0.1488 5055854 35.13 \n",
+ "1 0.1258 15285228 24.27 \n",
+ "2 0.1247 4519171 NaN \n",
+ "3 0.0968 2308546 NaN \n",
+ "4 0.0922 41571321 NaN \n",
+ "5 0.0903 299756 21.68 \n",
+ "6 0.0677 792117 NaN \n",
+ "7 0.0614 4871978 NaN "
+ ]
+ },
+ "execution_count": 27,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "obb.equity.screener(\n",
+ " metric=\"overview\", signal=\"top_gainers\", provider=\"finviz\", mktcap=\"mid_over\"\n",
+ ").to_df()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Get Available Indices\n",
+ "\n",
+ "List all indices from a source with:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 28,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "274\n"
+ ]
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " name | \n",
+ " code | \n",
+ " symbol | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 88 | \n",
+ " S&P/ASX 200 Index (AUD) | \n",
+ " au_asx200 | \n",
+ " ^AXJO | \n",
+ "
\n",
+ " \n",
+ " | 90 | \n",
+ " S&P/ASX 200 Energy Sector Index (AUD) | \n",
+ " au_energy | \n",
+ " ^AXEJ | \n",
+ "
\n",
+ " \n",
+ " | 91 | \n",
+ " S&P/ASX 200 Resources Sector Index (AUD) | \n",
+ " au_resources | \n",
+ " ^AXJR | \n",
+ "
\n",
+ " \n",
+ " | 92 | \n",
+ " S&P/ASX 200 Materials Sector Index (AUD) | \n",
+ " au_materials | \n",
+ " ^AXMJ | \n",
+ "
\n",
+ " \n",
+ " | 94 | \n",
+ " S&P/ASX 200 Industrials Sector Index (AUD) | \n",
+ " au_industrials | \n",
+ " ^AXNJ | \n",
+ "
\n",
+ " \n",
+ " | 95 | \n",
+ " S&P/ASX 200 Consumer Discretionary Sector Inde... | \n",
+ " au_discretionary | \n",
+ " ^AXDJ | \n",
+ "
\n",
+ " \n",
+ " | 96 | \n",
+ " S&P/ASX 200 Consumer Staples Sector Index (AUD) | \n",
+ " au_staples | \n",
+ " ^AXSJ | \n",
+ "
\n",
+ " \n",
+ " | 97 | \n",
+ " S&P/ASX 200 Health Care Sector Index (AUD) | \n",
+ " au_health | \n",
+ " ^AXHJ | \n",
+ "
\n",
+ " \n",
+ " | 98 | \n",
+ " S&P/ASX 200 Financials Sector Index (AUD) | \n",
+ " au_financials | \n",
+ " ^AXFJ | \n",
+ "
\n",
+ " \n",
+ " | 99 | \n",
+ " S&P/ASX 200 A-REIT Industry Index (AUD) | \n",
+ " au_reit | \n",
+ " ^AXPJ | \n",
+ "
\n",
+ " \n",
+ " | 100 | \n",
+ " S&P/ASX 200 Info Tech Sector Index (AUD) | \n",
+ " au_tech | \n",
+ " ^AXIJ | \n",
+ "
\n",
+ " \n",
+ " | 101 | \n",
+ " S&P/ASX 200 Communications Sector Index (AUD) | \n",
+ " au_communications | \n",
+ " ^AXTJ | \n",
+ "
\n",
+ " \n",
+ " | 102 | \n",
+ " S&P/ASX 200 Utilities Sector Index (AUD) | \n",
+ " au_utilities | \n",
+ " ^AXUJ | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " name code \\\n",
+ "88 S&P/ASX 200 Index (AUD) au_asx200 \n",
+ "90 S&P/ASX 200 Energy Sector Index (AUD) au_energy \n",
+ "91 S&P/ASX 200 Resources Sector Index (AUD) au_resources \n",
+ "92 S&P/ASX 200 Materials Sector Index (AUD) au_materials \n",
+ "94 S&P/ASX 200 Industrials Sector Index (AUD) au_industrials \n",
+ "95 S&P/ASX 200 Consumer Discretionary Sector Inde... au_discretionary \n",
+ "96 S&P/ASX 200 Consumer Staples Sector Index (AUD) au_staples \n",
+ "97 S&P/ASX 200 Health Care Sector Index (AUD) au_health \n",
+ "98 S&P/ASX 200 Financials Sector Index (AUD) au_financials \n",
+ "99 S&P/ASX 200 A-REIT Industry Index (AUD) au_reit \n",
+ "100 S&P/ASX 200 Info Tech Sector Index (AUD) au_tech \n",
+ "101 S&P/ASX 200 Communications Sector Index (AUD) au_communications \n",
+ "102 S&P/ASX 200 Utilities Sector Index (AUD) au_utilities \n",
+ "\n",
+ " symbol \n",
+ "88 ^AXJO \n",
+ "90 ^AXEJ \n",
+ "91 ^AXJR \n",
+ "92 ^AXMJ \n",
+ "94 ^AXNJ \n",
+ "95 ^AXDJ \n",
+ "96 ^AXSJ \n",
+ "97 ^AXHJ \n",
+ "98 ^AXFJ \n",
+ "99 ^AXPJ \n",
+ "100 ^AXIJ \n",
+ "101 ^AXTJ \n",
+ "102 ^AXUJ "
+ ]
+ },
+ "execution_count": 28,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "indices = obb.index.available(provider=\"yfinance\").to_df()\n",
+ "print(len(indices))\n",
+ "\n",
+ "indices[indices[\"name\"].str.contains(\"ASX 200\")]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Filter the list down by querying the DataFrame."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "With the `openbb-yfinance` extension, index time series can be loaded using the ticker symbol or short code. Non-American indices have a code beginning with the two-letter country code."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 29,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " open | \n",
+ " high | \n",
+ " low | \n",
+ " close | \n",
+ " volume | \n",
+ "
\n",
+ " \n",
+ " | date | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 2024-08-22 | \n",
+ " True | \n",
+ " True | \n",
+ " True | \n",
+ " True | \n",
+ " True | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " open high low close volume\n",
+ "date \n",
+ "2024-08-22 True True True True True"
+ ]
+ },
+ "execution_count": 29,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "(\n",
+ " obb.index.price.historical(\"au_utilities\", provider=\"yfinance\").to_df().tail(1)\n",
+ " == obb.index.price.historical(\"^AXUJ\", provider=\"yfinance\").to_df().tail(1)\n",
+ ")"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "obb-sdk4",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.12.4"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}