mirror of
https://github.com/OpenBB-finance/OpenBB.git
synced 2026-05-08 06:51:32 +08:00
* [Docs] Refactor Contributing Section Of Docs (#6173) * development index * refactor development section of documentation * codespell * add template zip file * fixing * update changed syntax * dependency thing * fix sentence * review edits, add_toolkit_extension * Add ZIp file * headtitle * couple more things * codespell * fix sentence * url fix * review updates * forgot one file in the commit * syntax updates * json file * more syntax things --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Docs] Add Streamlit News Dashboard To Examples (#6158) * add streamlit news dashboard example * black * ruff * now black again * import block? * ruff puts it back to exactly how it was before * try running linters again * noqa it is --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] Add Charts For FRED Series (#6234) * add fred_series charts * pylint * [Feature] Add Intrinio to `obb.equity.market_snapshots()` (#6232) * add intrinio to equity market snapshots * field definitions * map date * static files * black * date check * test cassette * pylint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Merge Fix FMP Intraday (#6229) From Main (#6235) * [Critical] Sync `main` with `develop` (#6202) * feature/intrinio-equity-search: Adds Intrinio to `obb.equity.search()` (#5863) * intrinio equity search * integration tests * test --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/yfinance-multi-ticker: Adds support to openbb-yfinance for multi-ticker download. (#5845) * yfinance multi-ticker support * multi-ticker support for market indices * crypto multi-ticker support * recapture tests * yfinance cache and tests * currency historical multi-ticker support * style things * black * missed a values --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Feature/us-treasury-prices: Adds Treasury Prices to Fixed Income (#5776) * add treasury prices endpoint to fixed income router * adds tests * black * ruff * import statements * standard model imports * black * some cleanup * black * async router * make async * str outpuot * bytes object not string * docstring typo * multi-line f-string * encoding * duplicated conditional * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/sec-etf-holdings: Adds ETF holdings from SEC provider (#5757) * add ETF holdings from SEC provider * black * helper function params * edge cases * ruff * add validator in company filings * remove xml field * update import * cleanup parsing * missing datetime import in company_filings * black * unused import * add missing py.typed files * feature/nasdaq-equity-search: Adds Nasdaq provider for `obb.equity.search()` (#5790) * add nasdaq to equity search * black * unused import * make async --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Excel docs (#5870) * first test * remove old reference * bring this file back * generate sidebar and write empty mds * generate index.mdx * get description from cmd_lib * fix reference card error * rename file * generate markdown * regen * add last+hist * update pages with seo metadata * format types * small fix * css sux * add usage placeholder * set hidden by default * nah * add cmds and menus to reference * lint * fix/Users/diogosousa/opt/anaconda3/envs/platform/bin/python /Users/diogosousa/OpenBB/OpenBBTerminal/website/generate_excel_markdown.py * format mds * remove space * fix commands heading * redo folder structure * add back cmd description * move card to var * different main folder * clean * move vars * refer to editor * rename var * done * recreate folder structure * add section: syntax + minor adjustments * remove return type * remove return type * rename api to library * minor fix * remove api folder * remove api folder * formatting * improve basics * basics * fetch functions.json from website * complete basic * change syntax to use semi-colon * basics * basics * remove space in sig * remove sections * add metadata * Update formula builder * add tabs * Update index.md * complete basics and formula_builder * Update index.md * add windows screenshots * restructure folders * regenerate with latest add-in version * move Excel sidebar * rename function and add comment * now it's working * logic * rename folder * Update formula_builder.md * fix * hide excel for now * some explicit typing --------- Co-authored-by: tehcoderer <me@tehcoderer.com> * Make Pro Fetchers async by replacing `ThreadPoolExecutor` with `asyncio.gather` (#5822) * init * Update helpers.py * filter URL on raise * polygon, fmp done, update cassettes * updates * cleanup * revert tests for now * Update discovery_filings.py * Update helpers.py * add `async` overload to `Fetcher.extract_data` * update merged fred models * tests, improve fred series * Update insider_trading.py * insider * tests * intrinio * Update equity_historical.py * implement abstract async extract on Fetcher, with simple switch * cleanup * Update helpers.py * Update helpers.py * fix fmp historical deprecated urls * Revert "fix fmp historical deprecated urls" This reverts commit1a760a2473. * fix fmp `index.market` 1day url missing query params * Update test_fmp_market_indices_fetcher.yaml * field fixes * `extract_data_async` -> `aextract_data`, `async_request` -> `amake_request` * `async_requests` -> `amake_requests` * Update company_news.py * add sort to index `integration` params * add `client.py` tests * Update equity_search.py * Add lost v in platform api version string * Resolve linter errors here and there --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Allow this to be run in parallel (#5872) * Limit mypy v3 linting to only the diff of the PR (#5878) * Use custom parametrize from news menu tests (#5873) * Use custom parametrize from news menu tests * Update Ultima unit test cassettes * Command Schema (#5874) * POC * Filter by provider * pass base_app as parameter * add typing + TODO * fix some typing * Fix unit tests --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * Parameterize `obbject.to_df` with `index` and `sort_by` (#5877) * Parameterize obbject.to_df with index and sort_by * unit tests for obbject * keep using the date as default to use on basemode_to_df() --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Changes to the `obb.fixedincome.corporate.hqm()` output (#5876) * changes to the hqm output * typo --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Refactor method in RegistryMap (#5879) * refactor extract_info * add comment --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * remove Literal from providers in OBBject (#5882) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix version (#5883) * Fix version * Fix linter on terminal * Refactor package builder (#5880) * breakdown builder + remove black * rebuild * rebuild * rebuild * rename method * format built code without black * we still lint if it's available * fix existing tests * add linter tests * add black to dev deps * auto_build as instance method * reorder methods * typing --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * small refactor for simplification (#5886) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix bug. Add router test. (#5888) * Fix bug. Add router test. * Simplify * separate pylint between platform + terminal (#5892) * separate pylint b/w platform + terminal * Explicitly set pylint check scope to files in the diff --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * sync descriptions (#5893) * Add REST API docs page with advanced settings configuration (#5890) * Don't mention docker in a list of python envs * Create a REST API page * Update docs to get api keys from the hub * Update installation instructions * Mention requirement of poetry and toml in source installation section * move rest page up to the top. and add url to google colab example notebook --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * fix a v3 syntax example (#5891) * Adds federal reserve data points (#5885) * Allow optional input for 2-month treasury rates and add FederalReserve rates model The commit includes two main changes. One being the modification to the standard treasury rate models, where the 2-month input field is now optional, and a default value is set to none. The other main change is the addition of a new module for the FederalReserve treasury rates model, which includes query parameters, a data model, and a data fetcher. * Add Money Measures models and commands This commit introduces new Money Measures models to handle money-related data, defines Money Measures commands in the economy router, and implements the Federal Reserve Money Measures model. The core model includes fields like start_date, end_date, and various components of the money supply. The new command added to the economy router allows the querying of these data. * Add Federal Reserve Money Measures test file This commit adds a test case file for the Federal Reserve Money Measures fetcher in the Federal Reserve module. The test case includes simulating a GET request and the corresponding expected response from the server. * Cleanup * Sneaky unformatted integration tests * its a dawg life for me ...... ruff * add the fed funds rate * didnt mean to commmit this * black * this is why we should pre commit kids * change install name * add providers to int tests * review comments + commit static * replace nan with None * fix float on None * get rid of nans for nulls for json handling * change `_` to `-` in readme pip install. * Update __init__.py docstring --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Check if outdated (#5898) * Add econometrics API tests (#5899) * Docs/excel update (#5889) * update xl docs * update syntax line * update again * Fix pylint scope (#5895) * Allow optional input for 2-month treasury rates and add FederalReserve rates model The commit includes two main changes. One being the modification to the standard treasury rate models, where the 2-month input field is now optional, and a default value is set to none. The other main change is the addition of a new module for the FederalReserve treasury rates model, which includes query parameters, a data model, and a data fetcher. * Add Money Measures models and commands This commit introduces new Money Measures models to handle money-related data, defines Money Measures commands in the economy router, and implements the Federal Reserve Money Measures model. The core model includes fields like start_date, end_date, and various components of the money supply. The new command added to the economy router allows the querying of these data. * Add Federal Reserve Money Measures test file This commit adds a test case file for the Federal Reserve Money Measures fetcher in the Federal Reserve module. The test case includes simulating a GET request and the corresponding expected response from the server. * Cleanup * Sneaky unformatted integration tests * its a dawg life for me ...... ruff * add the fed funds rate * didnt mean to commmit this * black * this is why we should pre commit kids * change install name * add providers to int tests * review comments + commit static * replace nan with None * fix float on None * get rid of nans for nulls for json handling * change `_` to `-` in readme pip install. * Update __init__.py docstring * Debug pylint * Adjust the fetch depth --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * fix `from openbb import obb` asyncio lock in python REPL (#5896) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * feature/financials - PR for working on structure of financial statements. (#5794) * balance sheet draft * balance_sheet draft * cash_flow draft * income_statement draft * intrinio financials * description * period field * ruff * income statement * field * label - gross profit ratio * cash flow statement * investing order * add option for caching to cashflow * add caching to balance and income * typos and update order for financial institutions * replace 0 values with None * add financial ratios from intrinio * black * missing test params * balance cassette * query param description * symbol list warning * black * handle BRK-A and symbols with a dash for Intrinio * fix typo error * add free cash flow to bottom of cash flow statement * amortization_expense * dev_install.py * undo dev_install.. wrong branch * cash flow order things * standardized cash flow * fields * integration tests * cash flow model validator * more polygon cash * black * black * Delete openbb_sdk/providers/polygon/openbb_polygon/utils/definitions.py wrong file * balance sheet * some cleanup * ruff * income statement * black * test params * financial ratios async update * recapture fmp and polygon tests * yFinance financials * yfinance tests * delete financial_statements standard model * intrinio balance sheet order * fiscal year standard param * remove file accidentally committed * add reported_financials end point * fiscal_year param for reported_financials * fix url * fmp test cassette * add safe-guard with warning for fiscal year before 2008 * periods can only be annual and quarter * url in docstring correction * add fiscal_year param to intrinio standardized financials and ratios * fix fmp ratios * black * rename fields as per Minh * rogue field * black * Fix typo in a docstring * Resolve linting errors * type ignore * disable=unused-argument * changing the arg name cc @minhhoang1023 --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * docs/legacy-install: Add warning at top of page - Instructions on this page are for installing the Terminal (#5904) * add warning at top of page - instructions are for installing the Terminal app * pip install openbb-nightly * hotfix/financials-field-maps: Updates A Couple FMP/Polygon Income Statement Fields (#5907) * update income statement fields * another polygon field * ratio -> margin * black * explicit fmp fields * add reported_currency for standardized intrinio * # pylint: disable=unused-argument * another unused-argument * black.. * patch tests * polygon income: eps -> basic earnings per share * re-capture terminal portfolio menu test --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Fix test (#5916) * Fix test * Skip ultima integration tests --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * hotfix/fmp-price-performance-zeros: Replace returned zero with None and normalize percent values. (#5918) * replace zeros with none and normalize percents * pylint unused argument * Update index.md (#5906) * Release/4.1.0 (#5901) * Hotfix/terminal tests (#5919) * skip supressed arguments * silent way of customly load on quote * specify source for call_load * docs/platform-faq: Start Platform FAQ page with bullet points on Platform vs SDK (#5914) * platform vs sdk faq page * add data and data providers faq section and some style cards * typo * makes changes as per reviews * openbb-nightly as a way to install everything * jupyter-lab instead of jupyter --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * hotfix/backend - Initialize OpenBBFigure (#5912) * create backend * openbb_figure * black * pylint * pylint again --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * hotfix/yf-futures-historical: yfinance historical futures multi-ticker support and symbol parsing (#5923) * multi-ticker support for yfinance futures historical * raise-missing-from * integration test params * equity_historical adjusted kwargs * pylint unused argument * Docs/excel examples (#5920) * regen excel md * add syntax + basic example * fix example * create json with docs map * update docs to latest functions.json + remove tiingo * remove space from examples * minor fix * remove spaces * remove spaces * bug fix: remove folder before generating * fix typo * add link to appsource * fix * Update templates.md * regenerate content * change docs colors * fix light mode * add back tiingo * update functions.json * templates go later * remove Library from reference * Make the excel markdown being generated at runtime * fix reference cards having commands under menu * remove excel/reference folder since this is built at runtime by gh-pages action * black formatting * improve title * add excel to the main page * add excel image bg * make excel sidebar show up next to pro * improve main page * small fix for platform page title * update basics page * add tip to autocomplete --------- Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * Re-record tests and fix symbol bug (#5924) * Re-record tests and fix symbol bug * nordvpn us ftw * @IgorWounds says "SPY >> IOO" --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Docs/bug fix (#5926) * fix pro link * fix wrong example * Introduces a limit argument for the `equity.fundamental.trailing_dividend_yield` endpoint (#5925) * introduces a limit argument for the equity.fundamental.trailing_dividend_yield endpoint * add default args to test * Add json_schema_extra to openapi.json (#5930) Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * feature/standardize-quote: Proposal to Standardize EquityQuote (#5922) * standardize EquityQuote * intrinio reference * rogue comma * pylint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * hotfix/fmp-rev-segments: Adds Fiscal Period to busines/geographic segments revenue. (#5921) * add fiscal_period to revenue by geography and business line * data description and unused imports * update test cassette * Allow multiple symbols `equity.profile` (#5929) * allow multiple symbols * pylint * pylint ignore position * change callback to helper func --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Add filtering to AV historical price (#5928) * add filtering to av historical price * lints --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Fix vwap FMP error (#5936) * Fix vwap FMP error * Linting * Painlint * Add date filter + symbols to comp (#5931) * add date filter + symbols to comp * make sure year is in d * tests fix * Improving Platform's import time (#5894) * missing decorator * missing optional statements * us-gov to optional and right position * removing redundant call * lazy load mappings * docstrings * introducing the extension loader class * misleading docstring * using the extension loader on the router * using the extension loader on the credentials * docstrings * lazy load of entry points * checkout dev_install * using the extension loader to get the entry points instead of recalling the function * improved auth service and charting service * using the extension loader on the registry * typos * adding properties to extension loader for easy access * using the extension loader on the package builder * avoiding circular imports by using forward references * fix charting service tests * test for the extension loader * Update openbb_platform/core/openbb_core/app/model/credentials.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Update openbb_platform/core/openbb_core/app/router.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Update openbb_platform/core/openbb_core/provider/registry.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * adjustments --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Disable auto_build on test run (#5937) * Disable auto_build on test run * Move to conftest * Update excel docs (#5940) * update basics * update reference generator * Categorize release notes based on labels for OpenBB Platform (#5943) * Categorize release notes based on labels for OpenBB Platform * Add environment variable for GitHub token in labels-PR.yml * Update labeler.yml to use "enhancement" label for feature branches --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Custom deprecation message in API endpoints and Python commands (#5942) * add custom deprecation message feature in routers * add custom deprecation message feature in package builder * using an actual DeprecationWarning instead * fix tests --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Hotfix/remove unused workflow (#5945) * Disable auto_build on test run * Remove unused workflow * Revert * Hotfix/fix typo (#5948) * Disable auto_build on test run * Fix typo * Revert * docs/data-models-url: Fix URLs on Development Page (#5944) * fix url to the standard models * github links * `equity.fundamental.dividends`: allow filter by date (#5932) * allow filter by date * ruff * pylint * fix tests --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Create Excel templates page (#5947) * create templates page * Update index.mdx * fix description * update card * remove clsx * Update index.mdx * Update index.mdx * Update index.mdx * Update index.mdx * min height * min height * improve excel docs and point towards hub --------- Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * hotfix/intrinio-dividends-limit: Fix Limit Param Alias (#5951) * fix limit param * pylint unused argument, recapture test cassette --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Docs/remove core refs (#5957) * remove references to core: PathHandler + ProviderInterface * remove unused function * add comment * regenerate * fix a few examples * add comment * rename file * Excel tutorials on the docs (#5956) * update workflows name to tutorial * update title * get barebones to bring in Excel videos * tutorial excel videos in * hotfix/float-values: Convert Intrinio balance sheet values to float type (#5961) * convert intrinio balance sheet values to float type * unused import * typo in alias dict * Update to OpenBB Add-in for Excel (#5965) * Log custom headers (#5966) * add custom headers * fix: send on startup and defaults * pylint * unittests * move government-us to community in dev_install (#5963) * fix: adds logic to check whther user is logged in on hub (#5941) Co-authored-by: Luqman <luqazino@gmail.com> * hotfix/fix-company-filings: Fixes too many mandatory fields. (#5909) * Fixes too many mandatory fields. * black * black again --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * `equity.estimates.price_target` - Integrate with Benzinga (#5946) * deprecation message * fix lints * adding equity.estimates.ratings and fmp as its provider * unit tests for fmp * removing unused file * typos * add benzinga to AnalystRatings * revert changes to estimates router * moving it to price target instead * reverting changes * fmp support for multiple ticker * benzinga price target * ruffy * unused argument * fix type hints * tests for the new fetcher * new integration tests * fixing tests * missing std arg --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [DEPRECATION] `index.market` renamed to `index.price.historical` (#5962) * deprecate index.market and add index.price.historical * add index.historical standard model * add index.historical provider models * index extension tests * provider tests * linting * bug fix (#5969) * Uppercase excel reference (#5958) * uppercase reference * fix name header * add tab title * remove reference excel folder * add to gitignore excel reference files --------- Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * move templates (#5970) * Release 4.1.1. (#5964) * update dev_install * fix effr test * Update dev_install.py * fix fundamental balance test * fix equity price historical test * fix price target model * black * rebuild static files * update publish.md * fixed dev_install * update publishing doc * updated `openbb-core` to 1.1.1 * updated extensions * updated providers * updated `openbb` package * updated static extension map * updated publishing doc * fixed toml for `openbb-finra` * @jmaslek yfinance IS DEFAULT * updated static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Fix link to discord channel (#5910) Co-authored-by: James Maslek <jmaslek11@gmail.com> * Fixing Posthog handler for thread safety (#5968) * fixing posthog handler for thread safety * removing loggging init from the global scope - per sensei juan --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update labeler.yml and labels-PR.yml (#5974) * hotfix/ allow multiple `identify` calls (#5976) * allow multiple `identify` calls * Update posthog_handler.py * regex out any invisible control character from sales_conditions field (#5977) * docs/http-requests: Contributor Guide For Building HTTP Requests (#5973) * contributor guide for http requests * add a docstring * add section on get_querystring * extra space * add note for people installing PyPI in a zsh terminal shell --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * feature/add-yfinance-functions: Add equity.profile for yFinance (#5978) * equity profile for yFinance * pylint * equity quote * unused imports * remove yfinance from extras in toml (#5982) * Release OpenBB Platform v`4.1.3` (#5983) * fixing pyproject.toml * adding pandas-ta to technical package for publishing * bumping technical * test for pyproject toml * feature/cboe-async: Refactor Cboe for Async (#5900) * refactor cboe for async * codespell * unused imports * pylint * more pylint * platform metadata * classmethod decorator * test params * intrinio quote * test param names * date in test needs to be a datetime.date not string * make fmp unix timestamp tz-aware and normalize percent change * different way of parsing datetime string * recapture cboe equity historical test * unused import * index snapshot update * black * extension map * pylint * cboe pyproject.toml * proposal to standardize equity_quote * one more file * removing changes on static assets * index_historical * index_historical again * last_time -> last_timestamp * obsolete router path * fix tests * test param * restore market index deprecation that I forgot about * fixing tests --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Fix typo in website/README.md (#5980) * Fix typo in website/README.md * Update linting.yml * Update linting.yml * Update linting.yml * Change ref conditions * Update linting.yml --------- Co-authored-by: Luqman <luqman.bello@openbb.finance> Co-authored-by: Luqman <luqazino@gmail.com> * Hotfix/th etfs (#5959) * added etf trading hours * black formatter --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Luqman <luqazino@gmail.com> * feature/finviz-provider: Adds Community Finviz Provider Extension (#5952) * add finviz provider * recapture tests * recapture tests again? * invalid test param * static packages * units_measurement -> unit_measurement * static packages as core only * openbb_core version bump in pyproject.toml * try adding user-agent to test response * fix tests * linting * provider model cosmetic changes * fix install script and typo in openbb toml * static * fix: re-record unittests * empty data error * definitions as a file --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * Add support for multiple symbols on `obb.equity.price.historical` (#5984) * av - support for multiple symbols * tiingo - support for multiple symbols * include symbol only if necessary * update extension descriptions page (#5985) * remove useless file (#5991) * added symbol to headers (#5981) Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Fixing Docs Typos (#5955) * fixed typo * fixed stocka typo --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * fix nasdaq test cassettes (#5989) * don't include `custom_headers` in openapi schema (#5994) * hotfix/intrinio-index: Drop None Rows From intrinio Historical Index (#5987) * drop None rows from intrinio historical indexes * add empty data error * static assets * hotfix/insider-trading: Fix #5988 (#5990) * fix validation errors * empty strings * validator --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: teh_coderer <me@tehcoderer.com> * CI listing quick fix (#6002) * BIGGGG LINTING * fixing lints * fixing lints * black * very ruff * no export * fix hedge_view again * lints * platform lints * lints * black * black it @hjoaquim * fix some more linting --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Release `openbb-finviz` `1.0.0` to the public (#6000) * set version to `1.0.0` * Set correct dep version in main package * Add `finviz` to table * Auto Labelling for OpenBB Excel Docs Changes (#5998) * Update pull request labels * Update labeler.yml with new label for Excel files --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Support for custom examples in router commands (#5993) * Disable auto_build on test run * Add support for custom router examples * Revert odd file change * Fix API pollution * Refactor examples with @montezdesousa * Check if model is inside the PI * Fix * feat: add & fix examples (#6001) * feat: add & fix examples * fix: ruff + comment * feat: read parameter pool from file * feat: typing + unit test * Disable auto_build on test run * Add field order to OBBject * Revert * lint and revert * fix test --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * hotfix/intrinio-options-date: Fix comparing values between str and datetime (#5997) * fix compare between str and datetime * unused argument * get_weekday * lint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Field order added to the OBBject extra as preference (#5999) * Disable auto_build on test run * Add field order to OBBject * Improvements * Remove noxfile * Disable auto_build on test run * Add field order to OBBject * Revert * lint * Add docs * Not sure how this happened * lint * Update `openbb-devtools` (#6008) * update deps * unpinned package versions from gh linting action * codespell * updated black dependency * linting * linting * linting * pin codespell version * black * black again * install devtools in linting action * format w new black (#6009) * format w new black * format w new black * black again * black the terminal * ignoring unused arguments --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * remove reviewpad (#6010) * Remove Ultima provider (#6012) * Add OECD unemployment (+more) + data cache idea (#5917) * Add OECD unemployment + data cache idea * Docstring edits * Tests * Add composite leading indicator * i truested ruff --fix too much * Add short + long term interest rates * pylint * pylint2 * was not committing. my b * add csv cache + make it default. remove pyarrow from poetry * Clean up * Didnt run on this file. My bad * Why was this ignored /shrug * pylint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Feature/improved pr template (#6018) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * better pr templates * developer template * [Feature] - Custom deprecation (#6005) * custom deprecation * custom deprecation * using the new deprecation * custom deprecation on the package builder * remove comment * ruff * black * static assets * tests * using parametrization instead * test for deprecated endpoints (#6014) * Deprecation warning on the reference docs (#6015) * typo/fix * bring back methods needed for markdown generation * add deprecation warning to docs * contributor docs for deprecating endpoints - tks @deeleeramone * small changes on publishing procedure per @the-praxs * moving the deprecation summary class to deprecation file instead * explanation on class variables * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update openbb_platform/openbb/package/index.py Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * deprecating on 4.3 instead @the-praxs --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * [BugFix] Fix package builder (#6022) * fix: remove specific imports * adjustments for correct deprecation * static assets --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * [Feature] Add support for multiple tags in `historical_attributes` and `latest_attributes` (#6013) * historical attributes standard model - * add support multiple tags * add `tag` field in data * add support for multiple tags in historical attributes * set correct return type in `callback` function * latest attributes standard model - * add support for multiple tags * add `tag` field in data * add support for multiple tags in latest attributes * add test params for the attributes endpoints * add support for multiple `symbol` and add `symbol` field in the data * modified code to fetch data from multiple symbols and throw warning as per @deeleeramone * add params for testing multiple symbols * linting * fix test params * fixed condition to check if its a `Dict` type * updated intrinio fetcher tests for the statements * updated static * [feature]: feature/overview-to-profile: Deprecate `equity.fundamental.overview()` and move to `equity.profile()` (#6011) * fmp overview to equity profile * deprecation warning * urls * wrangle fields * black * pylint unused argument * insert additional securityID fields to standard model * custom deprecation using OpenBBDeprecationWarning * typo - need to have the deprecated=True flag * static assets * fix non related test * minor adjustment - removing the need for the try/except block - using the get and pop removes the need for key existance checking. cc @deeleeramone --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * [BugFix] - Remove duplicate code (#6025) Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * remove `SectorNews` from router and standard models (#6026) * feature/more-yfinance: Adds some more to openbb-yfinance (#5979) * equity profile for yFinance * pylint * equity quote * unused imports * price target consensus * add currency field * add share_statistics * don't append empty result to results * key executives * missing definition in key_executives * pylint * key metrics * add currency to key metrics * add etf_info * rename trailing_annual_dividend -> dividend_rate_ttm * add institutions count to share_statistics * add historical dividends * add logic for start-end dates to historical_dividends * recapture the test..? * funny test * filter on tests? * record test with clean cache..? * year_price_change -> price_return_1y in key_metrics * black * make descriptions clear for beta and dividend_yield fields * add description field to standard model * updated static * clear description of shares_implied_outstanding field * updated static for equity * clean descriptions --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * feature/commodities-lbma-fixing: Adds Commodity Extension and LBMA Gold/Silver daily fixing levels (#5760) * add commodity extension and add lbma fixing endpoint * dev_install.py * readme url * renovate the standard model * makes a query_params model for nasdaq data link * literal not optional * unused imports * missing test params * test cassette * DataLink query param description * test file import * actually fix import * from openbb_core.provider..... * ruff * another import statement * black * async router * move query_params * update version * version numbers * extension_map * satisfy pylint? * pylint * Update pyproject.toml * black * poetry lock * Update extension_map.json * Update __extensions__.py * Update module_map.json * clean descriptions --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Improve UX for `obb.news` (#5986) * adding date,start_date and end_date to std params * add date to special params which should've another type * change types to dateType * change helper to accomadate changes in types * date filtering * using the date filtering for all providers * date params on the std model instead * adding the right type * filtering dates on world news * integration tests * fix descriptions * static assets * black * Revert "black" This reverts commit7288b59f87. * lint * addressing @montezdesousa suggestion: removing qua 31 jan 2024 15:01:20 WET from standard models and using it only on benzing * tests accordingly * static assets * black --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: teh_coderer <me@tehcoderer.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] - Improve Standardization - `IndexHistorical` (#6030) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * small adjustment on the test * index historical * adjust tests accordingly * keep the test skipped * match tests w python * fix tests * keep the skip * fix test * [Feature] - Refactor Response Model (#6024) * Start refactor with @montezdesousa * feat: add response model inside openapi_extra * feat: find+replace return types * fix: ruff * Feature/api response by provider (#6029) * init * Update router.py * Update registry_map.py * check dicts * lint * exclude provider on data model for package build * `results_type_repr` logic for `Annotated`, ignore provider field in `_extract_data` --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: teh_coderer <me@tehcoderer.com> * [BugFix] - Improve Standardization - `CotSearch` (#6031) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * small adjustment on the test * index historical * adjust tests accordingly * keep the test skipped * match tests w python * use cache as std field * fix tests * fix tests * keep the skip * fix test * adding missing param * fix tests accordingly * Docs/byod (#5996) * add byod to reference * fix: rename add-in name * feat: add data conectors page * fix: additional notes * tiny tweaks * update functions.json and openapi.json * fix: fix bug in hedge controller * fix: another bug hedgecontroller * black --------- Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * Feature/ex-dividend: Renames "date" columns as "ex_dividend_date" for Dividend Calendar and Historical Dividends (#6006) * date -> ex_dividend_date * nasdaq historical dividends * black * pylint * intrinio alias_dict * dividend_currency -> currency * yfinance field name --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] - Adds a timezone to the Unix timestamp conversion to correct localization errors. (#6023) * fix: remove specific imports * make polygon historical tz-aware * undo including that commit * that PR wasn't supposed to be there. * pylint unused argument * fix polygon crypto historical intervals * pylint * new cassette * fix the rest of the polygon historical price query params * black * pylint.. * integration test param * appease daylight savings handling * paginate for crypto currency and index * black * raise EmptyDataError when no results instead of returning an empty list * ruff --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * Hotfix/wrong pydantic validator (#6037) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * Use field_validator instead * fix openapi schema fields `to_snake` (#6036) * Fix data connectors link typo (#6038) * [BugFix] - Improve Standardization - `EquitySearch` (#6033) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * small adjustment on the test * index historical * adjust tests accordingly * keep the test skipped * match tests w python * use cache as std field * fix tests * fix tests * use_cache as std * adjust tests * keep the skip * re-record test * black * Docs / only display results for current platform (#6017) * Update index.js * Update index.js * yfinance * tzcache no longer exists * fixxy * ruff --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Andrew <andrew.kenreich@gmail.com> * Improve the docstrings (#6040) * Improve the docstrings (#6041) Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * dont run base tests with v4 label (#6046) * Sync excel reference (#6039) * sync excel reference * fix: change delimiter to comma * feat: update data connectors * test skipping wf * Update unit-test.yml * Update unit-test.yml * test skipping wf * watch label changes * Update unit-test.yml * [Enhancement] - Improve `news` router docs and examples (#6047) * better docs * static assets * Feature/platform standardization notebook (#6049) * Add platform standardization overview notebook to examples * Add py.typed marker to openbb-fred * [Enhancement] - Improve `currency` router docs and examples (#6045) * currency search * reference rates * historical price * static assets --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * display warnings based on preference (#6051) * [Enhancement] - Improve `crypto` router docs and examples (#6048) * crypto search add validation for '-'-separated pairs * set default query value to None * improve /crypto description with custom examples * improve /crypto/price/historical description with custom examples * updated static for crypto menu * ignore line too long * linting --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Final Implementation of Changelog V2 (#6050) * Updated the release drafter to process the released changelog for OpenBB Platform * Update release drafter configuration * Add OpenBB Documentation Changes and Create Release * Update process_changelog.py path in draft-release.yml * Update release-drafter version and save changelog * Copy changelog with python * Update draft-release.yml to save Changelog * Update draft-release.yml * Encode and save Changelog to Base64 * Update Changelog saving method * Update Changelog format * Update CHANGELOG.md with release notes * Fix draft release workflow * Add cat command to print CHANGELOG.md * Add platform-drafter.yml and update release-drafter.yml and draft-release.yml * Commented out config-name in release-drafter step * Update branch name validation and process_changelog.py * Refactor process_changelog.py to improve readability and maintainability * Refactor process_changelog.py to handle file I/O errors and remove duplicate PR entries --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * improve discriminator logic, fix package return type docs (#6052) * improve discriminator logic, fix package return type docs * Update registry_map.py * build package * Update registry_map.py * defaults * Update registry_map.py --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Add LLM tools example notebook (#6053) * Add LLM tools example notebook * Update README, rename example notebook --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Remove the preference (#6055) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] - Standardise multiple symbols input (#6056) * feat: remove list of str * fix: update cpi * package builder + cpi * build * fix: update unittests * fix: check_item * fix: unittests * Improve the docstrings (#6057) * update economy router docstrings (#6058) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fix OECD Long Term Interest Rate (#6060) * fix long term interest rate * pylint unused argument * [Bugfix] - Fix economic calendar country (#6059) * fix economic calendar country * lint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [HotFix] Index Router Docstrings & `sp500_multiples()` Cleanup (#6063) * sp500 multiples cleanup * remove dict from standard model * static pacakge * pylint * [Feature] FMP Current Holdings (#6043) * add fmp current holdings to etf holdings * pylint unused argument --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Replace symbols in company/news (#6061) * feat: replace symbols in /news * fix: integration tests * fix: integration tests api * fix: typo * Update test_intrinio_fetchers.py * [Enhancement] Add function examples to router. (#6042) * options router * fixedincome router * futures router * missing comma * static assets * futures router --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Enhancement] Add function examples to Regulators Router (#6054) * options router * fixedincome router * futures router * missing comma * static assets * futures router * sec router * cftc router * black --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fix World News (#6064) * fix fmp * fix intrinio * fix biztoc * actually commit intrinio fix * fix tiingo * unused import * fix tests * black * ruff * benzinga empty strings * codespell * fix test? * more empty strings --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - remove unused validators from standard models (#6067) * update standard models * lint * Update USD Liquidity Example Notebook for V4 (#5902) * Update USD Liquidity Example Notebook for V4 * delete some v3 text in the copperToGold * Update README.md * findSymbols preview image * Google Colab preview image * financialStatements preview * content tsx file * ### title * convert tsx to json * indent size * double quote keys.json * trailing commas * Update content.json * patch --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * Fix QA Examples (#6072) * [Feature] - Ensure Bugfix branches can only do PRs to `develop` branches (#6073) * bugfix branch name checks and few fixes on the linting not to run on pushes to branches outside PRs * Update branch naming guidelines link --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Feature/charting obbject (#5938) * fix circular import issues on the obbject extension framework * settings available on the obbject * extension init * charting assets and code * introduce to_chart functionality * removes the to_chart method from obbject in detriment of the one from the obbject extension * Update openbb_platform/obbject_extensions/charting/charting/__init__.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * fix on the show method * adding the example to the to_chart docstring * copying the exsting README from charting extension - needs to be revamped * moving to openbb_charting instead * update the pyproject.toml file * pydocstyle * versions * better docstrings * making accessors public * removing unnecessary credentials variable cc @montezdesousa * removing access to extra/metadata and use designated private attrs instead * Fixes linting for the logging service (#5992) * lints * typing.Type instead * deprecating ChartingService to use the new extension instead - adding function discovery capabilities using it * tests for the obbject charting extension * removing charting service from command runner * filter functions not implemented in the module * remove charting service tests * removing charting service on the tests for int tests * charting integration tests * removing charting service file * removing old charting extension code * revamp builder * fix obbject tests * fix command_runner tests * removing openbb_figure_table * better website docs * reviewed readme * unsetting api key for posthog (pywry) windows * added debug_mode to the system settings * removing api key * update nightly script * fix tests * black * black * Revert "black" This reverts commit21d76ad689. * Revert "black" This reverts commit0904653fd7. * black for henrique * returning a list instead * better docstrings * removing unnecessary indicators docstring * typo * black * intentional access to protected member * changes to publish script * filtering deleted files * black * adding render argument * fixing the df_to_basemodel function: it should include the index in the columns either if flagged or if the index is named * adding the hability to add you own data to to_chart method * tests * black * disable protected access * accept kwargs to eg. save image * adjustment cc Igor * add if statement for protection * remove unused return typing * fix technical charting views * better error message cc @IgorWounds * better structure and fix test * Revert "better structure and fix test" This reverts commit612ea6117c. * Revert "better error message cc @IgorWounds" This reverts commit3d7ee53878. --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * Fix CAPM example (#6075) * Start removing dead v3 commands for deprecation (#6070) * Yeet tokenterminal * Yeet crypto/onchain/hr and gwei * yeet luna * yeet coinglass * yeet dps/ctb * yeet reddit * yeet covid * actually not yeeting hide yfinance future warning * yeet options/hedge * not yeeting. i18n words * something happened on accident * still fixing * git reset/git checkout -f2516cfbc72website/content * still not sure whats going on * Edit workflow to not look at deleted files + change bootup message * Dont pin the workflow to my branch always lol * Remove askobb * [Feature] - Comma separated string and list inputs (#6062) * feat: balancesheet * feat: income statement * fix: cash flow statement * feat: financial ratios * feat: reported financials * feat: revenue business line * feat: revenue per geography * fix: warnings * Update balance_sheet.py * fix: remove warning imports * feat: balance sheet growth * feat: calendar ipo * feat: cashflow growth * feat: __validators__ * fix: typing * fix: validator msg * feat: trailing dividend_yield * feat: short volume * feat: share statistics * feat: price target + consensus * fix: update validator * feat: historical dividends * feat: key executives * fix: getattr directly * fix: type hint validator * fix: add default to getattr * typo * feat: otc * feat: options chains * fix: remove list validators * feat: add validator dict to fetchers * lint * update standard models * lint * feat: rename validator * fix: ownership * feat: query params description * fix: balance yfinance * key execs, income statement * remove change * fix: revenue geographic * fix: disable pylint * fix: unusual + balance * unit test validator * minor fix * explicit validators * update test * feat: multiple items allowed * rebuild * move check_single_value * crypto historical * order providers * fix typing * rename extra dict * marking multiple items allowed * Revert "marking multiple items allowed" This reverts commit7da04817e1. * error msg * fix: default provider runtime vs configuration * minor fix * docstring * revert default changes * get provider before executing cmd * fix container bug * clean filter * add comment * prevent bad defaults * update docstring * typing * fix * black * fix docstring generation * [Feature] - Mark multiple item fetchers (#6074) * feat: price target * bezinga company news * equity quote * marking multiple items allowed * more multiple items * black * rebuild * another batch * rebuild * another * cpi * move prop * rebuild --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * rename var * update msg * rename func * fix test * mypy * ruff --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * [Feature] Add Regional Data Endpoint from FRED (#6071) * add regional data endpoint from FRED * codespell * ruff * sort imports * add provder='fred' to integration test * thought I already sorted those imports.. * pylint.. * more test params.... * even more test params... * even more test params.... * static assets * reconfigure params * ruff * alias dict * recapture cassette * router doctstring --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] - Fix most integration tests (#6082) * Fix most integration tests * Lint * Fix price_target column for Benzinga (#6083) * Release/4.1.4 (#6081) * static assets * patch version increase * core update * bumping versions * bump finviz version * bump versions * bump versions on package.extension --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Add dates to /quantitative as needed. (#6078) * Add dates to /quantitative as needed. Run new black * Fix tests * Pycharm is weird sometimes * uncommit * Add default window + error handling + mistake --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Add end point: `etf.equity_exposure()` with FMP provider (#6079) * add etf.equity_exposure from FMP * empty data error * recapture cassette * pylint unused argument * Fix router example typo * fix test...? * static file to fix test? * fix test..? * __json_schema_extra__ * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * [BugFix] Fix Equity Integration Tests (#6086) * fix equity integration tests * black * pylint * black * black * move df_apply to helpers * unused import * remove file that shouldn't have been added * oops. didn't remove a couple lines * [Enhancement] Add `analyst_search` to the Equity/Estimates Router (#6088) * standardize price_target * add analyst search * black * more black * ruff * linter, test parmas * last missing param * get rid of convert to upper * ruff * pylint * [BugFix] - Fix POST docstring examples (#6095) * Fix POST docstring examples. * Move router examples to command decorator * [BugFix] Fix `treasury_rates()` (#6092) * fix treasury_rates * drop rows with no data --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * clean up the remains from my yeeting (#6089) * clean up the remains from my yeeting * was not careful * Add ETF examples (#6102) Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * [BugFix] Fix integration tests (#6100) * fix int tests * fix obbject int tests * fix quant tests * fix index tests * use python 3.10 instead * remove cache * end_date < start_date * [Enhancement]: Add TMX data provider extension. (#5913) * dev install * add TMX provider extension * normalize ytm and coupopn_rate values * black * codespell * ruff * black again * pylint * ftw * undo what Pylint thinks is best * more black * renovate insider_trading standard model * fix tests * typo * tests * empty string * pylint unused argument * nans for some reason * black * static files * static files with openbb-tmx installed this time * yfinance TypeError..? * NA -> N/A * update for version bump * list exchange-calendars as tmx dependency * eod chains date -> eod_date * new line * not that file * more black * one more black * fix weird merge thing * ruff * index constituents params * insider trading * fixing things * black * black AGAIN * news integration params * the other missing param * ruff * historical dividends field update * add json_schema_extra * gainers * symbols -> symbol * company news symbol * unit test param * review items * wrangle a rogue field * index router example * company news thing - symbols -> symbol * field name map --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] - OBB.GET (#6097) * create OBB.GET and data slicer page * remove quotes * format description * wording * functions.json * sidebar position * remove if stamente * [Docs] Remove Reference to `to_chart` in OBBject. (#6096) * remove reference to to_chart in OBBject. * put chart description back in OBBject properties * [Feature] - Create openbb assets folder (#6101) * create openbb assets folder * fix unittest * rebuild --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fixes to_df() where the date series contains multiple TZ-offsets. (#6099) * allow mixed utc offset in a tz-aware date column * enforce ascending from all providers for price.historical * fix tests * add comments and apply treatment to basemodel_from_df before JSON output * yfinance consistency * add unit test * add unit test * better test * ruff --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update the quantitative extension to make more sense (#6087) * Split out a rolling submenu for the rolling functions * Make a performance and a stats submenu. * Test the statistics functions * lint * lint * dupe test * pylint * ruff * Try tests quick * black magic signature funcs * fix my custom tests * Fix the existing imports/urls * push the api update * okay I figured out whats going on * this should be all of them * Correct docstringing examples --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Fix ECB Yield Curve (#6108) * fix ecb yield curve * standard model update * Update unit-test workflow to check for changes to openbb_platform (#6109) * [Bug fix] - Fix package mypy (#6110) * fix: package mypy * types * black * [Feature] - Equity router descriptions & examples (#6103) * feat: equity/calendar * feat: compare router * fix descriptions * darkpool + discovery * fix paragraph issues * fix descriptions * fundamental part 1 * fundamental part2 * transcipts * ownership * fix * price * shorts * Update darkpool_router.py * minor fix * shorts examples * examples * ruff * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * … * fix: broken signature typing (#6238) * [Feature] - Warn if inexistent kwargs (#6236) * feat: warn if wrong kwargs * fix: remove query test * fix: add tests and fix bug --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Allow kwargs on POST endpoints (#6240) * [BugFix] Return FMP Error Messages (#6237) * response callback and equity quote * merge branch develop * fix some more * static files * test param * executive comp * some more fetchers * test cassette * black * another one * some more * etf equity exposure * price_performance * black * ruff * test params * more test params --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] No event loop when exporting images (#6249) * duplicated warning * if the event loop was closed - create a new one to process the image * [BugFix] - Bring back mypy (#6242) * first batch * another * another * another batch unyped defs * final untyped defs * update yml * pylint * remove unecessary __init__.py files * Revert "remove unecessary __init__.py files" This reverts commit5977eccfee. * fix company_news typing * rename func * fix tests * tests * [BugFix] - Fix integration tests workflow file (#6251) * update wf file * Update platform-api-integration-test.yml * [BugFix] - Untyped variadic keyword arguments break during execution (#6250) * fix: ensure var_kw args come last in signatures * remove package builder change * Update package_builder.py * fix: warn only when ExtraParams * track VAR_KEYWORD * minor fix * type Any if no type provided * minor fix * fix test * fix: _as_dict * ruff * update reorder_params unit test * update func default and tests * typing * update comment * update comment * rename var * Update command_runner.py --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * update website to remove the main menu from pro level (#6244) Co-authored-by: Andrew <andrew.kenreich@gmail.com> * [Enhancement] - Cleanup docs (#6254) * Delete reference and data_models contents * Update gitignore * update contributing section (#6255) * Build the static assets before generating markdown files (#6257) * [Docs] Break Out Usage Section In Docs Pages (#6258) * break out the Usage section in docs pages * codespell * fix: move extra_params warning to query.py (#6259) * [BugFix] - multiple items allowed in provider parameters (#6256) * fix extra multiple items in extra parameters * fix: integration test + parametrized typing * rebuild * fix charting tests (#6262) * [Bugfix] - Test parametrize skips charting tests (#6264) * don't skipt charting tests * multiples does not have a charting implementation * fix list index out of range * mypy * mypy * mypy ta class + base * indicators mypy * sync precommit with ci * sync ci with precommit * revert * revert * mypy indicators * fix mypy * fix hastype * type ignore * mypy * mypy * mypy * does this work? * remove post inits * this * this * and this --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * [Bugfix] Removes Charting Integration Test For Chart That Doesn't Exist (#6265) * Remove a test for a chart that doesn't exist. * black * [BugFix] yFinance ETF Info: Try Different Field When Missing fundInceptionDate (#6260) * try different field when missing the inceptionDate * wrap that in try-except * pylint * make Excel templates downloadable from docs (#6270) * [Release] 4.1.6 (#6266) * fixing integration tests * adding reference to the docstring * fix: docstring examples test + mypy * remove spaces * parse Volume column to float do avoid sorting issues * rebuild * release changes * lock openbb * remove unused script * fix broken links --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * [Git] - Sync main dev (#6276) * [Critical] Sync `main` with `develop` (#6202) * feature/intrinio-equity-search: Adds Intrinio to `obb.equity.search()` (#5863) * intrinio equity search * integration tests * test --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/yfinance-multi-ticker: Adds support to openbb-yfinance for multi-ticker download. (#5845) * yfinance multi-ticker support * multi-ticker support for market indices * crypto multi-ticker support * recapture tests * yfinance cache and tests * currency historical multi-ticker support * style things * black * missed a values --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Feature/us-treasury-prices: Adds Treasury Prices to Fixed Income (#5776) * add treasury prices endpoint to fixed income router * adds tests * black * ruff * import statements * standard model imports * black * some cleanup * black * async router * make async * str outpuot * bytes object not string * docstring typo * multi-line f-string * encoding * duplicated conditional * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/sec-etf-holdings: Adds ETF holdings from SEC provider (#5757) * add ETF holdings from SEC provider * black * helper function params * edge cases * ruff * add validator in company filings * remove xml field * update import * cleanup parsing * missing datetime import in company_filings * black * unused import * add missing py.typed files * feature/nasdaq-equity-search: Adds Nasdaq provider for `obb.equity.search()` (#5790) * add nasdaq to equity search * black * unused import * make async --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Excel docs (#5870) * first test * remove old reference * bring this file back * generate sidebar and write empty mds * generate index.mdx * get description from cmd_lib * fix reference card error * rename file * generate markdown * regen * add last+hist * update pages with seo metadata * format types * small fix * css sux * add usage placeholder * set hidden by default * nah * add cmds and menus to reference * lint * fix/Users/diogosousa/opt/anaconda3/envs/platform/bin/python /Users/diogosousa/OpenBB/OpenBBTerminal/website/generate_excel_markdown.py * format mds * remove space * fix commands heading * redo folder structure * add back cmd description * move card to var * different main folder * clean * move vars * refer to editor * rename var * done * recreate folder structure * add section: syntax + minor adjustments * remove return type * remove return type * rename api to library * minor fix * remove api folder * remove api folder * formatting * improve basics * basics * fetch functions.json from website * complete basic * change syntax to use semi-colon * basics * basics * remove space in sig * remove sections * add metadata * Update formula builder * add tabs * Update index.md * complete basics and formula_builder * Update index.md * add windows screenshots * restructure folders * regenerate with latest add-in version * move Excel sidebar * rename function and add comment * now it's working * logic * rename folder * Update formula_builder.md * fix * hide excel for now * some explicit typing --------- Co-authored-by: tehcoderer <me@tehcoderer.com> * Make Pro Fetchers async by replacing `ThreadPoolExecutor` with `asyncio.gather` (#5822) * init * Update helpers.py * filter URL on raise * polygon, fmp done, update cassettes * updates * cleanup * revert tests for now * Update discovery_filings.py * Update helpers.py * add `async` overload to `Fetcher.extract_data` * update merged fred models * tests, improve fred series * Update insider_trading.py * insider * tests * intrinio * Update equity_historical.py * implement abstract async extract on Fetcher, with simple switch * cleanup * Update helpers.py * Update helpers.py * fix fmp historical deprecated urls * Revert "fix fmp historical deprecated urls" This reverts commit1a760a2473. * fix fmp `index.market` 1day url missing query params * Update test_fmp_market_indices_fetcher.yaml * field fixes * `extract_data_async` -> `aextract_data`, `async_request` -> `amake_request` * `async_requests` -> `amake_requests` * Update company_news.py * add sort to index `integration` params * add `client.py` tests * Update equity_search.py * Add lost v in platform api version string * Resolve linter errors here and there --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Allow this to be run in parallel (#5872) * Limit mypy v3 linting to only the diff of the PR (#5878) * Use custom parametrize from news menu tests (#5873) * Use custom parametrize from news menu tests * Update Ultima unit test cassettes * Command Schema (#5874) * POC * Filter by provider * pass base_app as parameter * add typing + TODO * fix some typing * Fix unit tests --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * Parameterize `obbject.to_df` with `index` and `sort_by` (#5877) * Parameterize obbject.to_df with index and sort_by * unit tests for obbject * keep using the date as default to use on basemode_to_df() --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Changes to the `obb.fixedincome.corporate.hqm()` output (#5876) * changes to the hqm output * typo --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Refactor method in RegistryMap (#5879) * refactor extract_info * add comment --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * remove Literal from providers in OBBject (#5882) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix version (#5883) * Fix version * Fix linter on terminal * Refactor package builder (#5880) * breakdown builder + remove black * rebuild * rebuild * rebuild * rename method * format built code without black * we still lint if it's available * fix existing tests * add linter tests * add black to dev deps * auto_build as instance method * reorder methods * typing --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * small refactor for simplification (#5886) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix bug. Add router test. (#5888) * Fix bug. Add router test. * Simplify * separate pylint between platform + terminal (#5892) * separate pylint b/w platform + terminal * Explicitly set pylint check scope to files in the diff --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * sync descriptions (#5893) * Add REST API docs page with advanced settings configuration (#5890) * Don't mention docker in a list of python envs * Create a REST API page * Update docs to get api keys from the hub * Update installation instructions * Mention requirement of poetry and toml in source installation section * move rest page up to the top. and add url to google colab example notebook --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * fix a v3 syntax example (#5891) * Adds federal reserve data points (#5885) * Allow optional input for 2-month treasury rates and add FederalReserve rates model The commit includes two main changes. One being the modification to the standard treasury rate models, where the 2-month input field is now optional, and a default value is set to none. The other main change is the addition of a new module for the FederalReserve treasury rates model, which includes query parameters, a data model, and a data fetcher. * Add Money Measures models and commands This commit introduces new Money Measures models to handle money-related data, defines Money Measures commands in the economy router, and implements the Federal Reserve Money Measures model. The core model includes fields like start_date, end_date, and various components of the money supply. The new command added to the economy router allows the querying of these data. * Add Federal Reserve Money Measures test file This commit adds a test case file for the Federal Reserve Money Measures fetcher in the Federal Reserve module. The test case includes simulating a GET request and the corresponding expected response from the server. * Cleanup * Sneaky unformatted integration tests * its a dawg life for me ...... ruff * add the fed funds rate * didnt mean to commmit this * black * this is why we should pre commit kids * change install name * add providers to int tests * review comments + commit static * replace nan with None * fix float on None * get rid of nans for nulls for json handling * change `_` to `-` in readme pip install. * Update __init__.py docstring --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Check if outdated (#5898) * Add econometrics API tests (#5899) * Docs/excel update (#5889) * update xl docs * update syntax line * update again * Fix pylint scope (#5895) * Allow optional input for 2-month treasury rates and add FederalReserve rates model The commit includes two main changes. One being the modification to the standard treasury rate models, where the 2-month input field is now optional, and a default value is set to none. The other main change is the addition of a new module for the FederalReserve treasury rates model, which includes query parameters, a data model, and a data fetcher. * Add Money Measures models and commands This commit introduces new Money Measures models to handle money-related data, defines Money Measures commands in the economy router, and implements the Federal Reserve Money Measures model. The core model includes fields like start_date, end_date, and various components of the money supply. The new command added to the economy router allows the querying of these data. * Add Federal Reserve Money Measures test file This commit adds a test case file for the Federal Reserve Money Measures fetcher in the Federal Reserve module. The test case includes simulating a GET request and the corresponding expected response from the server. * Cleanup * Sneaky unformatted integration tests * its a dawg life for me ...... ruff * add the fed funds rate * didnt mean to commmit this * black * this is why we should pre commit kids * change install name * add providers to int tests * review comments + commit static * replace nan with None * fix float on None * get rid of nans for nulls for json handling * change `_` to `-` in readme pip install. * Update __init__.py docstring * Debug pylint * Adjust the fetch depth --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * fix `from openbb import obb` asyncio lock in python REPL (#5896) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * feature/financials - PR for working on structure of financial statements. (#5794) * balance sheet draft * balance_sheet draft * cash_flow draft * income_statement draft * intrinio financials * description * period field * ruff * income statement * field * label - gross profit ratio * cash flow statement * investing order * add option for caching to cashflow * add caching to balance and income * typos and update order for financial institutions * replace 0 values with None * add financial ratios from intrinio * black * missing test params * balance cassette * query param description * symbol list warning * black * handle BRK-A and symbols with a dash for Intrinio * fix typo error * add free cash flow to bottom of cash flow statement * amortization_expense * dev_install.py * undo dev_install.. wrong branch * cash flow order things * standardized cash flow * fields * integration tests * cash flow model validator * more polygon cash * black * black * Delete openbb_sdk/providers/polygon/openbb_polygon/utils/definitions.py wrong file * balance sheet * some cleanup * ruff * income statement * black * test params * financial ratios async update * recapture fmp and polygon tests * yFinance financials * yfinance tests * delete financial_statements standard model * intrinio balance sheet order * fiscal year standard param * remove file accidentally committed * add reported_financials end point * fiscal_year param for reported_financials * fix url * fmp test cassette * add safe-guard with warning for fiscal year before 2008 * periods can only be annual and quarter * url in docstring correction * add fiscal_year param to intrinio standardized financials and ratios * fix fmp ratios * black * rename fields as per Minh * rogue field * black * Fix typo in a docstring * Resolve linting errors * type ignore * disable=unused-argument * changing the arg name cc @minhhoang1023 --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * docs/legacy-install: Add warning at top of page - Instructions on this page are for installing the Terminal (#5904) * add warning at top of page - instructions are for installing the Terminal app * pip install openbb-nightly * hotfix/financials-field-maps: Updates A Couple FMP/Polygon Income Statement Fields (#5907) * update income statement fields * another polygon field * ratio -> margin * black * explicit fmp fields * add reported_currency for standardized intrinio * # pylint: disable=unused-argument * another unused-argument * black.. * patch tests * polygon income: eps -> basic earnings per share * re-capture terminal portfolio menu test --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Fix test (#5916) * Fix test * Skip ultima integration tests --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * hotfix/fmp-price-performance-zeros: Replace returned zero with None and normalize percent values. (#5918) * replace zeros with none and normalize percents * pylint unused argument * Update index.md (#5906) * Release/4.1.0 (#5901) * Hotfix/terminal tests (#5919) * skip supressed arguments * silent way of customly load on quote * specify source for call_load * docs/platform-faq: Start Platform FAQ page with bullet points on Platform vs SDK (#5914) * platform vs sdk faq page * add data and data providers faq section and some style cards * typo * makes changes as per reviews * openbb-nightly as a way to install everything * jupyter-lab instead of jupyter --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * hotfix/backend - Initialize OpenBBFigure (#5912) * create backend * openbb_figure * black * pylint * pylint again --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * hotfix/yf-futures-historical: yfinance historical futures multi-ticker support and symbol parsing (#5923) * multi-ticker support for yfinance futures historical * raise-missing-from * integration test params * equity_historical adjusted kwargs * pylint unused argument * Docs/excel examples (#5920) * regen excel md * add syntax + basic example * fix example * create json with docs map * update docs to latest functions.json + remove tiingo * remove space from examples * minor fix * remove spaces * remove spaces * bug fix: remove folder before generating * fix typo * add link to appsource * fix * Update templates.md * regenerate content * change docs colors * fix light mode * add back tiingo * update functions.json * templates go later * remove Library from reference * Make the excel markdown being generated at runtime * fix reference cards having commands under menu * remove excel/reference folder since this is built at runtime by gh-pages action * black formatting * improve title * add excel to the main page * add excel image bg * make excel sidebar show up next to pro * improve main page * small fix for platform page title * update basics page * add tip to autocomplete --------- Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * Re-record tests and fix symbol bug (#5924) * Re-record tests and fix symbol bug * nordvpn us ftw * @IgorWounds says "SPY >> IOO" --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Docs/bug fix (#5926) * fix pro link * fix wrong example * Introduces a limit argument for the `equity.fundamental.trailing_dividend_yield` endpoint (#5925) * introduces a limit argument for the equity.fundamental.trailing_dividend_yield endpoint * add default args to test * Add json_schema_extra to openapi.json (#5930) Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * feature/standardize-quote: Proposal to Standardize EquityQuote (#5922) * standardize EquityQuote * intrinio reference * rogue comma * pylint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * hotfix/fmp-rev-segments: Adds Fiscal Period to busines/geographic segments revenue. (#5921) * add fiscal_period to revenue by geography and business line * data description and unused imports * update test cassette * Allow multiple symbols `equity.profile` (#5929) * allow multiple symbols * pylint * pylint ignore position * change callback to helper func --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Add filtering to AV historical price (#5928) * add filtering to av historical price * lints --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Fix vwap FMP error (#5936) * Fix vwap FMP error * Linting * Painlint * Add date filter + symbols to comp (#5931) * add date filter + symbols to comp * make sure year is in d * tests fix * Improving Platform's import time (#5894) * missing decorator * missing optional statements * us-gov to optional and right position * removing redundant call * lazy load mappings * docstrings * introducing the extension loader class * misleading docstring * using the extension loader on the router * using the extension loader on the credentials * docstrings * lazy load of entry points * checkout dev_install * using the extension loader to get the entry points instead of recalling the function * improved auth service and charting service * using the extension loader on the registry * typos * adding properties to extension loader for easy access * using the extension loader on the package builder * avoiding circular imports by using forward references * fix charting service tests * test for the extension loader * Update openbb_platform/core/openbb_core/app/model/credentials.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Update openbb_platform/core/openbb_core/app/router.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Update openbb_platform/core/openbb_core/provider/registry.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * adjustments --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Disable auto_build on test run (#5937) * Disable auto_build on test run * Move to conftest * Update excel docs (#5940) * update basics * update reference generator * Categorize release notes based on labels for OpenBB Platform (#5943) * Categorize release notes based on labels for OpenBB Platform * Add environment variable for GitHub token in labels-PR.yml * Update labeler.yml to use "enhancement" label for feature branches --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Custom deprecation message in API endpoints and Python commands (#5942) * add custom deprecation message feature in routers * add custom deprecation message feature in package builder * using an actual DeprecationWarning instead * fix tests --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Hotfix/remove unused workflow (#5945) * Disable auto_build on test run * Remove unused workflow * Revert * Hotfix/fix typo (#5948) * Disable auto_build on test run * Fix typo * Revert * docs/data-models-url: Fix URLs on Development Page (#5944) * fix url to the standard models * github links * `equity.fundamental.dividends`: allow filter by date (#5932) * allow filter by date * ruff * pylint * fix tests --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Create Excel templates page (#5947) * create templates page * Update index.mdx * fix description * update card * remove clsx * Update index.mdx * Update index.mdx * Update index.mdx * Update index.mdx * min height * min height * improve excel docs and point towards hub --------- Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * hotfix/intrinio-dividends-limit: Fix Limit Param Alias (#5951) * fix limit param * pylint unused argument, recapture test cassette --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Docs/remove core refs (#5957) * remove references to core: PathHandler + ProviderInterface * remove unused function * add comment * regenerate * fix a few examples * add comment * rename file * Excel tutorials on the docs (#5956) * update workflows name to tutorial * update title * get barebones to bring in Excel videos * tutorial excel videos in * hotfix/float-values: Convert Intrinio balance sheet values to float type (#5961) * convert intrinio balance sheet values to float type * unused import * typo in alias dict * Update to OpenBB Add-in for Excel (#5965) * Log custom headers (#5966) * add custom headers * fix: send on startup and defaults * pylint * unittests * move government-us to community in dev_install (#5963) * fix: adds logic to check whther user is logged in on hub (#5941) Co-authored-by: Luqman <luqazino@gmail.com> * hotfix/fix-company-filings: Fixes too many mandatory fields. (#5909) * Fixes too many mandatory fields. * black * black again --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * `equity.estimates.price_target` - Integrate with Benzinga (#5946) * deprecation message * fix lints * adding equity.estimates.ratings and fmp as its provider * unit tests for fmp * removing unused file * typos * add benzinga to AnalystRatings * revert changes to estimates router * moving it to price target instead * reverting changes * fmp support for multiple ticker * benzinga price target * ruffy * unused argument * fix type hints * tests for the new fetcher * new integration tests * fixing tests * missing std arg --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [DEPRECATION] `index.market` renamed to `index.price.historical` (#5962) * deprecate index.market and add index.price.historical * add index.historical standard model * add index.historical provider models * index extension tests * provider tests * linting * bug fix (#5969) * Uppercase excel reference (#5958) * uppercase reference * fix name header * add tab title * remove reference excel folder * add to gitignore excel reference files --------- Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * move templates (#5970) * Release 4.1.1. (#5964) * update dev_install * fix effr test * Update dev_install.py * fix fundamental balance test * fix equity price historical test * fix price target model * black * rebuild static files * update publish.md * fixed dev_install * update publishing doc * updated `openbb-core` to 1.1.1 * updated extensions * updated providers * updated `openbb` package * updated static extension map * updated publishing doc * fixed toml for `openbb-finra` * @jmaslek yfinance IS DEFAULT * updated static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Fix link to discord channel (#5910) Co-authored-by: James Maslek <jmaslek11@gmail.com> * Fixing Posthog handler for thread safety (#5968) * fixing posthog handler for thread safety * removing loggging init from the global scope - per sensei juan --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update labeler.yml and labels-PR.yml (#5974) * hotfix/ allow multiple `identify` calls (#5976) * allow multiple `identify` calls * Update posthog_handler.py * regex out any invisible control character from sales_conditions field (#5977) * docs/http-requests: Contributor Guide For Building HTTP Requests (#5973) * contributor guide for http requests * add a docstring * add section on get_querystring * extra space * add note for people installing PyPI in a zsh terminal shell --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * feature/add-yfinance-functions: Add equity.profile for yFinance (#5978) * equity profile for yFinance * pylint * equity quote * unused imports * remove yfinance from extras in toml (#5982) * Release OpenBB Platform v`4.1.3` (#5983) * fixing pyproject.toml * adding pandas-ta to technical package for publishing * bumping technical * test for pyproject toml * feature/cboe-async: Refactor Cboe for Async (#5900) * refactor cboe for async * codespell * unused imports * pylint * more pylint * platform metadata * classmethod decorator * test params * intrinio quote * test param names * date in test needs to be a datetime.date not string * make fmp unix timestamp tz-aware and normalize percent change * different way of parsing datetime string * recapture cboe equity historical test * unused import * index snapshot update * black * extension map * pylint * cboe pyproject.toml * proposal to standardize equity_quote * one more file * removing changes on static assets * index_historical * index_historical again * last_time -> last_timestamp * obsolete router path * fix tests * test param * restore market index deprecation that I forgot about * fixing tests --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Fix typo in website/README.md (#5980) * Fix typo in website/README.md * Update linting.yml * Update linting.yml * Update linting.yml * Change ref conditions * Update linting.yml --------- Co-authored-by: Luqman <luqman.bello@openbb.finance> Co-authored-by: Luqman <luqazino@gmail.com> * Hotfix/th etfs (#5959) * added etf trading hours * black formatter --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Luqman <luqazino@gmail.com> * feature/finviz-provider: Adds Community Finviz Provider Extension (#5952) * add finviz provider * recapture tests * recapture tests again? * invalid test param * static packages * units_measurement -> unit_measurement * static packages as core only * openbb_core version bump in pyproject.toml * try adding user-agent to test response * fix tests * linting * provider model cosmetic changes * fix install script and typo in openbb toml * static * fix: re-record unittests * empty data error * definitions as a file --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * Add support for multiple symbols on `obb.equity.price.historical` (#5984) * av - support for multiple symbols * tiingo - support for multiple symbols * include symbol only if necessary * update extension descriptions page (#5985) * remove useless file (#5991) * added symbol to headers (#5981) Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Fixing Docs Typos (#5955) * fixed typo * fixed stocka typo --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * fix nasdaq test cassettes (#5989) * don't include `custom_headers` in openapi schema (#5994) * hotfix/intrinio-index: Drop None Rows From intrinio Historical Index (#5987) * drop None rows from intrinio historical indexes * add empty data error * static assets * hotfix/insider-trading: Fix #5988 (#5990) * fix validation errors * empty strings * validator --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: teh_coderer <me@tehcoderer.com> * CI listing quick fix (#6002) * BIGGGG LINTING * fixing lints * fixing lints * black * very ruff * no export * fix hedge_view again * lints * platform lints * lints * black * black it @hjoaquim * fix some more linting --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Release `openbb-finviz` `1.0.0` to the public (#6000) * set version to `1.0.0` * Set correct dep version in main package * Add `finviz` to table * Auto Labelling for OpenBB Excel Docs Changes (#5998) * Update pull request labels * Update labeler.yml with new label for Excel files --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Support for custom examples in router commands (#5993) * Disable auto_build on test run * Add support for custom router examples * Revert odd file change * Fix API pollution * Refactor examples with @montezdesousa * Check if model is inside the PI * Fix * feat: add & fix examples (#6001) * feat: add & fix examples * fix: ruff + comment * feat: read parameter pool from file * feat: typing + unit test * Disable auto_build on test run * Add field order to OBBject * Revert * lint and revert * fix test --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * hotfix/intrinio-options-date: Fix comparing values between str and datetime (#5997) * fix compare between str and datetime * unused argument * get_weekday * lint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Field order added to the OBBject extra as preference (#5999) * Disable auto_build on test run * Add field order to OBBject * Improvements * Remove noxfile * Disable auto_build on test run * Add field order to OBBject * Revert * lint * Add docs * Not sure how this happened * lint * Update `openbb-devtools` (#6008) * update deps * unpinned package versions from gh linting action * codespell * updated black dependency * linting * linting * linting * pin codespell version * black * black again * install devtools in linting action * format w new black (#6009) * format w new black * format w new black * black again * black the terminal * ignoring unused arguments --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * remove reviewpad (#6010) * Remove Ultima provider (#6012) * Add OECD unemployment (+more) + data cache idea (#5917) * Add OECD unemployment + data cache idea * Docstring edits * Tests * Add composite leading indicator * i truested ruff --fix too much * Add short + long term interest rates * pylint * pylint2 * was not committing. my b * add csv cache + make it default. remove pyarrow from poetry * Clean up * Didnt run on this file. My bad * Why was this ignored /shrug * pylint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Feature/improved pr template (#6018) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * better pr templates * developer template * [Feature] - Custom deprecation (#6005) * custom deprecation * custom deprecation * using the new deprecation * custom deprecation on the package builder * remove comment * ruff * black * static assets * tests * using parametrization instead * test for deprecated endpoints (#6014) * Deprecation warning on the reference docs (#6015) * typo/fix * bring back methods needed for markdown generation * add deprecation warning to docs * contributor docs for deprecating endpoints - tks @deeleeramone * small changes on publishing procedure per @the-praxs * moving the deprecation summary class to deprecation file instead * explanation on class variables * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update openbb_platform/openbb/package/index.py Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * deprecating on 4.3 instead @the-praxs --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * [BugFix] Fix package builder (#6022) * fix: remove specific imports * adjustments for correct deprecation * static assets --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * [Feature] Add support for multiple tags in `historical_attributes` and `latest_attributes` (#6013) * historical attributes standard model - * add support multiple tags * add `tag` field in data * add support for multiple tags in historical attributes * set correct return type in `callback` function * latest attributes standard model - * add support for multiple tags * add `tag` field in data * add support for multiple tags in latest attributes * add test params for the attributes endpoints * add support for multiple `symbol` and add `symbol` field in the data * modified code to fetch data from multiple symbols and throw warning as per @deeleeramone * add params for testing multiple symbols * linting * fix test params * fixed condition to check if its a `Dict` type * updated intrinio fetcher tests for the statements * updated static * [feature]: feature/overview-to-profile: Deprecate `equity.fundamental.overview()` and move to `equity.profile()` (#6011) * fmp overview to equity profile * deprecation warning * urls * wrangle fields * black * pylint unused argument * insert additional securityID fields to standard model * custom deprecation using OpenBBDeprecationWarning * typo - need to have the deprecated=True flag * static assets * fix non related test * minor adjustment - removing the need for the try/except block - using the get and pop removes the need for key existance checking. cc @deeleeramone --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * [BugFix] - Remove duplicate code (#6025) Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * remove `SectorNews` from router and standard models (#6026) * feature/more-yfinance: Adds some more to openbb-yfinance (#5979) * equity profile for yFinance * pylint * equity quote * unused imports * price target consensus * add currency field * add share_statistics * don't append empty result to results * key executives * missing definition in key_executives * pylint * key metrics * add currency to key metrics * add etf_info * rename trailing_annual_dividend -> dividend_rate_ttm * add institutions count to share_statistics * add historical dividends * add logic for start-end dates to historical_dividends * recapture the test..? * funny test * filter on tests? * record test with clean cache..? * year_price_change -> price_return_1y in key_metrics * black * make descriptions clear for beta and dividend_yield fields * add description field to standard model * updated static * clear description of shares_implied_outstanding field * updated static for equity * clean descriptions --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * feature/commodities-lbma-fixing: Adds Commodity Extension and LBMA Gold/Silver daily fixing levels (#5760) * add commodity extension and add lbma fixing endpoint * dev_install.py * readme url * renovate the standard model * makes a query_params model for nasdaq data link * literal not optional * unused imports * missing test params * test cassette * DataLink query param description * test file import * actually fix import * from openbb_core.provider..... * ruff * another import statement * black * async router * move query_params * update version * version numbers * extension_map * satisfy pylint? * pylint * Update pyproject.toml * black * poetry lock * Update extension_map.json * Update __extensions__.py * Update module_map.json * clean descriptions --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Improve UX for `obb.news` (#5986) * adding date,start_date and end_date to std params * add date to special params which should've another type * change types to dateType * change helper to accomadate changes in types * date filtering * using the date filtering for all providers * date params on the std model instead * adding the right type * filtering dates on world news * integration tests * fix descriptions * static assets * black * Revert "black" This reverts commit7288b59f87. * lint * addressing @montezdesousa suggestion: removing qua 31 jan 2024 15:01:20 WET from standard models and using it only on benzing * tests accordingly * static assets * black --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: teh_coderer <me@tehcoderer.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] - Improve Standardization - `IndexHistorical` (#6030) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * small adjustment on the test * index historical * adjust tests accordingly * keep the test skipped * match tests w python * fix tests * keep the skip * fix test * [Feature] - Refactor Response Model (#6024) * Start refactor with @montezdesousa * feat: add response model inside openapi_extra * feat: find+replace return types * fix: ruff * Feature/api response by provider (#6029) * init * Update router.py * Update registry_map.py * check dicts * lint * exclude provider on data model for package build * `results_type_repr` logic for `Annotated`, ignore provider field in `_extract_data` --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: teh_coderer <me@tehcoderer.com> * [BugFix] - Improve Standardization - `CotSearch` (#6031) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * small adjustment on the test * index historical * adjust tests accordingly * keep the test skipped * match tests w python * use cache as std field * fix tests * fix tests * keep the skip * fix test * adding missing param * fix tests accordingly * Docs/byod (#5996) * add byod to reference * fix: rename add-in name * feat: add data conectors page * fix: additional notes * tiny tweaks * update functions.json and openapi.json * fix: fix bug in hedge controller * fix: another bug hedgecontroller * black --------- Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * Feature/ex-dividend: Renames "date" columns as "ex_dividend_date" for Dividend Calendar and Historical Dividends (#6006) * date -> ex_dividend_date * nasdaq historical dividends * black * pylint * intrinio alias_dict * dividend_currency -> currency * yfinance field name --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] - Adds a timezone to the Unix timestamp conversion to correct localization errors. (#6023) * fix: remove specific imports * make polygon historical tz-aware * undo including that commit * that PR wasn't supposed to be there. * pylint unused argument * fix polygon crypto historical intervals * pylint * new cassette * fix the rest of the polygon historical price query params * black * pylint.. * integration test param * appease daylight savings handling * paginate for crypto currency and index * black * raise EmptyDataError when no results instead of returning an empty list * ruff --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * Hotfix/wrong pydantic validator (#6037) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * Use field_validator instead * fix openapi schema fields `to_snake` (#6036) * Fix data connectors link typo (#6038) * [BugFix] - Improve Standardization - `EquitySearch` (#6033) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * small adjustment on the test * index historical * adjust tests accordingly * keep the test skipped * match tests w python * use cache as std field * fix tests * fix tests * use_cache as std * adjust tests * keep the skip * re-record test * black * Docs / only display results for current platform (#6017) * Update index.js * Update index.js * yfinance * tzcache no longer exists * fixxy * ruff --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Andrew <andrew.kenreich@gmail.com> * Improve the docstrings (#6040) * Improve the docstrings (#6041) Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * dont run base tests with v4 label (#6046) * Sync excel reference (#6039) * sync excel reference * fix: change delimiter to comma * feat: update data connectors * test skipping wf * Update unit-test.yml * Update unit-test.yml * test skipping wf * watch label changes * Update unit-test.yml * [Enhancement] - Improve `news` router docs and examples (#6047) * better docs * static assets * Feature/platform standardization notebook (#6049) * Add platform standardization overview notebook to examples * Add py.typed marker to openbb-fred * [Enhancement] - Improve `currency` router docs and examples (#6045) * currency search * reference rates * historical price * static assets --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * display warnings based on preference (#6051) * [Enhancement] - Improve `crypto` router docs and examples (#6048) * crypto search add validation for '-'-separated pairs * set default query value to None * improve /crypto description with custom examples * improve /crypto/price/historical description with custom examples * updated static for crypto menu * ignore line too long * linting --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Final Implementation of Changelog V2 (#6050) * Updated the release drafter to process the released changelog for OpenBB Platform * Update release drafter configuration * Add OpenBB Documentation Changes and Create Release * Update process_changelog.py path in draft-release.yml * Update release-drafter version and save changelog * Copy changelog with python * Update draft-release.yml to save Changelog * Update draft-release.yml * Encode and save Changelog to Base64 * Update Changelog saving method * Update Changelog format * Update CHANGELOG.md with release notes * Fix draft release workflow * Add cat command to print CHANGELOG.md * Add platform-drafter.yml and update release-drafter.yml and draft-release.yml * Commented out config-name in release-drafter step * Update branch name validation and process_changelog.py * Refactor process_changelog.py to improve readability and maintainability * Refactor process_changelog.py to handle file I/O errors and remove duplicate PR entries --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * improve discriminator logic, fix package return type docs (#6052) * improve discriminator logic, fix package return type docs * Update registry_map.py * build package * Update registry_map.py * defaults * Update registry_map.py --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Add LLM tools example notebook (#6053) * Add LLM tools example notebook * Update README, rename example notebook --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Remove the preference (#6055) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] - Standardise multiple symbols input (#6056) * feat: remove list of str * fix: update cpi * package builder + cpi * build * fix: update unittests * fix: check_item * fix: unittests * Improve the docstrings (#6057) * update economy router docstrings (#6058) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fix OECD Long Term Interest Rate (#6060) * fix long term interest rate * pylint unused argument * [Bugfix] - Fix economic calendar country (#6059) * fix economic calendar country * lint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [HotFix] Index Router Docstrings & `sp500_multiples()` Cleanup (#6063) * sp500 multiples cleanup * remove dict from standard model * static pacakge * pylint * [Feature] FMP Current Holdings (#6043) * add fmp current holdings to etf holdings * pylint unused argument --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Replace symbols in company/news (#6061) * feat: replace symbols in /news * fix: integration tests * fix: integration tests api * fix: typo * Update test_intrinio_fetchers.py * [Enhancement] Add function examples to router. (#6042) * options router * fixedincome router * futures router * missing comma * static assets * futures router --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Enhancement] Add function examples to Regulators Router (#6054) * options router * fixedincome router * futures router * missing comma * static assets * futures router * sec router * cftc router * black --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fix World News (#6064) * fix fmp * fix intrinio * fix biztoc * actually commit intrinio fix * fix tiingo * unused import * fix tests * black * ruff * benzinga empty strings * codespell * fix test? * more empty strings --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - remove unused validators from standard models (#6067) * update standard models * lint * Update USD Liquidity Example Notebook for V4 (#5902) * Update USD Liquidity Example Notebook for V4 * delete some v3 text in the copperToGold * Update README.md * findSymbols preview image * Google Colab preview image * financialStatements preview * content tsx file * ### title * convert tsx to json * indent size * double quote keys.json * trailing commas * Update content.json * patch --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * Fix QA Examples (#6072) * [Feature] - Ensure Bugfix branches can only do PRs to `develop` branches (#6073) * bugfix branch name checks and few fixes on the linting not to run on pushes to branches outside PRs * Update branch naming guidelines link --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Feature/charting obbject (#5938) * fix circular import issues on the obbject extension framework * settings available on the obbject * extension init * charting assets and code * introduce to_chart functionality * removes the to_chart method from obbject in detriment of the one from the obbject extension * Update openbb_platform/obbject_extensions/charting/charting/__init__.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * fix on the show method * adding the example to the to_chart docstring * copying the exsting README from charting extension - needs to be revamped * moving to openbb_charting instead * update the pyproject.toml file * pydocstyle * versions * better docstrings * making accessors public * removing unnecessary credentials variable cc @montezdesousa * removing access to extra/metadata and use designated private attrs instead * Fixes linting for the logging service (#5992) * lints * typing.Type instead * deprecating ChartingService to use the new extension instead - adding function discovery capabilities using it * tests for the obbject charting extension * removing charting service from command runner * filter functions not implemented in the module * remove charting service tests * removing charting service on the tests for int tests * charting integration tests * removing charting service file * removing old charting extension code * revamp builder * fix obbject tests * fix command_runner tests * removing openbb_figure_table * better website docs * reviewed readme * unsetting api key for posthog (pywry) windows * added debug_mode to the system settings * removing api key * update nightly script * fix tests * black * black * Revert "black" This reverts commit21d76ad689. * Revert "black" This reverts commit0904653fd7. * black for henrique * returning a list instead * better docstrings * removing unnecessary indicators docstring * typo * black * intentional access to protected member * changes to publish script * filtering deleted files * black * adding render argument * fixing the df_to_basemodel function: it should include the index in the columns either if flagged or if the index is named * adding the hability to add you own data to to_chart method * tests * black * disable protected access * accept kwargs to eg. save image * adjustment cc Igor * add if statement for protection * remove unused return typing * fix technical charting views * better error message cc @IgorWounds * better structure and fix test * Revert "better structure and fix test" This reverts commit612ea6117c. * Revert "better error message cc @IgorWounds" This reverts commit3d7ee53878. --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * Fix CAPM example (#6075) * Start removing dead v3 commands for deprecation (#6070) * Yeet tokenterminal * Yeet crypto/onchain/hr and gwei * yeet luna * yeet coinglass * yeet dps/ctb * yeet reddit * yeet covid * actually not yeeting hide yfinance future warning * yeet options/hedge * not yeeting. i18n words * something happened on accident * still fixing * git reset/git checkout -f2516cfbc72website/content * still not sure whats going on * Edit workflow to not look at deleted files + change bootup message * Dont pin the workflow to my branch always lol * Remove askobb * [Feature] - Comma separated string and list inputs (#6062) * feat: balancesheet * feat: income statement * fix: cash flow statement * feat: financial ratios * feat: reported financials * feat: revenue business line * feat: revenue per geography * fix: warnings * Update balance_sheet.py * fix: remove warning imports * feat: balance sheet growth * feat: calendar ipo * feat: cashflow growth * feat: __validators__ * fix: typing * fix: validator msg * feat: trailing dividend_yield * feat: short volume * feat: share statistics * feat: price target + consensus * fix: update validator * feat: historical dividends * feat: key executives * fix: getattr directly * fix: type hint validator * fix: add default to getattr * typo * feat: otc * feat: options chains * fix: remove list validators * feat: add validator dict to fetchers * lint * update standard models * lint * feat: rename validator * fix: ownership * feat: query params description * fix: balance yfinance * key execs, income statement * remove change * fix: revenue geographic * fix: disable pylint * fix: unusual + balance * unit test validator * minor fix * explicit validators * update test * feat: multiple items allowed * rebuild * move check_single_value * crypto historical * order providers * fix typing * rename extra dict * marking multiple items allowed * Revert "marking multiple items allowed" This reverts commit7da04817e1. * error msg * fix: default provider runtime vs configuration * minor fix * docstring * revert default changes * get provider before executing cmd * fix container bug * clean filter * add comment * prevent bad defaults * update docstring * typing * fix * black * fix docstring generation * [Feature] - Mark multiple item fetchers (#6074) * feat: price target * bezinga company news * equity quote * marking multiple items allowed * more multiple items * black * rebuild * another batch * rebuild * another * cpi * move prop * rebuild --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * rename var * update msg * rename func * fix test * mypy * ruff --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * [Feature] Add Regional Data Endpoint from FRED (#6071) * add regional data endpoint from FRED * codespell * ruff * sort imports * add provder='fred' to integration test * thought I already sorted those imports.. * pylint.. * more test params.... * even more test params... * even more test params.... * static assets * reconfigure params * ruff * alias dict * recapture cassette * router doctstring --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] - Fix most integration tests (#6082) * Fix most integration tests * Lint * Fix price_target column for Benzinga (#6083) * Release/4.1.4 (#6081) * static assets * patch version increase * core update * bumping versions * bump finviz version * bump versions * bump versions on package.extension --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Add dates to /quantitative as needed. (#6078) * Add dates to /quantitative as needed. Run new black * Fix tests * Pycharm is weird sometimes * uncommit * Add default window + error handling + mistake --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Add end point: `etf.equity_exposure()` with FMP provider (#6079) * add etf.equity_exposure from FMP * empty data error * recapture cassette * pylint unused argument * Fix router example typo * fix test...? * static file to fix test? * fix test..? * __json_schema_extra__ * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * [BugFix] Fix Equity Integration Tests (#6086) * fix equity integration tests * black * pylint * black * black * move df_apply to helpers * unused import * remove file that shouldn't have been added * oops. didn't remove a couple lines * [Enhancement] Add `analyst_search` to the Equity/Estimates Router (#6088) * standardize price_target * add analyst search * black * more black * ruff * linter, test parmas * last missing param * get rid of convert to upper * ruff * pylint * [BugFix] - Fix POST docstring examples (#6095) * Fix POST docstring examples. * Move router examples to command decorator * [BugFix] Fix `treasury_rates()` (#6092) * fix treasury_rates * drop rows with no data --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * clean up the remains from my yeeting (#6089) * clean up the remains from my yeeting * was not careful * Add ETF examples (#6102) Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * [BugFix] Fix integration tests (#6100) * fix int tests * fix obbject int tests * fix quant tests * fix index tests * use python 3.10 instead * remove cache * end_date < start_date * [Enhancement]: Add TMX data provider extension. (#5913) * dev install * add TMX provider extension * normalize ytm and coupopn_rate values * black * codespell * ruff * black again * pylint * ftw * undo what Pylint thinks is best * more black * renovate insider_trading standard model * fix tests * typo * tests * empty string * pylint unused argument * nans for some reason * black * static files * static files with openbb-tmx installed this time * yfinance TypeError..? * NA -> N/A * update for version bump * list exchange-calendars as tmx dependency * eod chains date -> eod_date * new line * not that file * more black * one more black * fix weird merge thing * ruff * index constituents params * insider trading * fixing things * black * black AGAIN * news integration params * the other missing param * ruff * historical dividends field update * add json_schema_extra * gainers * symbols -> symbol * company news symbol * unit test param * review items * wrangle a rogue field * index router example * company news thing - symbols -> symbol * field name map --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] - OBB.GET (#6097) * create OBB.GET and data slicer page * remove quotes * format description * wording * functions.json * sidebar position * remove if stamente * [Docs] Remove Reference to `to_chart` in OBBject. (#6096) * remove reference to to_chart in OBBject. * put chart description back in OBBject properties * [Feature] - Create openbb assets folder (#6101) * create openbb assets folder * fix unittest * rebuild --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fixes to_df() where the date series contains multiple TZ-offsets. (#6099) * allow mixed utc offset in a tz-aware date column * enforce ascending from all providers for price.historical * fix tests * add comments and apply treatment to basemodel_from_df before JSON output * yfinance consistency * add unit test * add unit test * better test * ruff --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update the quantitative extension to make more sense (#6087) * Split out a rolling submenu for the rolling functions * Make a performance and a stats submenu. * Test the statistics functions * lint * lint * dupe test * pylint * ruff * Try tests quick * black magic signature funcs * fix my custom tests * Fix the existing imports/urls * push the api update * okay I figured out whats going on * this should be all of them * Correct docstringing examples --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Fix ECB Yield Curve (#6108) * fix ecb yield curve * standard model update * Update unit-test workflow to check for changes to openbb_platform (#6109) * [Bug fix] - Fix package mypy (#6110) * fix: package mypy * types * black * [Feature] - Equity router descriptions & examples (#6103) * feat: equity/calendar * feat: compare router * fix descriptions * darkpool + discovery * fix paragraph issues * fix descriptions * fundamental part 1 * fundamental part2 * transcipts * ownership * fix * price * shorts * Update darkpool_router.py * minor fix * shorts examples * examples * ruff * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Add `exception_h… * [Feature] - Auto-build test (#6271) * Auto-build test * Mark * [BugFix] Typo on `openbb-quantitative` readme (#6272) * typo on qa readme * typo on qa readme --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Add pull_request trigger for release branches in API Integration Tests workflow (#6278) * fix: serialize response before fastapi (#6279) * [Feature] - Annotated results (#6282) * feat: pass metadata through AnnotatedData * fix: typing * fix: rename AnnotatedData to AnnotatedResult * fix: mypy * [Feature] - Merge reference.json and extension_map.json, plus documentation generator fixes (#6268) * Merge reference.json and extension_map.json * feat: check all packages are built and installed * rebuild * fix * small fix * Update package_builder.py * move core into info * move extensions into info * fix test --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * update example notebook syntax for metadata change (#6287) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Add Forward Sales and EPS Estimates (#6269) * add intrinio forward estimates * decorators * mypy * better sentence for descriptions * black * mypy * review things * update field --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Router descriptions (#6288) * First try * add routers to reference.json * fix apploader * add some router descriptions * rebuild * remove pydocstyle fixes * minor fix * docstring * new descriptions * undo sub routers --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * Updated docs again (#6289) * [BugFix] - Fix nested router descriptions (#6292) * fix: get_routers * keep previous structure * rebuild * opt * rename var * simpler * ^ * [Feature] Adding interactive tables (#6290) * fix table html for charting extension * handling tables * fixes and maing linting happy * reset index and route as default title * drop "index" column and temp workaround for "provider" column that breaks charts. * text overload * only drop range index * better to do it on table.html --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Fix the multiple items check (#6294) * check for multiple items when no info * check for , and ; only if it's a str --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * [HotFix] Add ETF holdings data param to Intrinio (#6293) * add etf holdings date param * static files --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Enhancement] - PyDocstyle Compliant (#6284) * PyDocstyle Compliant batch 1 * Batch 2 * Batch 3 * Batch 4 * Batch 5 * Batch 6 * Batch 7 * Linting * MyPy * mypy things * black * more mypy * black * fix that * black again * undo that * Fix error message * pylint --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Handling negative timestamps on Windows (#6298) * safe fromtimestamp * sage timestamp convertion on equity profile --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * [Enhancement] Improve Charting Extension Plots and Indicators (#6243) * improve historical prices charts * ruff * correction in docstring. * forgot crypto in the router * pylint * that one shouldn't have changed. * pylint again * and black * add flag for heikin_ashi * better kwarg * ruff * tests * update warnings catch * ruff * pylint * don't cast warning when parameter is 'chart_params' * chart params * start backend only when the chart is about the be created * get_params * add generic line chart method for unsupported endpoints and external data * return None when render * query params * don't add volume to candle legend * better moving averages * commit some updates * add the __init__ file.. * exception handling * generic charts style * forgot to remove that print statement * codespell * generic bar charts * group bar charts * don't raise params warning when 'chart_params' in extra_params * price performance chart * black * ruff * typing things * etf price performance chart * don't warn when 'chart_params' exists * black * pylint * pylint * pylint * mypy * black * etf holdings chart * mypy * bar charts for fred * pylint * some review things * codespell * pylint * apply metadata update * unused import * typing things * ruff * weird title thing * docstring * backend syntax * black * pylint * duplicated imports outside of top level * start backend in constructor * more linters * now black * more linter * update warning ignore line * Charting class doctstring * indicator edge case * pylint * that was annoying * forgot macd indicators query params * kc default setting --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * [BugFix] `json_schema_extra` getting overridden (#6300) * fix json_schema_extra getting overriden * keeping it as it was --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * undocumented benzinga fields in response (#6304) * [BugFix] Fix yFinance end_date filter when not intraday. (#6302) * fix filtering by date * timedelta as minutes --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fix metadata creation (#6306) * fix metadata creation * fix metadata creation * adapt tests * adapt tests * adapt tests --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * [BugFix] - Provider is added to every response item (#6305) * Exclude provider and don't model_dump * still missing docstrings * undo package changes * minor fix * mypy * minor fix * cleaner * private var * docstring * docstrings * add package builder tests * ruff * rename * rename * update tests * minor fix * fix test * handle docstring edge cases * test * [BugFix] Fixes the API (#6309) * stops the API from breaking. * black * whitespace. * [Feature] - Update credential filters to v4 (#5949) * update cred filters to v4 * ignore v3 key if v4 is there already * add comment + unit test * update hub state instead of replacing * remove unused file * fix unittests * ruff * add comment * remove lc * black * comment * comment * comment * comment * send warning if v3 keys found * tradier v3 * keep v3 intact * better * unit test + minor fixes * cleaner * comment * sorted * remove unecessary class * remove ultima from v3tov4 map * unit test v3tov4 map * unit test v3tov4 map * unit test v3tov4 map * providers.json * ^ --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Add single widgets public endpoints examples (#6312) * Add single widgets public endpoints examples * add couple more examples * imrpove documentation * update with video * [BugFix] Charts: Fix Legend & Title Crowding in Jupyter (#6316) * better jupyter legend * add that to the commit * [BugFix] Chunk FMP Price Performance URL For Large Lists (#6317) * chunk price performance url * black * recapture fmp tests * fix tests * type * remove terminal related artifacts from build folder (#6307) Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Replace Platform Docker File. (#6321) * api.dockerfile * move Rust install * add rust to PATH * Install dev tools * no -e * Fix build failing for router-only extensions with no standard models (#6324) * [BugFix] Add Missing require_credentials=False In Nasdaq Fetchers (#6320) * missing require_credentials=False * pylint disable unused argument --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Adding safe timestamp conversion everywhere (#6299) * safe fromtimestamp * sage timestamp convertion on equity profile * safe fromtimestamp * fix imports * Lint * Force UTC Currency Snapshots * Add that to market_snapshots too. * black * ignoring some typing * ignoring some typing * typing * typing * typing --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Docs] Charting Documentation (#6303) * start to charting docs * Add images to landing page * Add images to indicators * codespell * add some examples * Add screenshots * codespell * missing image * [Feature] - LLM mode (#6308) * LLM mode * Docstring truncation * Preferences * Output type * use settings instead? (#6314) * Refactor with @montezdesousa * fix test * fix: max length type * field descriptions * try with FieldInfo * ugly... * partial * override FieldInfo __repr__ * typing * separate model_config * rename OpenBBCustomParameter to OpenBBField * lint * pydocstyle * don't include choices if no choices --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * [Feature] Add Relative Rotation To `openbb-technical` and `openbb-charting` (#6277) * add relative rotation * router examples * docstring * test params * black * name of test functions * router example description * fix NoneType is not iterable * clear print * linting * black * revert that one place, it can stay None * forgot that file in the commit * some cleanup * improving the get_type_name funciton a bit * query_params types * pylint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * [Release] 4.1.7 (#6325) * [Critical] Sync `main` with `develop` (#6202) * feature/intrinio-equity-search: Adds Intrinio to `obb.equity.search()` (#5863) * intrinio equity search * integration tests * test --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/yfinance-multi-ticker: Adds support to openbb-yfinance for multi-ticker download. (#5845) * yfinance multi-ticker support * multi-ticker support for market indices * crypto multi-ticker support * recapture tests * yfinance cache and tests * currency historical multi-ticker support * style things * black * missed a values --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Feature/us-treasury-prices: Adds Treasury Prices to Fixed Income (#5776) * add treasury prices endpoint to fixed income router * adds tests * black * ruff * import statements * standard model imports * black * some cleanup * black * async router * make async * str outpuot * bytes object not string * docstring typo * multi-line f-string * encoding * duplicated conditional * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/sec-etf-holdings: Adds ETF holdings from SEC provider (#5757) * add ETF holdings from SEC provider * black * helper function params * edge cases * ruff * add validator in company filings * remove xml field * update import * cleanup parsing * missing datetime import in company_filings * black * unused import * add missing py.typed files * feature/nasdaq-equity-search: Adds Nasdaq provider for `obb.equity.search()` (#5790) * add nasdaq to equity search * black * unused import * make async --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Excel docs (#5870) * first test * remove old reference * bring this file back * generate sidebar and write empty mds * generate index.mdx * get description from cmd_lib * fix reference card error * rename file * generate markdown * regen * add last+hist * update pages with seo metadata * format types * small fix * css sux * add usage placeholder * set hidden by default * nah * add cmds and menus to reference * lint * fix/Users/diogosousa/opt/anaconda3/envs/platform/bin/python /Users/diogosousa/OpenBB/OpenBBTerminal/website/generate_excel_markdown.py * format mds * remove space * fix commands heading * redo folder structure * add back cmd description * move card to var * different main folder * clean * move vars * refer to editor * rename var * done * recreate folder structure * add section: syntax + minor adjustments * remove return type * remove return type * rename api to library * minor fix * remove api folder * remove api folder * formatting * improve basics * basics * fetch functions.json from website * complete basic * change syntax to use semi-colon * basics * basics * remove space in sig * remove sections * add metadata * Update formula builder * add tabs * Update index.md * complete basics and formula_builder * Update index.md * add windows screenshots * restructure folders * regenerate with latest add-in version * move Excel sidebar * rename function and add comment * now it's working * logic * rename folder * Update formula_builder.md * fix * hide excel for now * some explicit typing --------- Co-authored-by: tehcoderer <me@tehcoderer.com> * Make Pro Fetchers async by replacing `ThreadPoolExecutor` with `asyncio.gather` (#5822) * init * Update helpers.py * filter URL on raise * polygon, fmp done, update cassettes * updates * cleanup * revert tests for now * Update discovery_filings.py * Update helpers.py * add `async` overload to `Fetcher.extract_data` * update merged fred models * tests, improve fred series * Update insider_trading.py * insider * tests * intrinio * Update equity_historical.py * implement abstract async extract on Fetcher, with simple switch * cleanup * Update helpers.py * Update helpers.py * fix fmp historical deprecated urls * Revert "fix fmp historical deprecated urls" This reverts commit1a760a2473. * fix fmp `index.market` 1day url missing query params * Update test_fmp_market_indices_fetcher.yaml * field fixes * `extract_data_async` -> `aextract_data`, `async_request` -> `amake_request` * `async_requests` -> `amake_requests` * Update company_news.py * add sort to index `integration` params * add `client.py` tests * Update equity_search.py * Add lost v in platform api version string * Resolve linter errors here and there --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Allow this to be run in parallel (#5872) * Limit mypy v3 linting to only the diff of the PR (#5878) * Use custom parametrize from news menu tests (#5873) * Use custom parametrize from news menu tests * Update Ultima unit test cassettes * Command Schema (#5874) * POC * Filter by provider * pass base_app as parameter * add typing + TODO * fix some typing * Fix unit tests --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * Parameterize `obbject.to_df` with `index` and `sort_by` (#5877) * Parameterize obbject.to_df with index and sort_by * unit tests for obbject * keep using the date as default to use on basemode_to_df() --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Changes to the `obb.fixedincome.corporate.hqm()` output (#5876) * changes to the hqm output * typo --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Refactor method in RegistryMap (#5879) * refactor extract_info * add comment --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * remove Literal from providers in OBBject (#5882) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix version (#5883) * Fix version * Fix linter on terminal * Refactor package builder (#5880) * breakdown builder + remove black * rebuild * rebuild * rebuild * rename method * format built code without black * we still lint if it's available * fix existing tests * add linter tests * add black to dev deps * auto_build as instance method * reorder methods * typing --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * small refactor for simplification (#5886) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix bug. Add router test. (#5888) * Fix bug. Add router test. * Simplify * separate pylint between platform + terminal (#5892) * separate pylint b/w platform + terminal * Explicitly set pylint check scope to files in the diff --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * sync descriptions (#5893) * Add REST API docs page with advanced settings configuration (#5890) * Don't mention docker in a list of python envs * Create a REST API page * Update docs to get api keys from the hub * Update installation instructions * Mention requirement of poetry and toml in source installation section * move rest page up to the top. and add url to google colab example notebook --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * fix a v3 syntax example (#5891) * Adds federal reserve data points (#5885) * Allow optional input for 2-month treasury rates and add FederalReserve rates model The commit includes two main changes. One being the modification to the standard treasury rate models, where the 2-month input field is now optional, and a default value is set to none. The other main change is the addition of a new module for the FederalReserve treasury rates model, which includes query parameters, a data model, and a data fetcher. * Add Money Measures models and commands This commit introduces new Money Measures models to handle money-related data, defines Money Measures commands in the economy router, and implements the Federal Reserve Money Measures model. The core model includes fields like start_date, end_date, and various components of the money supply. The new command added to the economy router allows the querying of these data. * Add Federal Reserve Money Measures test file This commit adds a test case file for the Federal Reserve Money Measures fetcher in the Federal Reserve module. The test case includes simulating a GET request and the corresponding expected response from the server. * Cleanup * Sneaky unformatted integration tests * its a dawg life for me ...... ruff * add the fed funds rate * didnt mean to commmit this * black * this is why we should pre commit kids * change install name * add providers to int tests * review comments + commit static * replace nan with None * fix float on None * get rid of nans for nulls for json handling * change `_` to `-` in readme pip install. * Update __init__.py docstring --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Check if outdated (#5898) * Add econometrics API tests (#5899) * Docs/excel update (#5889) * update xl docs * update syntax line * update again * Fix pylint scope (#5895) * Allow optional input for 2-month treasury rates and add FederalReserve rates model The commit includes two main changes. One being the modification to the standard treasury rate models, where the 2-month input field is now optional, and a default value is set to none. The other main change is the addition of a new module for the FederalReserve treasury rates model, which includes query parameters, a data model, and a data fetcher. * Add Money Measures models and commands This commit introduces new Money Measures models to handle money-related data, defines Money Measures commands in the economy router, and implements the Federal Reserve Money Measures model. The core model includes fields like start_date, end_date, and various components of the money supply. The new command added to the economy router allows the querying of these data. * Add Federal Reserve Money Measures test file This commit adds a test case file for the Federal Reserve Money Measures fetcher in the Federal Reserve module. The test case includes simulating a GET request and the corresponding expected response from the server. * Cleanup * Sneaky unformatted integration tests * its a dawg life for me ...... ruff * add the fed funds rate * didnt mean to commmit this * black * this is why we should pre commit kids * change install name * add providers to int tests * review comments + commit static * replace nan with None * fix float on None * get rid of nans for nulls for json handling * change `_` to `-` in readme pip install. * Update __init__.py docstring * Debug pylint * Adjust the fetch depth --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * fix `from openbb import obb` asyncio lock in python REPL (#5896) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * feature/financials - PR for working on structure of financial statements. (#5794) * balance sheet draft * balance_sheet draft * cash_flow draft * income_statement draft * intrinio financials * description * period field * ruff * income statement * field * label - gross profit ratio * cash flow statement * investing order * add option for caching to cashflow * add caching to balance and income * typos and update order for financial institutions * replace 0 values with None * add financial ratios from intrinio * black * missing test params * balance cassette * query param description * symbol list warning * black * handle BRK-A and symbols with a dash for Intrinio * fix typo error * add free cash flow to bottom of cash flow statement * amortization_expense * dev_install.py * undo dev_install.. wrong branch * cash flow order things * standardized cash flow * fields * integration tests * cash flow model validator * more polygon cash * black * black * Delete openbb_sdk/providers/polygon/openbb_polygon/utils/definitions.py wrong file * balance sheet * some cleanup * ruff * income statement * black * test params * financial ratios async update * recapture fmp and polygon tests * yFinance financials * yfinance tests * delete financial_statements standard model * intrinio balance sheet order * fiscal year standard param * remove file accidentally committed * add reported_financials end point * fiscal_year param for reported_financials * fix url * fmp test cassette * add safe-guard with warning for fiscal year before 2008 * periods can only be annual and quarter * url in docstring correction * add fiscal_year param to intrinio standardized financials and ratios * fix fmp ratios * black * rename fields as per Minh * rogue field * black * Fix typo in a docstring * Resolve linting errors * type ignore * disable=unused-argument * changing the arg name cc @minhhoang1023 --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * docs/legacy-install: Add warning at top of page - Instructions on this page are for installing the Terminal (#5904) * add warning at top of page - instructions are for installing the Terminal app * pip install openbb-nightly * hotfix/financials-field-maps: Updates A Couple FMP/Polygon Income Statement Fields (#5907) * update income statement fields * another polygon field * ratio -> margin * black * explicit fmp fields * add reported_currency for standardized intrinio * # pylint: disable=unused-argument * another unused-argument * black.. * patch tests * polygon income: eps -> basic earnings per share * re-capture terminal portfolio menu test --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Fix test (#5916) * Fix test * Skip ultima integration tests --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * hotfix/fmp-price-performance-zeros: Replace returned zero with None and normalize percent values. (#5918) * replace zeros with none and normalize percents * pylint unused argument * Update index.md (#5906) * Release/4.1.0 (#5901) * Hotfix/terminal tests (#5919) * skip supressed arguments * silent way of customly load on quote * specify source for call_load * docs/platform-faq: Start Platform FAQ page with bullet points on Platform vs SDK (#5914) * platform vs sdk faq page * add data and data providers faq section and some style cards * typo * makes changes as per reviews * openbb-nightly as a way to install everything * jupyter-lab instead of jupyter --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * hotfix/backend - Initialize OpenBBFigure (#5912) * create backend * openbb_figure * black * pylint * pylint again --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * hotfix/yf-futures-historical: yfinance historical futures multi-ticker support and symbol parsing (#5923) * multi-ticker support for yfinance futures historical * raise-missing-from * integration test params * equity_historical adjusted kwargs * pylint unused argument * Docs/excel examples (#5920) * regen excel md * add syntax + basic example * fix example * create json with docs map * update docs to latest functions.json + remove tiingo * remove space from examples * minor fix * remove spaces * remove spaces * bug fix: remove folder before generating * fix typo * add link to appsource * fix * Update templates.md * regenerate content * change docs colors * fix light mode * add back tiingo * update functions.json * templates go later * remove Library from reference * Make the excel markdown being generated at runtime * fix reference cards having commands under menu * remove excel/reference folder since this is built at runtime by gh-pages action * black formatting * improve title * add excel to the main page * add excel image bg * make excel sidebar show up next to pro * improve main page * small fix for platform page title * update basics page * add tip to autocomplete --------- Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * Re-record tests and fix symbol bug (#5924) * Re-record tests and fix symbol bug * nordvpn us ftw * @IgorWounds says "SPY >> IOO" --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Docs/bug fix (#5926) * fix pro link * fix wrong example * Introduces a limit argument for the `equity.fundamental.trailing_dividend_yield` endpoint (#5925) * introduces a limit argument for the equity.fundamental.trailing_dividend_yield endpoint * add default args to test * Add json_schema_extra to openapi.json (#5930) Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * feature/standardize-quote: Proposal to Standardize EquityQuote (#5922) * standardize EquityQuote * intrinio reference * rogue comma * pylint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * hotfix/fmp-rev-segments: Adds Fiscal Period to busines/geographic segments revenue. (#5921) * add fiscal_period to revenue by geography and business line * data description and unused imports * update test cassette * Allow multiple symbols `equity.profile` (#5929) * allow multiple symbols * pylint * pylint ignore position * change callback to helper func --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Add filtering to AV historical price (#5928) * add filtering to av historical price * lints --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Fix vwap FMP error (#5936) * Fix vwap FMP error * Linting * Painlint * Add date filter + symbols to comp (#5931) * add date filter + symbols to comp * make sure year is in d * tests fix * Improving Platform's import time (#5894) * missing decorator * missing optional statements * us-gov to optional and right position * removing redundant call * lazy load mappings * docstrings * introducing the extension loader class * misleading docstring * using the extension loader on the router * using the extension loader on the credentials * docstrings * lazy load of entry points * checkout dev_install * using the extension loader to get the entry points instead of recalling the function * improved auth service and charting service * using the extension loader on the registry * typos * adding properties to extension loader for easy access * using the extension loader on the package builder * avoiding circular imports by using forward references * fix charting service tests * test for the extension loader * Update openbb_platform/core/openbb_core/app/model/credentials.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Update openbb_platform/core/openbb_core/app/router.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Update openbb_platform/core/openbb_core/provider/registry.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * adjustments --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Disable auto_build on test run (#5937) * Disable auto_build on test run * Move to conftest * Update excel docs (#5940) * update basics * update reference generator * Categorize release notes based on labels for OpenBB Platform (#5943) * Categorize release notes based on labels for OpenBB Platform * Add environment variable for GitHub token in labels-PR.yml * Update labeler.yml to use "enhancement" label for feature branches --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Custom deprecation message in API endpoints and Python commands (#5942) * add custom deprecation message feature in routers * add custom deprecation message feature in package builder * using an actual DeprecationWarning instead * fix tests --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Hotfix/remove unused workflow (#5945) * Disable auto_build on test run * Remove unused workflow * Revert * Hotfix/fix typo (#5948) * Disable auto_build on test run * Fix typo * Revert * docs/data-models-url: Fix URLs on Development Page (#5944) * fix url to the standard models * github links * `equity.fundamental.dividends`: allow filter by date (#5932) * allow filter by date * ruff * pylint * fix tests --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Create Excel templates page (#5947) * create templates page * Update index.mdx * fix description * update card * remove clsx * Update index.mdx * Update index.mdx * Update index.mdx * Update index.mdx * min height * min height * improve excel docs and point towards hub --------- Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * hotfix/intrinio-dividends-limit: Fix Limit Param Alias (#5951) * fix limit param * pylint unused argument, recapture test cassette --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Docs/remove core refs (#5957) * remove references to core: PathHandler + ProviderInterface * remove unused function * add comment * regenerate * fix a few examples * add comment * rename file * Excel tutorials on the docs (#5956) * update workflows name to tutorial * update title * get barebones to bring in Excel videos * tutorial excel videos in * hotfix/float-values: Convert Intrinio balance sheet values to float type (#5961) * convert intrinio balance sheet values to float type * unused import * typo in alias dict * Update to OpenBB Add-in for Excel (#5965) * Log custom headers (#5966) * add custom headers * fix: send on startup and defaults * pylint * unittests * move government-us to community in dev_install (#5963) * fix: adds logic to check whther user is logged in on hub (#5941) Co-authored-by: Luqman <luqazino@gmail.com> * hotfix/fix-company-filings: Fixes too many mandatory fields. (#5909) * Fixes too many mandatory fields. * black * black again --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * `equity.estimates.price_target` - Integrate with Benzinga (#5946) * deprecation message * fix lints * adding equity.estimates.ratings and fmp as its provider * unit tests for fmp * removing unused file * typos * add benzinga to AnalystRatings * revert changes to estimates router * moving it to price target instead * reverting changes * fmp support for multiple ticker * benzinga price target * ruffy * unused argument * fix type hints * tests for the new fetcher * new integration tests * fixing tests * missing std arg --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [DEPRECATION] `index.market` renamed to `index.price.historical` (#5962) * deprecate index.market and add index.price.historical * add index.historical standard model * add index.historical provider models * index extension tests * provider tests * linting * bug fix (#5969) * Uppercase excel reference (#5958) * uppercase reference * fix name header * add tab title * remove reference excel folder * add to gitignore excel reference files --------- Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * move templates (#5970) * Release 4.1.1. (#5964) * update dev_install * fix effr test * Update dev_install.py * fix fundamental balance test * fix equity price historical test * fix price target model * black * rebuild static files * update publish.md * fixed dev_install * update publishing doc * updated `openbb-core` to 1.1.1 * updated extensions * updated providers * updated `openbb` package * updated static extension map * updated publishing doc * fixed toml for `openbb-finra` * @jmaslek yfinance IS DEFAULT * updated static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Fix link to discord channel (#5910) Co-authored-by: James Maslek <jmaslek11@gmail.com> * Fixing Posthog handler for thread safety (#5968) * fixing posthog handler for thread safety * removing loggging init from the global scope - per sensei juan --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update labeler.yml and labels-PR.yml (#5974) * hotfix/ allow multiple `identify` calls (#5976) * allow multiple `identify` calls * Update posthog_handler.py * regex out any invisible control character from sales_conditions field (#5977) * docs/http-requests: Contributor Guide For Building HTTP Requests (#5973) * contributor guide for http requests * add a docstring * add section on get_querystring * extra space * add note for people installing PyPI in a zsh terminal shell --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * feature/add-yfinance-functions: Add equity.profile for yFinance (#5978) * equity profile for yFinance * pylint * equity quote * unused imports * remove yfinance from extras in toml (#5982) * Release OpenBB Platform v`4.1.3` (#5983) * fixing pyproject.toml * adding pandas-ta to technical package for publishing * bumping technical * test for pyproject toml * feature/cboe-async: Refactor Cboe for Async (#5900) * refactor cboe for async * codespell * unused imports * pylint * more pylint * platform metadata * classmethod decorator * test params * intrinio quote * test param names * date in test needs to be a datetime.date not string * make fmp unix timestamp tz-aware and normalize percent change * different way of parsing datetime string * recapture cboe equity historical test * unused import * index snapshot update * black * extension map * pylint * cboe pyproject.toml * proposal to standardize equity_quote * one more file * removing changes on static assets * index_historical * index_historical again * last_time -> last_timestamp * obsolete router path * fix tests * test param * restore market index deprecation that I forgot about * fixing tests --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Fix typo in website/README.md (#5980) * Fix typo in website/README.md * Update linting.yml * Update linting.yml * Update linting.yml * Change ref conditions * Update linting.yml --------- Co-authored-by: Luqman <luqman.bello@openbb.finance> Co-authored-by: Luqman <luqazino@gmail.com> * Hotfix/th etfs (#5959) * added etf trading hours * black formatter --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Luqman <luqazino@gmail.com> * feature/finviz-provider: Adds Community Finviz Provider Extension (#5952) * add finviz provider * recapture tests * recapture tests again? * invalid test param * static packages * units_measurement -> unit_measurement * static packages as core only * openbb_core version bump in pyproject.toml * try adding user-agent to test response * fix tests * linting * provider model cosmetic changes * fix install script and typo in openbb toml * static * fix: re-record unittests * empty data error * definitions as a file --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * Add support for multiple symbols on `obb.equity.price.historical` (#5984) * av - support for multiple symbols * tiingo - support for multiple symbols * include symbol only if necessary * update extension descriptions page (#5985) * remove useless file (#5991) * added symbol to headers (#5981) Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Fixing Docs Typos (#5955) * fixed typo * fixed stocka typo --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * fix nasdaq test cassettes (#5989) * don't include `custom_headers` in openapi schema (#5994) * hotfix/intrinio-index: Drop None Rows From intrinio Historical Index (#5987) * drop None rows from intrinio historical indexes * add empty data error * static assets * hotfix/insider-trading: Fix #5988 (#5990) * fix validation errors * empty strings * validator --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: teh_coderer <me@tehcoderer.com> * CI listing quick fix (#6002) * BIGGGG LINTING * fixing lints * fixing lints * black * very ruff * no export * fix hedge_view again * lints * platform lints * lints * black * black it @hjoaquim * fix some more linting --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Release `openbb-finviz` `1.0.0` to the public (#6000) * set version to `1.0.0` * Set correct dep version in main package * Add `finviz` to table * Auto Labelling for OpenBB Excel Docs Changes (#5998) * Update pull request labels * Update labeler.yml with new label for Excel files --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Support for custom examples in router commands (#5993) * Disable auto_build on test run * Add support for custom router examples * Revert odd file change * Fix API pollution * Refactor examples with @montezdesousa * Check if model is inside the PI * Fix * feat: add & fix examples (#6001) * feat: add & fix examples * fix: ruff + comment * feat: read parameter pool from file * feat: typing + unit test * Disable auto_build on test run * Add field order to OBBject * Revert * lint and revert * fix test --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * hotfix/intrinio-options-date: Fix comparing values between str and datetime (#5997) * fix compare between str and datetime * unused argument * get_weekday * lint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Field order added to the OBBject extra as preference (#5999) * Disable auto_build on test run * Add field order to OBBject * Improvements * Remove noxfile * Disable auto_build on test run * Add field order to OBBject * Revert * lint * Add docs * Not sure how this happened * lint * Update `openbb-devtools` (#6008) * update deps * unpinned package versions from gh linting action * codespell * updated black dependency * linting * linting * linting * pin codespell version * black * black again * install devtools in linting action * format w new black (#6009) * format w new black * format w new black * black again * black the terminal * ignoring unused arguments --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * remove reviewpad (#6010) * Remove Ultima provider (#6012) * Add OECD unemployment (+more) + data cache idea (#5917) * Add OECD unemployment + data cache idea * Docstring edits * Tests * Add composite leading indicator * i truested ruff --fix too much * Add short + long term interest rates * pylint * pylint2 * was not committing. my b * add csv cache + make it default. remove pyarrow from poetry * Clean up * Didnt run on this file. My bad * Why was this ignored /shrug * pylint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Feature/improved pr template (#6018) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * better pr templates * developer template * [Feature] - Custom deprecation (#6005) * custom deprecation * custom deprecation * using the new deprecation * custom deprecation on the package builder * remove comment * ruff * black * static assets * tests * using parametrization instead * test for deprecated endpoints (#6014) * Deprecation warning on the reference docs (#6015) * typo/fix * bring back methods needed for markdown generation * add deprecation warning to docs * contributor docs for deprecating endpoints - tks @deeleeramone * small changes on publishing procedure per @the-praxs * moving the deprecation summary class to deprecation file instead * explanation on class variables * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update openbb_platform/openbb/package/index.py Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Update website/content/platform/development/contributor-guidelines/deprecating_endpoints.md Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * deprecating on 4.3 instead @the-praxs --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * [BugFix] Fix package builder (#6022) * fix: remove specific imports * adjustments for correct deprecation * static assets --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * [Feature] Add support for multiple tags in `historical_attributes` and `latest_attributes` (#6013) * historical attributes standard model - * add support multiple tags * add `tag` field in data * add support for multiple tags in historical attributes * set correct return type in `callback` function * latest attributes standard model - * add support for multiple tags * add `tag` field in data * add support for multiple tags in latest attributes * add test params for the attributes endpoints * add support for multiple `symbol` and add `symbol` field in the data * modified code to fetch data from multiple symbols and throw warning as per @deeleeramone * add params for testing multiple symbols * linting * fix test params * fixed condition to check if its a `Dict` type * updated intrinio fetcher tests for the statements * updated static * [feature]: feature/overview-to-profile: Deprecate `equity.fundamental.overview()` and move to `equity.profile()` (#6011) * fmp overview to equity profile * deprecation warning * urls * wrangle fields * black * pylint unused argument * insert additional securityID fields to standard model * custom deprecation using OpenBBDeprecationWarning * typo - need to have the deprecated=True flag * static assets * fix non related test * minor adjustment - removing the need for the try/except block - using the get and pop removes the need for key existance checking. cc @deeleeramone --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * [BugFix] - Remove duplicate code (#6025) Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * remove `SectorNews` from router and standard models (#6026) * feature/more-yfinance: Adds some more to openbb-yfinance (#5979) * equity profile for yFinance * pylint * equity quote * unused imports * price target consensus * add currency field * add share_statistics * don't append empty result to results * key executives * missing definition in key_executives * pylint * key metrics * add currency to key metrics * add etf_info * rename trailing_annual_dividend -> dividend_rate_ttm * add institutions count to share_statistics * add historical dividends * add logic for start-end dates to historical_dividends * recapture the test..? * funny test * filter on tests? * record test with clean cache..? * year_price_change -> price_return_1y in key_metrics * black * make descriptions clear for beta and dividend_yield fields * add description field to standard model * updated static * clear description of shares_implied_outstanding field * updated static for equity * clean descriptions --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * feature/commodities-lbma-fixing: Adds Commodity Extension and LBMA Gold/Silver daily fixing levels (#5760) * add commodity extension and add lbma fixing endpoint * dev_install.py * readme url * renovate the standard model * makes a query_params model for nasdaq data link * literal not optional * unused imports * missing test params * test cassette * DataLink query param description * test file import * actually fix import * from openbb_core.provider..... * ruff * another import statement * black * async router * move query_params * update version * version numbers * extension_map * satisfy pylint? * pylint * Update pyproject.toml * black * poetry lock * Update extension_map.json * Update __extensions__.py * Update module_map.json * clean descriptions --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Improve UX for `obb.news` (#5986) * adding date,start_date and end_date to std params * add date to special params which should've another type * change types to dateType * change helper to accomadate changes in types * date filtering * using the date filtering for all providers * date params on the std model instead * adding the right type * filtering dates on world news * integration tests * fix descriptions * static assets * black * Revert "black" This reverts commit7288b59f87. * lint * addressing @montezdesousa suggestion: removing qua 31 jan 2024 15:01:20 WET from standard models and using it only on benzing * tests accordingly * static assets * black --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: teh_coderer <me@tehcoderer.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] - Improve Standardization - `IndexHistorical` (#6030) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * small adjustment on the test * index historical * adjust tests accordingly * keep the test skipped * match tests w python * fix tests * keep the skip * fix test * [Feature] - Refactor Response Model (#6024) * Start refactor with @montezdesousa * feat: add response model inside openapi_extra * feat: find+replace return types * fix: ruff * Feature/api response by provider (#6029) * init * Update router.py * Update registry_map.py * check dicts * lint * exclude provider on data model for package build * `results_type_repr` logic for `Annotated`, ignore provider field in `_extract_data` --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: teh_coderer <me@tehcoderer.com> * [BugFix] - Improve Standardization - `CotSearch` (#6031) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * small adjustment on the test * index historical * adjust tests accordingly * keep the test skipped * match tests w python * use cache as std field * fix tests * fix tests * keep the skip * fix test * adding missing param * fix tests accordingly * Docs/byod (#5996) * add byod to reference * fix: rename add-in name * feat: add data conectors page * fix: additional notes * tiny tweaks * update functions.json and openapi.json * fix: fix bug in hedge controller * fix: another bug hedgecontroller * black --------- Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * Feature/ex-dividend: Renames "date" columns as "ex_dividend_date" for Dividend Calendar and Historical Dividends (#6006) * date -> ex_dividend_date * nasdaq historical dividends * black * pylint * intrinio alias_dict * dividend_currency -> currency * yfinance field name --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] - Adds a timezone to the Unix timestamp conversion to correct localization errors. (#6023) * fix: remove specific imports * make polygon historical tz-aware * undo including that commit * that PR wasn't supposed to be there. * pylint unused argument * fix polygon crypto historical intervals * pylint * new cassette * fix the rest of the polygon historical price query params * black * pylint.. * integration test param * appease daylight savings handling * paginate for crypto currency and index * black * raise EmptyDataError when no results instead of returning an empty list * ruff --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * Hotfix/wrong pydantic validator (#6037) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * Use field_validator instead * fix openapi schema fields `to_snake` (#6036) * Fix data connectors link typo (#6038) * [BugFix] - Improve Standardization - `EquitySearch` (#6033) * format w new black * Revert "format w new black" This reverts commit74b9619cc6. * small adjustment on the test * index historical * adjust tests accordingly * keep the test skipped * match tests w python * use cache as std field * fix tests * fix tests * use_cache as std * adjust tests * keep the skip * re-record test * black * Docs / only display results for current platform (#6017) * Update index.js * Update index.js * yfinance * tzcache no longer exists * fixxy * ruff --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Andrew <andrew.kenreich@gmail.com> * Improve the docstrings (#6040) * Improve the docstrings (#6041) Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * dont run base tests with v4 label (#6046) * Sync excel reference (#6039) * sync excel reference * fix: change delimiter to comma * feat: update data connectors * test skipping wf * Update unit-test.yml * Update unit-test.yml * test skipping wf * watch label changes * Update unit-test.yml * [Enhancement] - Improve `news` router docs and examples (#6047) * better docs * static assets * Feature/platform standardization notebook (#6049) * Add platform standardization overview notebook to examples * Add py.typed marker to openbb-fred * [Enhancement] - Improve `currency` router docs and examples (#6045) * currency search * reference rates * historical price * static assets --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * display warnings based on preference (#6051) * [Enhancement] - Improve `crypto` router docs and examples (#6048) * crypto search add validation for '-'-separated pairs * set default query value to None * improve /crypto description with custom examples * improve /crypto/price/historical description with custom examples * updated static for crypto menu * ignore line too long * linting --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Final Implementation of Changelog V2 (#6050) * Updated the release drafter to process the released changelog for OpenBB Platform * Update release drafter configuration * Add OpenBB Documentation Changes and Create Release * Update process_changelog.py path in draft-release.yml * Update release-drafter version and save changelog * Copy changelog with python * Update draft-release.yml to save Changelog * Update draft-release.yml * Encode and save Changelog to Base64 * Update Changelog saving method * Update Changelog format * Update CHANGELOG.md with release notes * Fix draft release workflow * Add cat command to print CHANGELOG.md * Add platform-drafter.yml and update release-drafter.yml and draft-release.yml * Commented out config-name in release-drafter step * Update branch name validation and process_changelog.py * Refactor process_changelog.py to improve readability and maintainability * Refactor process_changelog.py to handle file I/O errors and remove duplicate PR entries --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * improve discriminator logic, fix package return type docs (#6052) * improve discriminator logic, fix package return type docs * Update registry_map.py * build package * Update registry_map.py * defaults * Update registry_map.py --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Add LLM tools example notebook (#6053) * Add LLM tools example notebook * Update README, rename example notebook --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Remove the preference (#6055) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] - Standardise multiple symbols input (#6056) * feat: remove list of str * fix: update cpi * package builder + cpi * build * fix: update unittests * fix: check_item * fix: unittests * Improve the docstrings (#6057) * update economy router docstrings (#6058) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fix OECD Long Term Interest Rate (#6060) * fix long term interest rate * pylint unused argument * [Bugfix] - Fix economic calendar country (#6059) * fix economic calendar country * lint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [HotFix] Index Router Docstrings & `sp500_multiples()` Cleanup (#6063) * sp500 multiples cleanup * remove dict from standard model * static pacakge * pylint * [Feature] FMP Current Holdings (#6043) * add fmp current holdings to etf holdings * pylint unused argument --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Replace symbols in company/news (#6061) * feat: replace symbols in /news * fix: integration tests * fix: integration tests api * fix: typo * Update test_intrinio_fetchers.py * [Enhancement] Add function examples to router. (#6042) * options router * fixedincome router * futures router * missing comma * static assets * futures router --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Enhancement] Add function examples to Regulators Router (#6054) * options router * fixedincome router * futures router * missing comma * static assets * futures router * sec router * cftc router * black --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fix World News (#6064) * fix fmp * fix intrinio * fix biztoc * actually commit intrinio fix * fix tiingo * unused import * fix tests * black * ruff * benzinga empty strings * codespell * fix test? * more empty strings --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - remove unused validators from standard models (#6067) * update standard models * lint * Update USD Liquidity Example Notebook for V4 (#5902) * Update USD Liquidity Example Notebook for V4 * delete some v3 text in the copperToGold * Update README.md * findSymbols preview image * Google Colab preview image * financialStatements preview * content tsx file * ### title * convert tsx to json * indent size * double quote keys.json * trailing commas * Update content.json * patch --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * Fix QA Examples (#6072) * [Feature] - Ensure Bugfix branches can only do PRs to `develop` branches (#6073) * bugfix branch name checks and few fixes on the linting not to run on pushes to branches outside PRs * Update branch naming guidelines link --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Feature/charting obbject (#5938) * fix circular import issues on the obbject extension framework * settings available on the obbject * extension init * charting assets and code * introduce to_chart functionality * removes the to_chart method from obbject in detriment of the one from the obbject extension * Update openbb_platform/obbject_extensions/charting/charting/__init__.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * fix on the show method * adding the example to the to_chart docstring * copying the exsting README from charting extension - needs to be revamped * moving to openbb_charting instead * update the pyproject.toml file * pydocstyle * versions * better docstrings * making accessors public * removing unnecessary credentials variable cc @montezdesousa * removing access to extra/metadata and use designated private attrs instead * Fixes linting for the logging service (#5992) * lints * typing.Type instead * deprecating ChartingService to use the new extension instead - adding function discovery capabilities using it * tests for the obbject charting extension * removing charting service from command runner * filter functions not implemented in the module * remove charting service tests * removing charting service on the tests for int tests * charting integration tests * removing charting service file * removing old charting extension code * revamp builder * fix obbject tests * fix command_runner tests * removing openbb_figure_table * better website docs * reviewed readme * unsetting api key for posthog (pywry) windows * added debug_mode to the system settings * removing api key * update nightly script * fix tests * black * black * Revert "black" This reverts commit21d76ad689. * Revert "black" This reverts commit0904653fd7. * black for henrique * returning a list instead * better docstrings * removing unnecessary indicators docstring * typo * black * intentional access to protected member * changes to publish script * filtering deleted files * black * adding render argument * fixing the df_to_basemodel function: it should include the index in the columns either if flagged or if the index is named * adding the hability to add you own data to to_chart method * tests * black * disable protected access * accept kwargs to eg. save image * adjustment cc Igor * add if statement for protection * remove unused return typing * fix technical charting views * better error message cc @IgorWounds * better structure and fix test * Revert "better structure and fix test" This reverts commit612ea6117c. * Revert "better error message cc @IgorWounds" This reverts commit3d7ee53878. --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * Fix CAPM example (#6075) * Start removing dead v3 commands for deprecation (#6070) * Yeet tokenterminal * Yeet crypto/onchain/hr and gwei * yeet luna * yeet coinglass * yeet dps/ctb * yeet reddit * yeet covid * actually not yeeting hide yfinance future warning * yeet options/hedge * not yeeting. i18n words * something happened on accident * still fixing * git reset/git checkout -f2516cfbc72website/content * still not sure whats going on * Edit workflow to not look at deleted files + change bootup message * Dont pin the workflow to my branch always lol * Remove askobb * [Feature] - Comma separated string and list inputs (#6062) * feat: balancesheet * feat: income statement * fix: cash flow statement * feat: financial ratios * feat: reported financials * feat: revenue business line * feat: revenue per geography * fix: warnings * Update balance_sheet.py * fix: remove warning imports * feat: balance sheet growth * feat: calendar ipo * feat: cashflow growth * feat: __validators__ * fix: typing * fix: validator msg * feat: trailing dividend_yield * feat: short volume * feat: share statistics * feat: price target + consensus * fix: update validator * feat: historical dividends * feat: key executives * fix: getattr directly * fix: type hint validator * fix: add default to getattr * typo * feat: otc * feat: options chains * fix: remove list validators * feat: add validator dict to fetchers * lint * update standard models * lint * feat: rename validator * fix: ownership * feat: query params description * fix: balance yfinance * key execs, income statement * remove change * fix: revenue geographic * fix: disable pylint * fix: unusual + balance * unit test validator * minor fix * explicit validators * update test * feat: multiple items allowed * rebuild * move check_single_value * crypto historical * order providers * fix typing * rename extra dict * marking multiple items allowed * Revert "marking multiple items allowed" This reverts commit7da04817e1. * error msg * fix: default provider runtime vs configuration * minor fix * docstring * revert default changes * get provider before executing cmd * fix container bug * clean filter * add comment * prevent bad defaults * update docstring * typing * fix * black * fix docstring generation * [Feature] - Mark multiple item fetchers (#6074) * feat: price target * bezinga company news * equity quote * marking multiple items allowed * more multiple items * black * rebuild * another batch * rebuild * another * cpi * move prop * rebuild --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * rename var * update msg * rename func * fix test * mypy * ruff --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * [Feature] Add Regional Data Endpoint from FRED (#6071) * add regional data endpoint from FRED * codespell * ruff * sort imports * add provder='fred' to integration test * thought I already sorted those imports.. * pylint.. * more test params.... * even more test params... * even more test params.... * static assets * reconfigure params * ruff * alias dict * recapture cassette * router doctstring --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] - Fix most integration tests (#6082) * Fix most integration tests * Lint * Fix price_target column for Benzinga (#6083) * Release/4.1.4 (#6081) * static assets * patch version increase * core update * bumping versions * bump finviz version * bump versions * bump versions on package.extension --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Add dates to /quantitative as needed. (#6078) * Add dates to /quantitative as needed. Run new black * Fix tests * Pycharm is weird sometimes * uncommit * Add default window + error handling + mistake --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Add end point: `etf.equity_exposure()` with FMP provider (#6079) * add etf.equity_exposure from FMP * empty data error * recapture cassette * pylint unused argument * Fix router example typo * fix test...? * static file to fix test? * fix test..? * __json_schema_extra__ * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * [BugFix] Fix Equity Integration Tests (#6086) * fix equity integration tests * black * pylint * black * black * move df_apply to helpers * unused import * remove file that shouldn't have been added * oops. didn't remove a couple lines * [Enhancement] Add `analyst_search` to the Equity/Estimates Router (#6088) * standardize price_target * add analyst search * black * more black * ruff * linter, test parmas * last missing param * get rid of convert to upper * ruff * pylint * [BugFix] - Fix POST docstring examples (#6095) * Fix POST docstring examples. * Move router examples to command decorator * [BugFix] Fix `treasury_rates()` (#6092) * fix treasury_rates * drop rows with no data --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * clean up the remains from my yeeting (#6089) * clean up the remains from my yeeting * was not careful * Add ETF examples (#6102) Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * [BugFix] Fix integration tests (#6100) * fix int tests * fix obbject int tests * fix quant tests * fix index tests * use python 3.10 instead * remove cache * end_date < start_date * [Enhancement]: Add TMX data provider extension. (#5913) * dev install * add TMX provider extension * normalize ytm and coupopn_rate values * black * codespell * ruff * black again * pylint * ftw * undo what Pylint thinks is best * more black * renovate insider_trading standard model * fix tests * typo * tests * empty string * pylint unused argument * nans for some reason * black * static files * static files with openbb-tmx installed this time * yfinance TypeError..? * NA -> N/A * update for version bump * list exchange-calendars as tmx dependency * eod chains date -> eod_date * new line * not that file * more black * one more black * fix weird merge thing * ruff * index constituents params * insider trading * fixing things * black * black AGAIN * news integration params * the other missing param * ruff * historical dividends field update * add json_schema_extra * gainers * symbols -> symbol * company news symbol * unit test param * review items * wrangle a rogue field * index router example * company news thing - symbols -> symbol * field name map --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] - OBB.GET (#6097) * create OBB.GET and data slicer page * remove quotes * format description * wording * functions.json * sidebar position * remove if stamente * [Docs] Remove Reference to `to_chart` in OBBject. (#6096) * remove reference to to_chart in OBBject. * put chart description back in OBBject properties * [Feature] - Create openbb assets folder (#6101) * create openbb assets folder * fix unittest * rebuild --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fixes to_df() where the date series contains multiple TZ-offsets. (#6099) * allow mixed utc offset in a tz-aware date column * enforce ascending from all providers for price.historical * fix tests * add comments and apply treatment to basemodel_from_df before JSON output * yfinance consistency * add unit test * add unit test * better test * ruff --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update the quantitative extension to make more sense (#6087) * Split out a rolling submenu for the rolling functions * Make a performance and a stats submenu. * Test the statistics functions * lint * lint * dupe test * pylint * ruff * Try tests quick * black magic signature funcs * fix my custom tests * Fix the existing imports/urls * push the api update * okay I figured out whats going on * this should be all of them * Correct docstringing examples --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Fix ECB Yield Curve (#6108) * fix ecb yield curve * standard model update * Update unit-test workflow to check for changes to openbb_platform (#6109) * [Bug fix] - Fix package mypy (#6110) * fix: package mypy * types * black * [Feature] - Equity router descriptions & examples (#6103) * feat: equity/calendar * feat: compare router * fix descriptions * darkpool + discovery * fix paragraph issues * fix descriptions * fundamental part 1 * fundamental part2 * transcipts * ownership * fix * price * shorts * Update darkpool_router.py * minor fix * shorts examples * examples * ruff * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Add `exception_handler… * Re update excel docs (#6329) * [Feature] EconDB Provider Extension With New Economy Endpoints. (#6313) * economy router * router endpoints * update available_indicators * add econdb provider extension * black * fetcher test * country description * recapture tests and router examples * black * codespell * codespell skip * codespell skip...? * use . instead of * in codespell.skip? * this is supposed to skip the file from codespell * try another thing for codespell * unused import * pylint * doc page example - df.filter needs axis * unused argument * more pylint * mypy * insert image to doc page * recapture test * description * mypy * Update .codespell.skip * black * linting.. * more linters * black * init docstring * static files --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Sync ruff in dev_tool with openbb_core (#6331) * add currency snapshots from polygon (#6333) * [Feature] Async SEC (#6319) * async sec * linters * pylint * annotated results etf holdings * black * pylint doesn't always know best * form_type * unused import * test things * black * ruff * more test params * ? * think this does it * json schema extra --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Warn limit number of countries in TE request (#6334) * limit number of countries in TE request * const * disable=unused-argument * warn and info when countries above 28 --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Intrinio News (#6336) * add default=None * patch intrinio news * pylint * mypy * no need to assign articles var before len * more pylint * other assignment * Summarize Changelog (#6335) * rename the summarize changelog file (#6338) * Add pip install requests openai to the workflow file (#6341) * [BugFix] Intrinio Balance Sheet Period (#6343) * fix period * remove validator because pytest doesn't know what to do * Move files used in gh actions from root (#6346) * Move files used in gh actions from root * keep this * pydocstyle * ^ * fix: relative path, os independent * use relative root path * ^ * move noxfile.py to .github/scripts * remove flag * [Feature] OpenBB Platform CLI (#5302) * rename sdk_token to pat to follow hub convention * black * move OpenBBError class to error model * add OBBject class docstring * pylint * add futures to app docstring * Linting * Fix chart-related mypy errors. Co-Author: ’hjoaquim’ * Fix more mypy warnings * Build static * MyPy improvements * move get_branch request to logging_settings (#5348) * move get_branch request to logging_settings * black * add todo * Revert "add todo" This reverts commit7e3af83e3d. * add todo * Update logging_settings.py * mac/linux install script python output suppressed * rename .settings to .user for consistency * update readme * update readme * Linting * Linting and improvements * Regenerate static files * Snake_case, mypy, typing, improvements. | Co-Author: montezdesousa * Rebuild * Revert Fetcher * better cpi * Snake case * fixes: major_indices_eod for intraday, optional company_overview atrs * Feature/remove unncessary stuff (#5346) * removing the journal service from the command_runner * remove the journal service and fix tests * removing journal from the command_runner * removing journal entry references and adding optional metadata * rebuilding static assets * removing all references to journal entry * removing all references to journal and journal repository * removing journal query references * restructuring the command runner * fix argument mismatch and settings to user mismatch * dropping command runner session * re generation of static assets * ruff n black * removing introduced bug * removing duplicate reference due to merging * 3.8 compatible static assets * changing the way we deal with erros - removing the Error model * removing unncessary filters * fixing tests * regenerating static assets * remving mongodb references from user service * remving mongodb references * updating dependencies with removed pymongo * updating dependencies with removed pymongo * removing useless call * fix typo * ruff * fixing tests * ruff * removing leftovers * making registry map 3.8 compatible * static assets * ruff * Hotfix/squeeze import (#5358) * remove commit_hash and branch references * lazy load stats, scipy, pandas_ta * black & ruff * adding commithash back to log prefix * fix test --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * .user got lost in merge * improve __repr__ for sdk classes * changing posthog project key (#5362) * Linting and improvements * Rebuild QA * fix py38 + metadata ref in docstrings * doc ident * restore qa * update readme: remove journal * doc detail * disable black in App docstring * update readme: command execution * ruff * remove run_in_isolation: cannot pickle nested classes * remove outdated dir openbb_sdk * outdated workflow * update ruff * dependency related changes * using model validator instead * adjustments to the system model * minor adjustments * revert all changes on stocks controller * working historical price * controller_builder file * process class recursivly * adding translators prop * poc with platform as a menu and as command * paths feature * adding subcontrollers * offline access * menu text as obj variable * adjustments * move help to base class; print tables using rich table (for now); clear the choices for better autocompletion * introducing the platform controller factory * remove unnecessary file * revert changes to files * dinamically generate platform menus * generated platform commands * poetry lock * fix for literals and choices * adjustments - recursive iteration only if it's a class * router name should be lower() to match the class processor * deps * better output * handling base models * comment call_news * Feature/v4 deprecate everything (#6113) * comment call_news * remove news * remove keys controller * remove settings controller * remove ta forex * remove qa economy * remove ta stocks * remove qa stocks * remove fa stocks * remove ins stocks * remove gov stocks * remove dps stocks * remove ba stocks * remove bt stocks * remove stocks * remove stocks base controller class * ruff * remove qa forex * remove oanda * remove forex * remove forex * remove forex * remove mention to fx_tickers * remove ta crypto * remove qa crypto * remove dd crypto * remove crypto controller * remove crypto references * remove economy controller * remove economy folder * remoe etf controller * remove reports controller * remove dashboards controller * remove alt controller * rmeove etf files * remove alt files * remove custom reports * remove dashboard files * remove econometrics controller * remove forecast controller * remove reports files * remove forecast files * remove econometrics files * remove portfolio * remove futures * remove fixedincome * remove funds * remove sdk and common * remove all from init * remove reference to ipykernel * remove reference to ta_helpers * remove reference to ta_helpers * cleanup * adjustments to choices * remove old sdk generator * remove mention to dashboards * ruff * cleanup * remove logging infra * remove decorators * remove sdk audit * remove tought of the day * remove tought of the day * fix commands andmenus choices * fixing lints * ruffs * remove old tests * deps trim * using container as condition for recursion * remove unnecessary dependencies * move dep to better section * python versions * poetry lock * better custmo annotations * handling properties * handling edge cases: no func_doc and when signarute doesn't match type hints (self) * reverting treating models as props * provider groups * comment debug stuff * Revert "comment debug stuff" This reverts commitf0a86f04a8. * comment debug stuff * little adjustment for annotated types * injecting the reference to make the custom argument groups available * comments * custom model_dump to drop choices * deprecated * remove update option * remove update * remove translations * remove account controller * command descriptions * menu descriptions * removing interactive tables * limit the number of columns and rows * menu descriptions * show indexes * More cleanups (#6245) * renames * remove .init files * remove unused files * remove session stuff * remove session and sources stuff * remove unused models * remove sdk session * remove charting infra * remove charting stuff but allow console style * updates in models * raise directly * call terminal directly and remove artifacts * remove reference to sources * remove reference to source arg * remove reference to source arg * remove unused stuff * remove screenshot and raise directly * remove unnecessary helper classes * update the config file * remove references to old charting infra * call terminal directly * update deps * make user always local for now * rename to CLI * ruff * export options * export functionality * update rich * update example routine * fix issues with queue * temporary workaround for username * deprecate main menu commands * deprecate commands and remove unused stuff * deprecate commands and remove unused stuff * deprecate commands and remove unused stuff * adjustments and cleanups * routines syncing w hub * small adjustments to point to the right instance * whoami * custom terminal style * adjustments related to preferences * deprecate stuff * rename terminal style * deprecate more things * more deprecation * more adjustments * current settings - deprecating preferences, user and system * terminal settings * revmap custom terminal settings * cli version * ruff * black * linting fixes * happy mypy * ruff * remove old terminal build files * remove devcontainer * update dependencies * trim commands and its descriptions * better warnings * remove commands and menus str and show warnings if dev mode * get command descriptions from the translators instead * Add username in brackets if logged in * fix buggy command descriptions * [Feature] Bug fixing the Platform CLI (#6291) * fix buggy command descriptions * new reference structure * Seggregate data commands from others (settings etc) * fix table html for charting extension * number of rows and columns as a setting * interactive tables * adding menu descriptions --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * fix the way reference was being passed * fix choices parsing for providers * loosen to get instead * obbject registry class * obbject registry class * using the obbject registry to show available options * link obbject results to data processing commands data argument * small improvements to correctly get the standard args * intersecting data processing commands and matching the obbject trough its id * poetry lock * use openbb field * safe json conversion and trimming * better at finding nargs when union * improved obbject registry using a stack * data processing section * Update argparse_translator/argparse_class_processor.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * fix: remove unused function * fix: terminal.py -> openbb_terminal/cli.py * fix: move local model function to utils & delete module * fix: rename hub_model.py to hub_service.py * fix: delete paths_helper.py, not used * fix: circular import console * fix: move terminal_style.py from plots/ to config, delete plots/ * fix: delele base_helpers.py, function moved to env_handler.py * fix: move custom_prompt_toolkit.py to core/completer * fix: delete requirements.txt, we can export them later if needed * fix: move routines stuff to routines/ * fix: move rich_config.py to core/config * fix: rename parent_classes.py to base_controller.py * Danger: create controllers/ and move stuff * fix: move custom_prompt_toolkit.py to config and delete completer/ * fix: rename custom_prompt_toolkit.py to completer.py * fix: move rouines stuff to folder * ^ oops * Edits * fix: settings import * fix: openbb command * Fix routine record when local user * Lint * Remove quickexit * Fix timezone change * fix data processing commands: not allowing multiple items + need to allow 0 (which evalutes as false) * split comma separated strings into a list so that the cli can consume them * Feature/move terminal files (#6344) * Move terminal files into openbb_terminal * move routines * Create session to handle console, user, settings, etc. * Reset... * Bring back frontend-components * Move frontend-components to openbb_terminal * rename vars * remove doc * rename method * rename method * fix routines * read settings from .env * rename methods * ^ * ^ * better * bug * ^ * move frontend-components back to root level * revert changes * type checking only * docstring * fix: settings autocomplete * comment * use openbb_core singleton * rename src to fix openbb command * fix poetry build * readme --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: tehcoderer <me@tehcoderer.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Clean gitignore (#6347) * provider parameters were being removed bc not in signature (#6348) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * ensure everything on the dataframe is a string (#6351) * move linting rules from pyproject.toml to ruff.toml (#6350) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Empty views on `econometrics` and `quantitative` (#6353) * ensure everything on the dataframe is a string * stringify columns of dataframe * [Feature] - Rename terminal folder (#6349) * rename terminal folder * docstring * Rename to openbb_cli * rename constant * rename .his file * pyproject.toml * Update pre-commit and remove docker-build.yml * Remove OpenBB Terminal from docs page (#6354) * create a title out of the route being used to use it as table title (#6356) * [BugFix] Intrinio EquityPriceHistorical - Return Error Message When Invalid Key (#6357) * return error message when invalid request * mypy * [Feature] - Display command providers (#6355) * fix: avoid calling Session() multiple times * rename session refs * fix: cmd text * fix: avoid Session() * fix: add providers by cmd * fix: timezones --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * avoid range index as it breaks interactive tables (#6360) * [Enhancement] - Sanitize sensitive data from `.cli.his` (#6361) * Sanitize sensitive data from .cli.his * fix long command providers --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * [BugFix] - Remove multiple .envs (#6363) * Remove .envs * Clean menu_text.py * Remove TODO * [BugFix] SEC ETF Holdings - Try Catch for RemoteDisconnect Error (#6359) * try catch for RemoteDisconnect error * await sleep * remove not implemented helper --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] Improve `OBBject` Registry (#6364) * registry belongs to the session instead * help message on results * abstract the update_completer a bit and also force the re-link of newly created obbjects so they're immidiatly available * new settings to control the obbject registry * new method to remove a certain index from the stack * using the new flags to control messages on the registyr * fix: add spaces to results --help * Update cli/openbb_cli/controllers/feature_flags_controller.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * rename to settings_controller * typo wrong attr * better messages and actually removing the oldest obbject --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [BugFix] Remove `Literal[None,...]` (#6371) * remove Literal[None,...] * pylint: disable=unused-argument * change to Filesystem 1K-blocks Used Available Use% Mounted on tmpfs 3257224 3044 3254180 1% /run /dev/nvme0n1p5 491732848 290872352 175808336 63% / tmpfs 16286112 81500 16204612 1% /dev/shm tmpfs 5120 8 5112 1% /run/lock efivarfs 246 66 176 28% /sys/firmware/efi/efivars tmpfs 16286112 0 16286112 0% /run/qemu /dev/nvme0n1p1 262144 60008 202136 23% /boot/efi tmpfs 3257220 15056 3242164 1% /run/user/1000 to avoid misleading linting attr errors * [BugFix] Set Chart Style Before Output (#6367) * set chart style before output * docstring * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] - Fix lowercase symbols (#6342) * Fix lowercase symbols * fix decorator for to_upper * add annotated results with underlying symbol info * ? * Improvements --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * [Feature] Handle repeated non standard arguments (#6366) * remove about message * handle repeated arguments * accomodate all the choices from different providers --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Sync main and develop (#6373) * add snowflake integration video (#6339) * [HotFix] Fix broken URLs in docs page. (#6368) * Fix broken URLs * use full URL to other docs pages. --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] - Fix tests for release (#6372) * Fix user service * fix module import * proper Chart(...) mock * Fix SEC rss * improve test on to_chart() method * Fix form 13F example filing * remove broken example * Add lxml dep to SEC * fix default * fix: treasury_prices default date, last business day´ * fix: linting * fix: rebuild * ^ --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * [Feature] EconDB Main Indicators (#6365) * add main indicators to economy.indicators * static assets * ruff * Adapt and add unit test * record test cassette * polygon test cassette * currency pairs * recapture test * mypy --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Ad 'x-' to json_schema_extra in Fields with unit_measurement (#6376) * add 'x-' to json_schema_extra - unit_measurement * mypy * more mypy * fix pandas warnings (#6375) * [BugFix] Fix Currency Search (#6380) * fix currency search * test artifact * static files * [BugFix] Update SEC pyproject.toml (#6379) * update sec toml * dash not underscore * [Feature] - Redefined standard fields & multiple_items_allowed property changes (#6377) * feat: add field annotation and replace multiple items by dict * comments & details * fix: fix api & update docs website * ^ * remove empty info * descriptions * descriptions * fix reference.json * remove debug code * remove debug code * docstring * docstring * fix: standard fields propagate to providers * comment * better * better * better * better * better * mypy fixes * mypy fixes * reference * cli fix: if the argument is required (aka standard) it means we don't want to touch it, unless choices need to be added * cli fix: touch the help message (with the available providers) only if it's not on the signature (aka standard field) --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: hjoaquim <henriquecjoaquim@gmail.com> * fix fmp (#6383) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Update chart creation so it doesn't break the command execution (#6382) * chart execution to not break the whole call * pylint: disable=broad-exception-caught --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Docs] Upgrade Docusaurus to v3 (#6386) * da3: minor updates * da3: upgrade react 18 * da3: fix md content * da3: upgrade docusaurus 3, fix math in tables * da3: fix DocSearch * put search back * da3: fix details / summary --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] Misc improvements on the Platform CLI (#6370) * section description * remove comment * show msg only if it's an OBBject * ommit coverage from menus * styling: no new lines after settings * Bugfix/cli max rows (#6374) * fix: cli max rows * fix: settings menu --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * add a new line only to separate menus and commands * if there's no menu description on reference.json, use the commands of that menu to create a pseudo description * use the PATH instead in the top of the menu help * default name len to 23 * keep command on the obbject so it can be shown on the results * left spacing regardless description * display cached results on every platform menu's help * display info instead of sections and display cached results * prepend OBB to use on the --data * config to set number of cached results to display * correct hub link * Save routines locally if not logged in. * Change the exit message * Point to new docs on first launch. * proper checking of max_obbjects_exceeded * fix global flag on local routines * Remove language from settings as it is not supported. * Remove rcontext flag * export to account multiple formats * Revert "Remove rcontext flag" This reverts commit8a1f64b71c. * Remove * leftover * properly match provider being used with provider arguments so that kwargs are correctly filtered --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * fallback to to_df() method when results are a string (#6388) * [Feature] - Create repo assets directory (#6384) * feat: create scripts to generate repo assets * move script * publish.md * deletes unmaintained .md files * ruff * pylint * fix: website urls * fix: website urls * rename script * renames * create folder * mypy * PyDocstyle * fix: descriptions & websites * camelCase * change json structure * logo url * reprName * finra * logos * logo * logo * logo * logo * pylint --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Security updates (#6387) * Bump aiohttp to a patched version * Bump python-multipart to a patched version * Bump urllib3 to the latest patched version * Bump aiohttp-client-cache and aiosqlite to latest versions * Bump plotly.js and third level deps in frontend components * [Feature] Remove i18n (#6390) * remove i18n * poetry lock --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] Update CLI dependencies (#6389) * update dependencies * poetry lock --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [BugFix] - Remove unused old code (#6395) * Remove unused old code * Remvove from settings choices * Fix CLI exit when FileNotFound error on routine --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * remove hold command and its references (#6399) * remove hold command and its references * remove --local flag as we don't use it anymore @IgorWounds * reset package folder * reset reference * unnecessary line break removed * fix: alias credentials with uppercase (#6400) * Fix Excel Data Slicer page. (#6396) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [BugFix] - Remove logos (#6404) * fix: remove logos * fix: remove from provider * feat: add extra field * rename * [Feature] CLI README (#6402) * cli readme * Update README.md * suggestions @IgorWounds * [BugFix] - Explicit error message when return type is not an OBBject (#6394) * Send an explicit message when return type isn't an OBBject * Update package_builder.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * lint --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [BugFix] Fix broken `--sheet-name` argument (#6401) * remove hold command and its references * remove --local flag as we don't use it anymore @IgorWounds * reset package folder * reset reference * unnecessary line break removed * better handling of obbjects before printing/table/chart also fixes the sheet_name issue when writing to excel * fix linting; also, dataframe creation in the right place * proper handling of sheet name * orient to columns instead --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * expose error message on request fail (#6406) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Make `paper_bgcolor` transparent in PyWry backend (#6385) * make paper_bgcolor transparent in PyWry backend * black --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * [BugFix] Econ Calendar (#6392) * fix econ calendar * black * more black * pylint * add 1 to n_urls * set default dates in transform query * missing decorator * add None to literal * literals --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Add Forward PE Estimates (#6398) * forward_pe * ruff * merge branch develop * mypy * typo --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] Custom Provider choices available on the `reference.json` (#6409) * change package builder and argparse translator to account for custom chocies defined in providers * default reference * [BugFix] - Replace python-jose by PyJWT (#6407) * fix: replace python-jose by PyJWT * add unit test * add unit test --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * [Feature] Styling adjustments (#6408) * styling adjustments * auto completion for main menu commands; cached results style * move platform settings above * don't check if obbject.results - we want to have the error message if smt goes wrong with the to_df() * register only if there are results * minor style change --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * add platform imgs (#6410) * [Feature] Main README (#6403) * main readme * lints * mention platform cli * test platform imgs * Update README.md platform imgs * break line * Update to Platform images * remove old images --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - OpenBB Platform CLI Unit tests (#6397) * Unit test batch 1 * CLI controller * Test batch 3 * Test batch 4 * Test batch 5 * clean some workflows and setup actions * test * rename wfs * rename * update action * Skip * fix cli tests --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] CLI docs (#6362) * cli docs website * changes * remove unused feat flags * typo * yeet stuff that can't be used * some progress * Add home screenshot * screenshots.md * fix links * new cards for cli pages * start config page * more updates * Add screenshots * flatten some things. * fix link * some more updates * some routine stuff * codespell * cli color * results in the global commands * increase codeBlock line-height * remove platform warning, obb is a class * minor change, danger warning * typo? * Data processing commands --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * add linux stuff to pre-requisites (#6411) * Improve web security (#6405) * Bump aiohttp to a patched version * Bump python-multipart to a patched version * Bump urllib3 to the latest patched version * Bump aiohttp-client-cache and aiosqlite to latest versions * Bump plotly.js and third level deps in frontend components * Bump fastapi to a patched version * Update lock file after the python-jose removal * Update the license of the code in this repo to AGPL (#6415) * Change license to AGPL * Add licensing FAQ to the platform docs * missed unit_measurements (#6416) * [BugFix] - Update GitHub workflows (#6418) * Fix technical example * Remove blocking wf command * rename wf file * rename wf file * fix: gh pages wf * gh pages * pip install toml * toml * activate venv? * activate venv? * simpler? * ^ * install toml in venv * install the full project first * Update poetry after venv * setuptools & venvs * install requests instead * package-lock.json -> yarn.lock * wf name --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * [Release] 4.2.0 (#6420) * add snowflake integration video (#6339) * [HotFix] Fix broken URLs in docs page. (#6368) * Fix broken URLs * use full URL to other docs pages. * remove nest_asyncio.apply() * fix: sort tradingeconomics country choices * fix lint * fix: clean _callback function * assign to empty dict * feat: add licence to .toml files * fix: readmes * fix: add CLA url * release: 4.20 % dependencies * Skip deprecation test * lint * Sync with main (#6421) * add snowflake integration video (#6339) * [HotFix] Fix broken URLs in docs page. (#6368) * Fix broken URLs * use full URL to other docs pages. --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * pylint disable possibly-used-before-assignment * Update CLI toml --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * [BugFix] - `dev_install.py` updates (#6424) * fix: use tomlkit instead of toml & add --cli * fix: remove cli option, poetry groups ignored by pip * fix: redirect unittest patch * adding --cli to the dev install --------- Co-authored-by: hjoaquim <henriquecjoaquim@gmail.com> * [BugFix] Clear Linting Items (#6423) * fix some linting items * pylint stuff * black * index_snapshots * ruff * forgot to add this file to commit * black * [BugFix] Do Intrinio News TO-DOs -> Remove workaround because they fixed it. (#6427) * TO-DOs done * recapture test cassettes --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Small CLI docs style improvements (#6429) * use platform cli everywhere * cli w same color as platform * same colors as platform * fix tests * fmp key metrics (#6428) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] OpenBB Platform DevContainer (#6426) * devcontainer and its docs * typo * remove file * remove comments from json * [BugFix] FMP Screener - Convert sector param choices to lower_snake_case (#6432) * sectors as lower_snake_case * pylint disable unused-argument * fix tests * workaround for pytest * benzinga alias * sec form types with spaces * fmp insider trading * pylint disable unused argument * [Feature] Balance Of Payments For FRED (#6431) * add balance of payments to FRED provider * gotta commit the init file * unused import * mypy --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Improve Exception handlers (#6430) * feat: modify error handlers * fix: clean python errors * fix: return error kind * fix: clean decorator * fix: query validation error kind * fix: no kind, API * fix: no kind, python * fix: rename error * lint * update docs * comment * typo * rename handler * rename base handler --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * use shlex for spliting the user input (#6436) * fix: only update credentials on login (#6437) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * remove space from literals (#6438) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Deprecate `etf.holdings_performance` endpoint (#6441) * ignore the env created on the dev container (which lives inside the project folder) * broken urls * remove endpoint * empty file * deprecate * ruff * [Feature] Forward EBITDA (#6433) * forward ebitda * codespell * sort intrinio output * get * list instead of dict --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Compare Company Facts (SEC) (#6444) * stashing * more stashing * add tests * black * test params * mypy * more mypy * grammar police * grammar police * add bs4 to sec pyproject.toml (#6440) * [BugFix] Bump anyio & sync pre-commit, openbb-devtools and GitHub workflows (#6443) * fix: update anyio & ruff * fix: ruff updates * remove TODO * lock cli * bump black * fix: lock sec * fix: sec test * fix: replace toml with tomlkit in test * Remove xlsx export from CLI's interactive tables (#6439) * Remove excel export from cli interactive tables code * Remove vulnerable dependency * Remove posthog from interactive table html template * Incorporate additional styles to the index.css * Update the deploy command * Update the built static file and deploy script --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Remove PDF export capabilities (#6442) * Bump black in devtools and pre-commit * Remove pdf export functionality from cli and charting extensions * print message only if the file was actually created * Update css to use fonts from google * Bump bundled plotly js version * Bump dependencies * Update static html of the charting extension to use the new plotly * Update lock file hashes --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <henriquecjoaquim@gmail.com> * fix: add back api.dockerfile (#6449) * Update requests and idna to patched versions (#6448) * Remove dev dependencies section from cli * Remove anyio pin as it's brought in by others * Bump idna to patched version * Bump requests to latest * [Feature] Government Yield Curves + Chart (#6417) * stashing * ecb yield curve * field_description * federal reserve yield curve * econdb yield curve * countries literal for python 3.9 * list date * fmp yield curve * fred yield curve * integration tests * chart integration tests * static assets * black * ruff * pylint * more pylint * more pylint * now black * country not a standard param * mypy * merge branch develop * add more countries * econdb date filter * mypy * future linting * make to_chart work * plot_bgcolor should be 'rbga(255,255,255,0)' * push deprecation * push deprecation --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: hjoaquim <henriquecjoaquim@gmail.com> * [BugFix] Revamp the usage of list syntax on routines (#6450) * using list syntax on routines * black * ruff * simplify * black * fix: move api.dockerfile (#6454) * [Docs] Refactor Docs Pages For Diataxis (#6315) * This change creates a PR * start moving stuff around * data_models/_category_.json * reference/_category_.json * moving some stuff around * Introduction * Documentation updates * few broken links, clean up sidebar titles for how-to * codespell * quickstart - new provider extension * add a comment * map provider interface * quickstart for new router extension * [Docs] diataxis refactor refactor (#6425) * Start refactor * Edits * [DOCS] Reorganize and edit. Fix sidebar navigation (#6445) * Reorganize and edit. Fix sidebar navigation * Fix broken linkages * Edit --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix links --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Fix broken links * Reword CLA part in the Licensing FAQ * change titles and order suggestion - cc @IgorWounds @piiq --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> Co-authored-by: hjoaquim <henriquecjoaquim@gmail.com> * [Release] 4.2.1 (#6453) * add snowflake integration video (#6339) * [HotFix] Fix broken URLs in docs page. (#6368) * Fix broken URLs * use full URL to other docs pages. * [Release] 4.2.0 (#6422) * [Docs] Remove Reference to `to_chart` in OBBject. (#6096) * remove reference to to_chart in OBBject. * put chart description back in OBBject properties * [Feature] - Create openbb assets folder (#6101) * create openbb assets folder * fix unittest * rebuild --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fixes to_df() where the date series contains multiple TZ-offsets. (#6099) * allow mixed utc offset in a tz-aware date column * enforce ascending from all providers for price.historical * fix tests * add comments and apply treatment to basemodel_from_df before JSON output * yfinance consistency * add unit test * add unit test * better test * ruff --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update the quantitative extension to make more sense (#6087) * Split out a rolling submenu for the rolling functions * Make a performance and a stats submenu. * Test the statistics functions * lint * lint * dupe test * pylint * ruff * Try tests quick * black magic signature funcs * fix my custom tests * Fix the existing imports/urls * push the api update * okay I figured out whats going on * this should be all of them * Correct docstringing examples --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Fix ECB Yield Curve (#6108) * fix ecb yield curve * standard model update * Update unit-test workflow to check for changes to openbb_platform (#6109) * [Bug fix] - Fix package mypy (#6110) * fix: package mypy * types * black * [Feature] - Equity router descriptions & examples (#6103) * feat: equity/calendar * feat: compare router * fix descriptions * darkpool + discovery * fix paragraph issues * fix descriptions * fundamental part 1 * fundamental part2 * transcipts * ownership * fix * price * shorts * Update darkpool_router.py * minor fix * shorts examples * examples * ruff * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Add `exception_handler` decorator to static (#6112) * add exception handler decorator * add exception handler decorator code * updated static * rebuild to fix docstring indentation --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * update extensions list (#6114) * add missing field descriptions to yfinance equity price historical (#6116) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * remove charting extension env var (#6118) * [BugFix] Fix Company News (#6111) * fix company news * update tests * multiple symbols for polygon * don't include pageSize in Benzinga querystring, fixed as 100 * remove extra space * black * unused imports * make benzinga test cassette smaller * missing params * clear empty strings --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Allow Multiple Symbols in `equity.fundamental.metrics()` from `yfinance` (#6124) * allow multiple symbols in key_metrics from yfinance * field order thing * remove unnecessary function (#6125) * [Docs] Update OpenBB Copilot docs (#6106) * WIP: Tweak description. * WIP: Experimenting with react-player * WIP: Add copilot docs. * fixes videos width/height * WIP: Refine videos and copy. * WIP: Add last videos and sections. * Add bring-your-own-copilot section. * Tweak grammar. * Add copilot link. * Fix typos. --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * [Enhancement] Add Previous Close to DATA_DESCRIPTIONS (#6120) * add data description for previous close * ..just the one * update the model tripped by this change --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * added australia as a country also (#6131) * [Bug fix] - Fix regulator cik map standard model (#6129) * Fix regulator cik map standard model * fix description * Update cik_map.py * increase timeout to 30 (#6115) Co-authored-by: James Maslek <jmaslek11@gmail.com> * clean up some v3 deps (#6105) * clean up some v3 deps * forgot we need to do the requirements txt files * not sure it matters, but run ruff + black * am addicted to bug fixes --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Bug fix] - explicit multiple items docstring (#6127) * explicit multiple items docstring * rebuiild * rebuild again --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] Pretty Pydantic `ValidationError` exceptions (#6130) * fix validator in fmp IndexHistorical model * make ValidationError pretty * modify arg error * linting fmp IndexHistorical * black * remove unused code * tmx etf info (#6132) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] - Platform V4 Markdown Generator V2 (#6094) * add recent `openapi.json` * fix data types in models * removed `openapi.json` * set default date value as None in PolygonCurrencyPairs class * add function to generate reference.json file * reworked function to improve readability * reword function to add seo metadata * add functions for creating markdown sections * add code to extract data card markdown title * add additional functions for generating index and data models file * extract first sentence of the description for cards * code cleanup and documentation * linting * linting polygon models * add openbb import statement in create_reference_markdown_examples function * add POST method functions * cleanup; reworked generate_reference_index_files function * moved development section to 7th position in the sidebar * fix POST function params default value add standard flag to QueryParams and Data fields cleanup * add type expansion from package_builder.MethodDefinition * sort data models cards alphabetically make printing less verbose * make MAX_CARDS global display less content in cards in Commannds section * cleanup * Remove '_' from the cards under Commands section * " to ' in econometrics/causality * replace ' with " in ReferenceCard for reference dir index files * remove extra . from the quantile function description * shoutout to @deeleeramone for finding POST method description bug! * set correct value for standard field * handle BaseModel types in provider data fields * unit tests for the platform markdown generator v2 * yeet 'Default' and 'Optional' columns in the 'Data' section * last minute bug fix * add info for multiple symbols * make multiple items info same as platform static * organize sections properly * sort reference sub-directories alphabetically * extra space in 'OBBject extra' description * add type expansion for fields with multiple items POST method cleanup --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Docs] Adds Example Notebook for the Implied Earnings Move (#6128) * adds example notebook for the implied earnings move * remove commented out line --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] - Sync with new openapi.json (#6137) * feat: create data tabs * fix: uncomment * fix: remove unecessary comment * sort side bar * comment * uncomment * use .dev functions.json + clean traverse * fix futures example * fix example * point to .co * Fix the v3 markdown generation workflow (#6138) * fix workflow * debug time * see if the docs generate at least * ahhhh i found it * getting there * put the test first * some keys cleanup * small change to error message * update functions.json (#6140) * fix intraday check in charting ta_class (#6119) Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * [BugFix] Display EconDB as source for macro (#6143) * [BugFix] Disable Intrinio `InstitutionalOwnership` model (#6142) * disable fetcher in init and fetcher tests * disable provider test params from equity python and api tests * updated static * add more examples into findSymbols (#6139) Co-authored-by: James Maslek <jmaslek11@gmail.com> * [BugFix] Fix SEC ETF Holdings Parsing Exception (#6121) * fix etf holdings * linting * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/update xl docs (#6145) * remove print * update obb.get docs * example * md lint * fix get reference (#6147) * [BugFix] Filter OECD data using `start_date` and `end_date` parameters (#6144) * move constant dicts to constants.py filter by start_date and end_date * black * black again again * Merge 'main' into 'develop' (#6151) * Release/3.2.4 (#5696) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * 3.2.3->3.2.4 * Changelogs * new changelog --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Andrew <andrew.kenreich@gmail.com> Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Luqman <luqazino@gmail.com> Co-authored-by: Adwait <111136306+AdwaitSalankar@users.noreply.github.com> Co-authored-by: Abhishek Amar <66067391+abhishek-amar@users.noreply.github.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Ramazan <guvencramazan@outlook.com> Co-authored-by: joshuabuildsthings <joshuabuildsthings@users.noreply.github.com> Co-authored-by: wojda <114031148+polooner@users.noreply.github.com> Co-authored-by: Bim Phomthong <118195204+bimbolimbo@users.noreply.github.com> * Release/4.0.1 (#5840) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Release/3.2.4 (#5704) * 3.2.3->3.2.4 * Changelogs * new changelog * OpenBB Platform v4 (#5225) * change location * check something * add cache * fixed auth w/@IgorWounds and @montezdesousa * fixes for econometrics * include Darren auth suggestions * some routers included if dev + chg hub backend var * coverage router should not be here * update docker readme * forgot to check auth here * Change extension imports * update docstrings and readme * headers function wasnt being called, just referenced * relative import * econometrics add headers everywhere * Fix QA * Fix TA * Fix test * Fix python interface QA and TA * Lint * Cleanup * Change path * make the changes and some etf models * tests for command_runner * ruff * solving naming issues on pytest * Update some docstrings, fix typos and lint * solving econometrics instantiating wrong openbb * chaging the way pytest runs * messing around with the imports * ruff * Change template to add platform considerations (#5533) * change template to add platform considerations * @the-praxs suggestions * solving __pycache__ issue * removing typo * ci yml * making linters happy (i guess) * Improve Omega Ratio and docstrings * chaging pro validation hash * ruff * Fix OLS Summary and lint * Add OECD Provider for economy extension (#5534) * Add record to docs * update a couple of cboe models * Fix econometrics bugs. Make tests pass. Lint. * black * ruff * pydantic v2: remove deprecated Extra * pydantic v2: self.dict -> self.model_dump * revert pydantic * revert the revert * try 1: pin urllib3 < 2 * Revert "try 1: pin urllib3 < 2" This reverts commit3736c311cb. * Revert dep * Fix * re-lock * Skip all tests when doing cspell in pre-commit * Resolve linter errors * Add OECD to install script * Add OECD * Resolve more linter errors * Exclude static files of v4 python from ruff * More linting * Another attempt to resolve even more linting errors * Change how Literal is used * ticker. symbol. consistent. @piiq * change ticker field in Stock Search to is_symbol * Update Cboe model for stocks_search -> is_symbol parameter. * Fix issue * Lint * Small QA to rename SDK to Platform (#5544) * SDK -> Platform in docs * renamed in core * renamed in openbb `init` * `sdk` variable renamed as `platform` --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * `validator` -> `field_validator` in standard models * Standard convention for multi-ticker symbols (#5549) * standardize symbol input param in forex and crypto historical data * static * linting * Fix stock_search integration test params * Update dependencies and linting on the CI (#5550) * Remove ruff and black from platform dependencies * Update codespell configuration * Lint python code * Add toml and tomli to root dev dependencies * Update requirements.txt files * Fix buggy docstring in python package methods (#5548) * fix buggy docstring for methods * remove space * fix typing * avoid name collision with validator * Revert "avoid name collision with validator" This reverts commit8a30a44555. * typing * rebuild * python 3.8, ParamSpec not available * lint * ruff noqa * Merge with develop (#5551) * Charting extension integration tests (#5547) * initial proposal for integration tests on the charting extension * int tests for charting generation * python generator * ruff * boilerplate templates * python tests * tests for the api * using body instead so data don't get redefined * unit tests for coverage * ruff * docstrings * unnecessary access to keys() * Add trading economics economic calendar * dev install * Data Models disposition on the website (#5538) * pydantic v4 * flat structure * md files * Revert "md files" This reverts commitbd2170e2ad. * improve command descriptions * nice title and description * human readble data model names on left panel * implementation details section * content markdown files * markdown versioned files * showcase page * updates --------- Co-authored-by: tehcoderer <me@tehcoderer.com> * everything except tests * fix `datetime.date` import in fetcher test * modified url to remove `api_key` placeholder * record test * api key is called c here * fixed fetcher test for api key * recorded tests * refactor * life is ruff * codespell * Make Intrinio options chains great again (#5540) * add multithreading * cleanup * linting * use dateutil.parser * removed `TICKER_EXCEPTIONS` * modified `date` and `type` fields in standard model * set alias for `date` and `type` to match standards * static * static * Hotfix/fix post tests (#5555) * Fix econometrics * Fix ta * Fix qa. Remove intrinio to not be rate limited * Lint * Fix typo * obbject tests (#5558) * obbject tests * ruff * fix dev_install * fix unittests * black on nox * black on nox * nox * fix fetcher test so it can compare dates * fix intrinio tests * ruff * change to model_dum() instead (#5561) * Passing tests (#5560) * Passing tests * fix options * Fix most tests and bugs * fix forex missing params * make symbol upper in polygon fx pairs * fix fixedincome integration tests (#5564) * Fixing charting api integration tests (#5562) * fixing charting api integration tests * black * fix stocks less five API fails * fix the 5 failing stocks integration tests * recapture fmp stock news unit test * fix fmp forex api test * couple more forex integration fixes * changing the request to always use the legacy session. @jmaslek this is was broken for 3.8 and 3.9; with this change apparently all versions work - lemme know if you see any issue with this change * ruff * fix ta * add missing param * fix testers for the api * fix globalnews to use images instead of image * remove unncessary pandas import * econcal int tests * update gitignore * fix get_querystring to support lists * add missing parameters --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * Stock Historical standardization and UX improvements (#5457) * polygon add interval standard param * attempt at standardization * Alpha Vantage params standardization * rename `get_intervals` and fixed bug for extracting wrong value * missed changing it in `extract_data` * linting * polygon cleanup * modified `start_date` & `end_date` type to `datetime` from `dateType` * standardized intrinio stock historical params * fixed yfinance * linting * revert start and end date to dateType from datetime * fix alpha vantage * changed param * fix intrinio infinite loop * `validator` is `field_validator` * revert time params and fixed intervals * `outputsize` alias set in `Field` * set interval description using in-build dict * yfinance stock param standardization * static * intrinio cleanup * Polygon add api params as `PrivateAttr` * modified yfinance params to `PrivateAttr` * intrinio remove overriding date params * fixed description for AV adjusted param * fix alpha vantage intraday not working * re-record and pass unit tests * pass integration tests * Update test --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix econcal endpoint (#5567) * fix econcal for python interface * fix econcal tests * fix non supported json output * Fixes FMP index endpoint to get 1 day interval data (#5535) * fix FMP endpoint for getting index data for `1day` interval * fix `open` type to prevent validation error * modifed `validator` to `field_validator` * type of fields is `StrictFloat` * re-record and pass test * linting * `validator` -> `field_validator`, a3'd everything * Fix regression in tests. Lint * updating the integration test actions * Fix typo * Fix typo * Fix import * Publish versions `a3` to Pypi (#5568) * bump versions and script to publish * small improvements * uncomment exception * openbb * publishing guidelines * improve docs * add providers to economy api * make symbol required in stock_quote * Fix keys * Fix oecd * add comma * revert * Add quotes * Sleep * Improve tests * Improve * Feature/query transform (#5566) * inject query into transform_data * swap query and data * update missing fetchers * last test failing * sig test fetcher * black * av add `query` to `transform_data` call * transform_data: missing refactoring * fix uvicorn command in the doc * Automated examples (#5576) * Automated examples * Fix bug * Lint * static assets built on 3.8 * Revert "static assets built on 3.8" This reverts commitfb82ff7bd9. * remove assets * static assets on 3.8 * static assets on 3.8 * Wrap in quotes * Improve wrap * minor fix * rebuild 3.8 * Fix bug * Fix edge case * Lint * rebuild --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * use SecretStr for sensitive fields (#5578) * use SecretStr for sensitive fields * fix * docstring * Add tests for provider (#5583) * Add tests for provider * Test standard models * Lint * Fix standard model issues. Co-authored-by: @the-praxs * linting * `symbol` -> `is_symbol` in `economy.index_search` * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * feature/v4-biztoc-provider: Adds Biztoc provider and GlobalNews (#5546) * add biztoc provider * duplicate field * black * request headers * recapture test * move stuff around * add integration tests * duplicate OECD entry in dev_install * duplicate entry for oecd in pyproject.toml * Add Biztoc to workflow * update readme: credentials * Add Preferences to README * improve tests * fix biztoc * obbject pylint * Bug fix: serializ SecretStr before dumping to json * export credentials as json (#5592) * Check for wrong, changed, or outdated params. (#5597) * Improving `economy.cpi` for the FRED data (#5602) * remove multiindex using coding magic * Update field descriptions --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Improve error message. * Improve * Test tests (#5607) * Test tests * Add test * 4.0.0a4 PyPI publishing (#5608) * changes to publish * fix mini conflict * typo * cleaned `descriptions.py` * fix description in `cpi.py` * Add ETF extension to v4 (#5609) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add ETF historical price from yfinance (#5610) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add etf historical price standard model and route * Add etf historical data from yfinance * Add unit tests * Fix linter error. Organize imports * Update test data * Revert common descriptions erased by CPI PR * remove `symbol` from data for `stocks.ca.peers` * Test docstrings (#5613) * Test docstrings * fix minor bugs w/@IgorWounds * static only w/@IgorWounds * fix `importance` param in `economy.econcal` * right static only w/@IgorWounds * Fix econcal and add tests to noxfile * fix econcal static * re-record --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Clean up the newly created ETF extension (#5611) * Add ETF to dev_install bundle * Add integration tests for openbb-etf * Patch integration test generator scripts to produce lintable code * Add py.typed markers for extensions * user preferences descriptions (#5593) * user preferences descriptions * typo * Feature/v4-sec-provider: Add SEC provider to V4 (#5556) * coerce string type, add default=None * add sec provider and FTD function * update description * ruff * data model definitions in standard model already * duplicate oecd entries in dev_install and pyproject * actually commit * integration test * add stock search to SEC * add company filings for SEC provider * integration tests * remove duplicated line * ruff * **kwargs in Transform Data * some helper functions for later * black * add helper for mutual fund and etf lookup * add some SEC lookup helpers to a new regulators extension * black * ruff * fix test param * take institution filter out of sec stock_search * ruff * remove URL that codespell doesn't like * add cik-to-ticker map * add litigations rss feed * make openbb-regulators a dependency of openbb-sec * add SIC search * improve ftd and remove BeautifulSoup from SEC dependencies * fix parsing the zip files pre-2009 * ruff * update descriptions * recapture ftd test * tests params * typo * change limit param to 1 in test_sec_stock_ftd * Add didiers to_records method (#5588) * Add didiers to_records * unused import * Bring back polars + do what igor suggested * Make the output consistent with what it was. * Black ? * spelling. oops. almost like we have a pre commit or something * Feature/v4-price-performance: % returns for various horizons, comparable across multiple tickers. (#5618) * coerce string type, add default=None * add price_performance endpoint from FMP * black * extra period in docstring * ruff * forgot one file * Feature/ipo-calendar: V4 IPO Calendar (#5605) * coerce string type, add default=None * add intrinio ipo calendar * fix typo * sort __init__ * fix description * make requested changes * update test params * black * test updates * etf integration * Add disc router and WSJ provider * OBBject extensions (#5612) * changes to core * bug? * docstring * doc * Update credentials.py * fix model_dump * create extensions * fix docstring * doc * revert change query_exc * doc * fix container test * redirect obbject test patch * doc * rename method * move decorator to extension file * rename method extend_obbject * changes in creds model * avoid credential racing * doc * rename prop * doc * doc * remove comment * comment some code * free extension names * docstring * doc * docs * Hotfix/fix-v4-economic-calendar: Add FMP to Econ Calendar and fix some TE bugs (#5580) * coerce string type, add default=None * adds fmp to economic calendar and fixes some things with TE * ruff * etf integration test * missing provider for test * rename te cassette to economic_calendar * fix test * rename tests --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Add stocks disc endpoints (#5630) * Add stocks disc endpoints * Explicit * Lint * Add tests * Bump timeout * Feature/disc router (#5616) * Add disc router and WSJ provider * Lint * Lint * Move endpoints under ETF router * Update etf_performance.py * Add ETF info and sector exposure from FMP (#5620) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Fix linter errors after the merge * Fix more linter errors * Fix failing and add missing tests * Fix integration tests * Fix calendar ipo tests * Add ETF holdings and holding report dates from FMP (#5629) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Add etf holdings and holdings date routes and standard models * Add fmp holdings and holding dates fetchers * Update holdings fetcher to properly handle date object inputs * Add unit tests * Add integration tests * Black after merge * Fix test input data format * Disc router for equities. (#5640) * Disc router for equities. * add tests * Bug fixes in financial statements (#5537) * `validator` to `field_validator` in standard models * Polygon add `ttm` to `period` param * Revert "Polygon add `ttm` to `period` param" * Polygon add `ttm` to param `period` * `EarningsCallTranscript` standard model removed `quarter` param * use `tag` instead of `name` for correct field name * fix url for intrinio income statement * modified intrinio cash flow `transform_data` function * set optional data fields and validate dates * fix insider trading not fetching recent data * linting * refactoring * refactoring * set param alias in fmp stock insider provider model * get all quarter data for intrinio * add `limit` param to `stocks.fa.ins` * refactoring and linting * removed additional comment * linting * re-recorded and fix tests * cash flow standard model field type to `StrictFloat` * Intrinio cash flow model fixed to get all quarters' data * linting * refactoring * financial statement standard model field type to `StrictFloat` * Intrinio financial statement model get all quarter data * set `period` type to `Optional[str]` * add `period` param to balance sheet provider models * add `period` param to cash flow provider models * use alias in model dump * remove `ttm` from `period` param * revamped intrinio financials * fixed incorrect description for `limit` param * modified tests for `balance`, `cash` and `income` * re-recorded tests * skipped intrinio financial statement fetcher tests * Add ETF county weighting command with FMP data (#5645) * Remove code that wrongfully infers the filing date as end of quarter * Add etf countries command with fmp data * Add countries command to etf router * Update sector and country weighting fmp models * Fix docstring typo * Add unit tests and update mock data * Add integration tests for etf.countries * Bring back missing integration tests * Fix economic calendar integration tests * fix missing data in intrinio financials * removed inutile params from Polygon financial statement models * Intrinio IPO overhaul * tests fixed and re-recorded * Add ETF holdings performance with FMP data (#5659) * Add etf holdings performance endpoint * Add tests * Fix failing polygon fetcher tests * Split long holdings lists into chunks and update test data * Change chunk length to 500 tickers * Add stock search from FMP (#5642) Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Feature/v4 pypi (#5579) * improvements to the publish script * move scripts * initial script that builds the package * adjustments on the docs * test pypi workflow * add hour and minute to version * black * ruff * duplicate file * moving files instead * build throught the script instead * update nox file * integration tests workflow * change workflow * fix dev_install * fix in sed cmd * testing the platform only * commenting out the publishing * fix run commands * improvements to the publish script and doc * fix publish script * updating the script and the workflow * feature/v4-pypi nightly (#5589) * init * Update nightly.py * cleanup * init file * not referencing dev_utils * updating obb platform key * revert * Increase warmup time * project name on pyproject and adding the --pre flag on readme * moving to the build folder * fix noxfile * reflecting the moves on the import statements * fix pyproject path * ruff * fix paths * fix super typo * update workflows * moving the pypi terminal files into its folder --------- Co-authored-by: teh_coderer <me@tehcoderer.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * economy.calendar nasdaq (#5628) * add quandl econcal * unittest * add integration tests * replace   * fix bug TE importance * small fix * remove stuff from quandl * add nasdaq provider * add nasdaq to install files * Update test_economy_api.py * test * quandl leftovers * remove quandl econcal test * lint * replace   * ruff * lint * update nasdaq gmt * validate countries * here * no need for this * fix calendar tests * static * static * remove error * static * readme + website * readme * remove changes TE * typo * fix unittest * fix tests * Update __init__.py * Update economic_calendar.py * revamped model and added helpers for date range --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Feature/v4-dividend-calendar: Adds Nasdaq dividend calendar and moves the command out of fundamental_analysis (#5672) * add nasdaq dividend calendar and move out of fundamental_analysis * black * ruff * add random-user-agent to pyproject.toml * add nasdaq ipo calendar * add nasdaq flag for SPO to IPO calendar * add spo test param * black * dividend test * fix transform_query - nasdaq_calendar_ipo * bring back different headers for ipo calendar * remove references to test * Add disc endpoints (#5660) * Add Quandl top retail * Add tests * Add Seeking Alpha * Add Filings * Change Provider * Fix test * Add dev_install * static * static correct * y u forget me * updated deps * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * using dev install (#5673) * Expanding the `fixedincome` menu (#5655) * models and fetcher * making the fetcher visible * std model * adding the command * improvements to the models * typo * adding the command * imrpovements to dwpcr * standard model for ecb int rates * adding the fetcher for fred * standard model of ice bofa * add ice_bofa command * ruff * ice bofa fetcher * moody std model * moody * std model * add cp command * unused import * cp * spot * ruff * hqm * tmc * ffrmc * tbffr * ruff * typing fixes * buggy dates * fred fetcher tests * ruff * adding ecb as a provider * adding new provider related stuff * adding the new command eu_ycvr * models * test for ecb fetcher * Feature/v4 fixedincome int tests (#5661) * integration tests * happy ruff * mini adjustment * ruff * typo * verbose type * fix tests * docstrings everywhere and an happy pydocstyle * fix tests * Feature/user-cache-dir: Add User Preference for the Cache Directory (#5621) * add user preference for storing cached data * ruff * fix tests? * fix test key error..? * etf integration test fix * add cache dir to SEC * black * improve docs structure for V4 (#5586) * improve docs structure for V4 * moving over changes * Add Docs to the navbar * add some, re-order sidebar * fix sentence * add docs install to source instructions * insert a couple of links, fix a typo * big terminal docs usage revamps * improve toggle component for tutorials * get rid of TOCs for all terminal docs for consistency and simplicity * improve platform docs * improve bot docs content structure * remove index from bot docs * improve ON THIS PAGE to only display TOC if at least 1 element * make edit this page text and icon on same line * add author and date to docs * add basic syntax page to usage * sidebar order for usage section * move api start command to the top with the import python import * some install page additions * small improvement * refactor routines section * Update introduction-to-routines.md * Update pipeline-of-commands.md * Update introduction-to-routines.md * Update routines-for-power-users.md * Update community-routines.md * update keyboard hotkey macros * askobb page * Update askobb-feature.md * Update index.md * Update index.md * Update index.md * Update index.md * fix images * remove HeadTitle from all files where it exist * get rid of extra spacing in markdown * small update * small edit * need index at the start because of main path when homepage of docs * use openAI to create SEO for front matter on my behalf * remove table of content from sdk page * finish improving metadata SEO for SDK docs * update duplicate header * update HeadTitle to be more specific on product * remove index from bot telegram reference * delete duplicated title for platform reference * another update * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * start PR so screenshots can get attached via GitHub website * Update qa.md * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * Update crypto introduction.md * titles * another title * Update crypto dd.md * Update defi.md * Update disc.md * Update nft.md * Update onchain.md * Update ov.md * Update introduction.md updates URL * Update introduction.md add HeadTitle * Update ba.md * Update comparison.md * Update dark-pool-shorts.md * Update disc.md * fix docs (#5646) * Update fa.md * Update gov.md * Update ins.md * Update tradinghours.md * Delete website/content/terminal/menus/stocks/options/screener.md * Update Options introduction.md * Update screener head title * Update screener TOC * Update econometrics.md * Update economy head title * Update etf.md * codespell * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Contributing guidelines (#5615) * intro section * what's expected sections * improve sections * improve sections and move how to add a data point * moving qa under contributor * better intro * moving the sharing section * better expectations * small intro to the contributor guidelines * moving things under the contributor section * there is no pre commits on the platform yet * dependency management * best practices for extensions * typo * collapse options subfolder * codespell * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update fixedincome.md * url * Update forecast.md * Update settings.md (#5665) * Update forex.md * fix front matter (#5667) * Fix conflict markers that got into markdown during previous merges * Fix front matter list formatting * Fix typo * small thing * fix hyperlinks * Update .codespell.ignore * output_type options * Architectural considerations * Update sidebar to hide pro section by default * Minor copy changes * TET pattern * import statements * clarification on preferences * Minor copy changes * Lint markdown and python * fix: open index on collapsible root elements * remove old content * options title * Fix linting errors * Refactor sidebar label to url mapping condition --------- Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Add multi-ticker support to etf_countries (#5670) * add multi-ticker support to etf_countries * remove commented-out lines * normalized percent points * percent -> percentage * Fix Nasdaq Econ Calendar Fetcher (#5668) * fix nasdaq econ cal request * more html tags * add random-user-agent to pyproject * another edge case - 24H -> 00:00 * Feature/v4-unusual-options: Adds unusual options endpoint. (#5677) * add unusual options fro Intrinio * test params * move sorting * Change type * update FMP fetcher to use the V4 endpoint (#5681) * Fix price performance not parsed correctly when there is only 1 ticker (#5678) * Add crypto search standard model and FMP data for it (#5679) * Apply renaming to news data (#5684) * inegration complete * reformatted for black * fix ruff issues * revised integration * changes to versions in pyproject.toml and updated lock files * Rename models * Update tests * Fix typos here and there * Update routers * Apply rename to ultima * Properly mock api key * Mock ultima api key --------- Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> * Feature/v4-market-snapshots: Adds full market snapshots (#5473) * add stocks market snapshots from fmp * add fmp fetcher test * unused imports * add polygon to market_snapshots * update fmp market_snapshots * black * pydantic2 things * updates * change validate_obj to model_validate * polygon cleanup * tests * descriptions * black * data description * minor adjustments, using less local variables, improving readability and removing pandas * better structure * minor adjustments * lint * fix int tests --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Add NBBO Quotes, with historical, to `obb.stocks.quote()` (#5617) * coerce string type, add default=None * add polygon stock quote * limit cleanup * add greater/less than to params * limit param * black * tests * fix tests * test_etf * rename model and function to NBBO * add standard model for nbbo * improve standardization * not redifining builtin max * fix input params * integration test params * removing unused import Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * revamped code * re-recorded nbbo test * added symbol validator * added alias in field * Stock news -> Company news --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * hotfix/update-quandl-to-nasdaq: Merge Quandl + Nasdaq (#5682) * merge quandl nd nasdaq * dev_install.py * test param name * economy python integration test * Add more input types to data processing commands (#5453) * adding more supported types to data processing commands * ruff * removing unused import * docstrings * data processing types covertion * data description * test filters * ruff * fix package builder tests * ruff * removing print * Add stocks/dps module (#5638) * short volume * pyproject missed * add sec short interest with days to cover * Add FINRA OTC endopoint * some tests * rest of unit tests * Integratin test scripts * dev install * linters caught by pre commit * lines too long * Last test files * maybe it needs a lock file? * thanks pratty * Maybe ill actually listen to pratty next time * sec test date freeze * I cant hit buttons * re record tests * tests 3 * Stockgrid test * regen int test * more testing * lint * moved these fns * dis killing me * one more test * last one * Update integration tests * Fix tests picking up wrong dps route --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename Forex to Currency (#5687) * restore fields as optional (#5686) * Rename Crypto (#5689) * added `crypto.price.historical` * static * fix tests * fix incorrect label * Move model from sec to finra (#5692) * Update toml * fixed deps * add openbb-etf lock file * cleanup * cleanup (#5694) * Rename Fixed Income (#5695) * Rename Fixed Income * Add routers * Rename stocks to equity (#5688) * Rename stocks folder * Rename openbb_stocks package * Rename routers * Reroute equity menu * Update routes based on feedback * StockNews -> EquityNews * StockInfo -> EquityProfile * Rename Equity calendars * Equity peers rename * Rename discovery * Rename fundamental * Rename price command models * Rename shorts * Update charting router * Fix seeking alpha upcoming release date * Fix linting errors * Update tests * Fix tests * Skip econometrics api tests because it's python only * Update integration tests and test data * Historical analyst estimates * Skip cboe options chain test. Unable to record vcr cassette * re-record cboe cassettes * Document CBOE unit test creation caveats --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Feature/files-for-igor: Adding a few standard models for Igor (#5699) * add some standard models for Igor * codespell * update descriptions * Add devtools metapackage (#5703) * Add openbb-devtools metapackage * adding devtools to the dev_install script --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Rename econometrics commands to be more verbose (#5702) * Expose command to model map (#5706) * Rename ta qa (#5708) * Rename ta folder * Rename ta to technical * Rename qa folder * Rename qa to quantitative * Rename the actual routes in quantitative * Equity cleanup (#5707) * cleanup * static * renaming to equity cc @the-praxs * Proof reading --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Don't enforce imperative for first word of the docstring * Remove ultima from default extensions * Rename `economy` and create `index` extension (#5705) * renamed economy and re-recorded tests * static * market indices * european indices * fred indices * index constituents * tests * correct package name * oops * static * linting * Move COT commands to regulators * Rename economy.list to available_indices * Rename GDP models and clean up * Fix charting tests * Drop _indices from available_indices command * Fix obbject to_dict test --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename etf/disc (#5715) * Docs/v4-working-docs: PR to Work on V4 Docs (#5693) * Revert changes related to pydantic2 made into v3 code * Revert fred model changes in v3 * Revert pydantic2 databento model changes in v2 * Update some names and v3 lock file * Clean up openbb/package before the beta release * Platform publishing procedure (#5701) * update instructions * introducing the version script * publish message * fix platform path * reflecting version changes * getting version from installed packages instead * removing toml from dependencies * Changes to get `a7` out (#5697) * changes to get a7 out * etf menu on the pyproject.toml * poetry lock * bump `openbb-etf` to `a5` to match version * updated deps * removing ultima * removing references to a4 cc @the-praxs * Bump index menu version * poetry lock --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Update publishing instructions * Bump core dependencies in extensions and providers * Add changes to the publish script following the beta release * Update the versions in static extension map and openbb metapackage --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: Igor Radovanovic <74266147+Igor… * Run linters on changed files only (#6458) * run linters on changed files only * update pre-commit ruff * include cli directory in the diff files to be checked * update msg * fix the ruff issue * [BugFix] Fix Codespell Linting Errors (#6464) * codespell * skip terminal crypto onchain * [BugFix] Fix Seeking Alpha (#6461) * fix seeking alpha * try again sequence * prevent key error * move value check up the sequence * filter test cassette more --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Add `json_schema_extra` With Choices To Provider 'period' Field (#6451) * add json_schema_extra choices to provider 'period' field * black * unused imports * mypy * pytest --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * default API settings (#6466) * [Feature] Options Chains From YFinance (#6468) * add yfinance to options chains * Explicit None --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * fix Q4 label sub (#6465) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * fix empty build fail (#6462) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * make same PR as the one to main (#6472) * [Feature] Set provider fallback based on credentials (#6446) * feat: allow provider fallback based on credentials * fix: rename prop and raise error * fix: raise if all providers fail * fix: remove dead line * fix: rename defaults field to commands * rename key and update docs * fix: rename some stuff * fix bug * fix: mypy * fix: unittests * docstring * fix: provider field description * fix: error messages * fix: msg * feat: update defaults class * feat: update defaults class * unit tests * fix test * msg * fix: add website documentation * fix: detailed error message * update core ruff version * fix test * rebuild --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Add Central Bank Holdings (Federal Reserve) (#6469) * add central bank holdings * codespell * actually commit the standard model --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Adding OECD Endpoints (CPI + Share Price Index) (#6157) * remove ultima + althub * move twitter keys * Enhance caching + more specific urls * Update urls for stir * LTIR * cli * one v3 file to fix * Typing edits + gdp dates + gdp all countries * Tests * lint * not sure why those didnt record * handle the fact that we artifically add some start dates and end dates * fix dates with actual solution not weird patch * lint * Add CPI from OECD * coment * Add Share Price endpoint * Clean up the CPI oecd model with the choices and allow expensitures to be "all" * commit this change * remove "share prices" * Correctly handle country "choices" and let oecd do multiple countries * some fixes * standard model fields * unit test * frequency in standard model * empty fred * format oecd dates as period beginning * fred -> when frequency is annual, the transform needs to be same period one year ago * test thing * add share price index * test params * better parsing with CSV response * update test cassette --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] More OECD - House Price Index, Immediate Interest Rate (#6473) * add house price index * static files * unemployment cleanup * EA20 * test params * add immediate interest rates * [Feature] Add Retail Prices to Economy (#6474) * add retail prices * static files * recapture test * import lib path instead of file..? * add missing init file * need a docstring * no tea * [Bugfix] Remove svg export (#6476) * lint * fix version * add url functionality to the charting extension * small adjustments and removing unused function * remove svg * remove unused function * better messages * version can't be asserted bc will change * [Feature] Optional choices (#6463) * using the custom argument to leverage validation * restructure * better handling of variables and props * optional choices * utilities module * proper handling of optional choices attr * setattr --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Pre release fixes (#6478) * fix: tests * fix: rebuild * fix: hub test * Merge branch 'main' into develop (#6479) * add snowflake integration video (#6339) * [HotFix] Fix broken URLs in docs page. (#6368) * Fix broken URLs * use full URL to other docs pages. * [Release] 4.2.0 (#6422) * [Docs] Remove Reference to `to_chart` in OBBject. (#6096) * remove reference to to_chart in OBBject. * put chart description back in OBBject properties * [Feature] - Create openbb assets folder (#6101) * create openbb assets folder * fix unittest * rebuild --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fixes to_df() where the date series contains multiple TZ-offsets. (#6099) * allow mixed utc offset in a tz-aware date column * enforce ascending from all providers for price.historical * fix tests * add comments and apply treatment to basemodel_from_df before JSON output * yfinance consistency * add unit test * add unit test * better test * ruff --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update the quantitative extension to make more sense (#6087) * Split out a rolling submenu for the rolling functions * Make a performance and a stats submenu. * Test the statistics functions * lint * lint * dupe test * pylint * ruff * Try tests quick * black magic signature funcs * fix my custom tests * Fix the existing imports/urls * push the api update * okay I figured out whats going on * this should be all of them * Correct docstringing examples --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Fix ECB Yield Curve (#6108) * fix ecb yield curve * standard model update * Update unit-test workflow to check for changes to openbb_platform (#6109) * [Bug fix] - Fix package mypy (#6110) * fix: package mypy * types * black * [Feature] - Equity router descriptions & examples (#6103) * feat: equity/calendar * feat: compare router * fix descriptions * darkpool + discovery * fix paragraph issues * fix descriptions * fundamental part 1 * fundamental part2 * transcipts * ownership * fix * price * shorts * Update darkpool_router.py * minor fix * shorts examples * examples * ruff * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Add `exception_handler` decorator to static (#6112) * add exception handler decorator * add exception handler decorator code * updated static * rebuild to fix docstring indentation --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * update extensions list (#6114) * add missing field descriptions to yfinance equity price historical (#6116) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * remove charting extension env var (#6118) * [BugFix] Fix Company News (#6111) * fix company news * update tests * multiple symbols for polygon * don't include pageSize in Benzinga querystring, fixed as 100 * remove extra space * black * unused imports * make benzinga test cassette smaller * missing params * clear empty strings --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Allow Multiple Symbols in `equity.fundamental.metrics()` from `yfinance` (#6124) * allow multiple symbols in key_metrics from yfinance * field order thing * remove unnecessary function (#6125) * [Docs] Update OpenBB Copilot docs (#6106) * WIP: Tweak description. * WIP: Experimenting with react-player * WIP: Add copilot docs. * fixes videos width/height * WIP: Refine videos and copy. * WIP: Add last videos and sections. * Add bring-your-own-copilot section. * Tweak grammar. * Add copilot link. * Fix typos. --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * [Enhancement] Add Previous Close to DATA_DESCRIPTIONS (#6120) * add data description for previous close * ..just the one * update the model tripped by this change --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * added australia as a country also (#6131) * [Bug fix] - Fix regulator cik map standard model (#6129) * Fix regulator cik map standard model * fix description * Update cik_map.py * increase timeout to 30 (#6115) Co-authored-by: James Maslek <jmaslek11@gmail.com> * clean up some v3 deps (#6105) * clean up some v3 deps * forgot we need to do the requirements txt files * not sure it matters, but run ruff + black * am addicted to bug fixes --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Bug fix] - explicit multiple items docstring (#6127) * explicit multiple items docstring * rebuiild * rebuild again --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] Pretty Pydantic `ValidationError` exceptions (#6130) * fix validator in fmp IndexHistorical model * make ValidationError pretty * modify arg error * linting fmp IndexHistorical * black * remove unused code * tmx etf info (#6132) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] - Platform V4 Markdown Generator V2 (#6094) * add recent `openapi.json` * fix data types in models * removed `openapi.json` * set default date value as None in PolygonCurrencyPairs class * add function to generate reference.json file * reworked function to improve readability * reword function to add seo metadata * add functions for creating markdown sections * add code to extract data card markdown title * add additional functions for generating index and data models file * extract first sentence of the description for cards * code cleanup and documentation * linting * linting polygon models * add openbb import statement in create_reference_markdown_examples function * add POST method functions * cleanup; reworked generate_reference_index_files function * moved development section to 7th position in the sidebar * fix POST function params default value add standard flag to QueryParams and Data fields cleanup * add type expansion from package_builder.MethodDefinition * sort data models cards alphabetically make printing less verbose * make MAX_CARDS global display less content in cards in Commannds section * cleanup * Remove '_' from the cards under Commands section * " to ' in econometrics/causality * replace ' with " in ReferenceCard for reference dir index files * remove extra . from the quantile function description * shoutout to @deeleeramone for finding POST method description bug! * set correct value for standard field * handle BaseModel types in provider data fields * unit tests for the platform markdown generator v2 * yeet 'Default' and 'Optional' columns in the 'Data' section * last minute bug fix * add info for multiple symbols * make multiple items info same as platform static * organize sections properly * sort reference sub-directories alphabetically * extra space in 'OBBject extra' description * add type expansion for fields with multiple items POST method cleanup --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Docs] Adds Example Notebook for the Implied Earnings Move (#6128) * adds example notebook for the implied earnings move * remove commented out line --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] - Sync with new openapi.json (#6137) * feat: create data tabs * fix: uncomment * fix: remove unecessary comment * sort side bar * comment * uncomment * use .dev functions.json + clean traverse * fix futures example * fix example * point to .co * Fix the v3 markdown generation workflow (#6138) * fix workflow * debug time * see if the docs generate at least * ahhhh i found it * getting there * put the test first * some keys cleanup * small change to error message * update functions.json (#6140) * fix intraday check in charting ta_class (#6119) Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * [BugFix] Display EconDB as source for macro (#6143) * [BugFix] Disable Intrinio `InstitutionalOwnership` model (#6142) * disable fetcher in init and fetcher tests * disable provider test params from equity python and api tests * updated static * add more examples into findSymbols (#6139) Co-authored-by: James Maslek <jmaslek11@gmail.com> * [BugFix] Fix SEC ETF Holdings Parsing Exception (#6121) * fix etf holdings * linting * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/update xl docs (#6145) * remove print * update obb.get docs * example * md lint * fix get reference (#6147) * [BugFix] Filter OECD data using `start_date` and `end_date` parameters (#6144) * move constant dicts to constants.py filter by start_date and end_date * black * black again again * Merge 'main' into 'develop' (#6151) * Release/3.2.4 (#5696) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * 3.2.3->3.2.4 * Changelogs * new changelog --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Andrew <andrew.kenreich@gmail.com> Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Luqman <luqazino@gmail.com> Co-authored-by: Adwait <111136306+AdwaitSalankar@users.noreply.github.com> Co-authored-by: Abhishek Amar <66067391+abhishek-amar@users.noreply.github.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Ramazan <guvencramazan@outlook.com> Co-authored-by: joshuabuildsthings <joshuabuildsthings@users.noreply.github.com> Co-authored-by: wojda <114031148+polooner@users.noreply.github.com> Co-authored-by: Bim Phomthong <118195204+bimbolimbo@users.noreply.github.com> * Release/4.0.1 (#5840) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Release/3.2.4 (#5704) * 3.2.3->3.2.4 * Changelogs * new changelog * OpenBB Platform v4 (#5225) * change location * check something * add cache * fixed auth w/@IgorWounds and @montezdesousa * fixes for econometrics * include Darren auth suggestions * some routers included if dev + chg hub backend var * coverage router should not be here * update docker readme * forgot to check auth here * Change extension imports * update docstrings and readme * headers function wasnt being called, just referenced * relative import * econometrics add headers everywhere * Fix QA * Fix TA * Fix test * Fix python interface QA and TA * Lint * Cleanup * Change path * make the changes and some etf models * tests for command_runner * ruff * solving naming issues on pytest * Update some docstrings, fix typos and lint * solving econometrics instantiating wrong openbb * chaging the way pytest runs * messing around with the imports * ruff * Change template to add platform considerations (#5533) * change template to add platform considerations * @the-praxs suggestions * solving __pycache__ issue * removing typo * ci yml * making linters happy (i guess) * Improve Omega Ratio and docstrings * chaging pro validation hash * ruff * Fix OLS Summary and lint * Add OECD Provider for economy extension (#5534) * Add record to docs * update a couple of cboe models * Fix econometrics bugs. Make tests pass. Lint. * black * ruff * pydantic v2: remove deprecated Extra * pydantic v2: self.dict -> self.model_dump * revert pydantic * revert the revert * try 1: pin urllib3 < 2 * Revert "try 1: pin urllib3 < 2" This reverts commit3736c311cb. * Revert dep * Fix * re-lock * Skip all tests when doing cspell in pre-commit * Resolve linter errors * Add OECD to install script * Add OECD * Resolve more linter errors * Exclude static files of v4 python from ruff * More linting * Another attempt to resolve even more linting errors * Change how Literal is used * ticker. symbol. consistent. @piiq * change ticker field in Stock Search to is_symbol * Update Cboe model for stocks_search -> is_symbol parameter. * Fix issue * Lint * Small QA to rename SDK to Platform (#5544) * SDK -> Platform in docs * renamed in core * renamed in openbb `init` * `sdk` variable renamed as `platform` --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * `validator` -> `field_validator` in standard models * Standard convention for multi-ticker symbols (#5549) * standardize symbol input param in forex and crypto historical data * static * linting * Fix stock_search integration test params * Update dependencies and linting on the CI (#5550) * Remove ruff and black from platform dependencies * Update codespell configuration * Lint python code * Add toml and tomli to root dev dependencies * Update requirements.txt files * Fix buggy docstring in python package methods (#5548) * fix buggy docstring for methods * remove space * fix typing * avoid name collision with validator * Revert "avoid name collision with validator" This reverts commit8a30a44555. * typing * rebuild * python 3.8, ParamSpec not available * lint * ruff noqa * Merge with develop (#5551) * Charting extension integration tests (#5547) * initial proposal for integration tests on the charting extension * int tests for charting generation * python generator * ruff * boilerplate templates * python tests * tests for the api * using body instead so data don't get redefined * unit tests for coverage * ruff * docstrings * unnecessary access to keys() * Add trading economics economic calendar * dev install * Data Models disposition on the website (#5538) * pydantic v4 * flat structure * md files * Revert "md files" This reverts commitbd2170e2ad. * improve command descriptions * nice title and description * human readble data model names on left panel * implementation details section * content markdown files * markdown versioned files * showcase page * updates --------- Co-authored-by: tehcoderer <me@tehcoderer.com> * everything except tests * fix `datetime.date` import in fetcher test * modified url to remove `api_key` placeholder * record test * api key is called c here * fixed fetcher test for api key * recorded tests * refactor * life is ruff * codespell * Make Intrinio options chains great again (#5540) * add multithreading * cleanup * linting * use dateutil.parser * removed `TICKER_EXCEPTIONS` * modified `date` and `type` fields in standard model * set alias for `date` and `type` to match standards * static * static * Hotfix/fix post tests (#5555) * Fix econometrics * Fix ta * Fix qa. Remove intrinio to not be rate limited * Lint * Fix typo * obbject tests (#5558) * obbject tests * ruff * fix dev_install * fix unittests * black on nox * black on nox * nox * fix fetcher test so it can compare dates * fix intrinio tests * ruff * change to model_dum() instead (#5561) * Passing tests (#5560) * Passing tests * fix options * Fix most tests and bugs * fix forex missing params * make symbol upper in polygon fx pairs * fix fixedincome integration tests (#5564) * Fixing charting api integration tests (#5562) * fixing charting api integration tests * black * fix stocks less five API fails * fix the 5 failing stocks integration tests * recapture fmp stock news unit test * fix fmp forex api test * couple more forex integration fixes * changing the request to always use the legacy session. @jmaslek this is was broken for 3.8 and 3.9; with this change apparently all versions work - lemme know if you see any issue with this change * ruff * fix ta * add missing param * fix testers for the api * fix globalnews to use images instead of image * remove unncessary pandas import * econcal int tests * update gitignore * fix get_querystring to support lists * add missing parameters --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * Stock Historical standardization and UX improvements (#5457) * polygon add interval standard param * attempt at standardization * Alpha Vantage params standardization * rename `get_intervals` and fixed bug for extracting wrong value * missed changing it in `extract_data` * linting * polygon cleanup * modified `start_date` & `end_date` type to `datetime` from `dateType` * standardized intrinio stock historical params * fixed yfinance * linting * revert start and end date to dateType from datetime * fix alpha vantage * changed param * fix intrinio infinite loop * `validator` is `field_validator` * revert time params and fixed intervals * `outputsize` alias set in `Field` * set interval description using in-build dict * yfinance stock param standardization * static * intrinio cleanup * Polygon add api params as `PrivateAttr` * modified yfinance params to `PrivateAttr` * intrinio remove overriding date params * fixed description for AV adjusted param * fix alpha vantage intraday not working * re-record and pass unit tests * pass integration tests * Update test --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix econcal endpoint (#5567) * fix econcal for python interface * fix econcal tests * fix non supported json output * Fixes FMP index endpoint to get 1 day interval data (#5535) * fix FMP endpoint for getting index data for `1day` interval * fix `open` type to prevent validation error * modifed `validator` to `field_validator` * type of fields is `StrictFloat` * re-record and pass test * linting * `validator` -> `field_validator`, a3'd everything * Fix regression in tests. Lint * updating the integration test actions * Fix typo * Fix typo * Fix import * Publish versions `a3` to Pypi (#5568) * bump versions and script to publish * small improvements * uncomment exception * openbb * publishing guidelines * improve docs * add providers to economy api * make symbol required in stock_quote * Fix keys * Fix oecd * add comma * revert * Add quotes * Sleep * Improve tests * Improve * Feature/query transform (#5566) * inject query into transform_data * swap query and data * update missing fetchers * last test failing * sig test fetcher * black * av add `query` to `transform_data` call * transform_data: missing refactoring * fix uvicorn command in the doc * Automated examples (#5576) * Automated examples * Fix bug * Lint * static assets built on 3.8 * Revert "static assets built on 3.8" This reverts commitfb82ff7bd9. * remove assets * static assets on 3.8 * static assets on 3.8 * Wrap in quotes * Improve wrap * minor fix * rebuild 3.8 * Fix bug * Fix edge case * Lint * rebuild --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * use SecretStr for sensitive fields (#5578) * use SecretStr for sensitive fields * fix * docstring * Add tests for provider (#5583) * Add tests for provider * Test standard models * Lint * Fix standard model issues. Co-authored-by: @the-praxs * linting * `symbol` -> `is_symbol` in `economy.index_search` * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * feature/v4-biztoc-provider: Adds Biztoc provider and GlobalNews (#5546) * add biztoc provider * duplicate field * black * request headers * recapture test * move stuff around * add integration tests * duplicate OECD entry in dev_install * duplicate entry for oecd in pyproject.toml * Add Biztoc to workflow * update readme: credentials * Add Preferences to README * improve tests * fix biztoc * obbject pylint * Bug fix: serializ SecretStr before dumping to json * export credentials as json (#5592) * Check for wrong, changed, or outdated params. (#5597) * Improving `economy.cpi` for the FRED data (#5602) * remove multiindex using coding magic * Update field descriptions --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Improve error message. * Improve * Test tests (#5607) * Test tests * Add test * 4.0.0a4 PyPI publishing (#5608) * changes to publish * fix mini conflict * typo * cleaned `descriptions.py` * fix description in `cpi.py` * Add ETF extension to v4 (#5609) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add ETF historical price from yfinance (#5610) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add etf historical price standard model and route * Add etf historical data from yfinance * Add unit tests * Fix linter error. Organize imports * Update test data * Revert common descriptions erased by CPI PR * remove `symbol` from data for `stocks.ca.peers` * Test docstrings (#5613) * Test docstrings * fix minor bugs w/@IgorWounds * static only w/@IgorWounds * fix `importance` param in `economy.econcal` * right static only w/@IgorWounds * Fix econcal and add tests to noxfile * fix econcal static * re-record --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Clean up the newly created ETF extension (#5611) * Add ETF to dev_install bundle * Add integration tests for openbb-etf * Patch integration test generator scripts to produce lintable code * Add py.typed markers for extensions * user preferences descriptions (#5593) * user preferences descriptions * typo * Feature/v4-sec-provider: Add SEC provider to V4 (#5556) * coerce string type, add default=None * add sec provider and FTD function * update description * ruff * data model definitions in standard model already * duplicate oecd entries in dev_install and pyproject * actually commit * integration test * add stock search to SEC * add company filings for SEC provider * integration tests * remove duplicated line * ruff * **kwargs in Transform Data * some helper functions for later * black * add helper for mutual fund and etf lookup * add some SEC lookup helpers to a new regulators extension * black * ruff * fix test param * take institution filter out of sec stock_search * ruff * remove URL that codespell doesn't like * add cik-to-ticker map * add litigations rss feed * make openbb-regulators a dependency of openbb-sec * add SIC search * improve ftd and remove BeautifulSoup from SEC dependencies * fix parsing the zip files pre-2009 * ruff * update descriptions * recapture ftd test * tests params * typo * change limit param to 1 in test_sec_stock_ftd * Add didiers to_records method (#5588) * Add didiers to_records * unused import * Bring back polars + do what igor suggested * Make the output consistent with what it was. * Black ? * spelling. oops. almost like we have a pre commit or something * Feature/v4-price-performance: % returns for various horizons, comparable across multiple tickers. (#5618) * coerce string type, add default=None * add price_performance endpoint from FMP * black * extra period in docstring * ruff * forgot one file * Feature/ipo-calendar: V4 IPO Calendar (#5605) * coerce string type, add default=None * add intrinio ipo calendar * fix typo * sort __init__ * fix description * make requested changes * update test params * black * test updates * etf integration * Add disc router and WSJ provider * OBBject extensions (#5612) * changes to core * bug? * docstring * doc * Update credentials.py * fix model_dump * create extensions * fix docstring * doc * revert change query_exc * doc * fix container test * redirect obbject test patch * doc * rename method * move decorator to extension file * rename method extend_obbject * changes in creds model * avoid credential racing * doc * rename prop * doc * doc * remove comment * comment some code * free extension names * docstring * doc * docs * Hotfix/fix-v4-economic-calendar: Add FMP to Econ Calendar and fix some TE bugs (#5580) * coerce string type, add default=None * adds fmp to economic calendar and fixes some things with TE * ruff * etf integration test * missing provider for test * rename te cassette to economic_calendar * fix test * rename tests --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Add stocks disc endpoints (#5630) * Add stocks disc endpoints * Explicit * Lint * Add tests * Bump timeout * Feature/disc router (#5616) * Add disc router and WSJ provider * Lint * Lint * Move endpoints under ETF router * Update etf_performance.py * Add ETF info and sector exposure from FMP (#5620) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Fix linter errors after the merge * Fix more linter errors * Fix failing and add missing tests * Fix integration tests * Fix calendar ipo tests * Add ETF holdings and holding report dates from FMP (#5629) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Add etf holdings and holdings date routes and standard models * Add fmp holdings and holding dates fetchers * Update holdings fetcher to properly handle date object inputs * Add unit tests * Add integration tests * Black after merge * Fix test input data format * Disc router for equities. (#5640) * Disc router for equities. * add tests * Bug fixes in financial statements (#5537) * `validator` to `field_validator` in standard models * Polygon add `ttm` to `period` param * Revert "Polygon add `ttm` to `period` param" * Polygon add `ttm` to param `period` * `EarningsCallTranscript` standard model removed `quarter` param * use `tag` instead of `name` for correct field name * fix url for intrinio income statement * modified intrinio cash flow `transform_data` function * set optional data fields and validate dates * fix insider trading not fetching recent data * linting * refactoring * refactoring * set param alias in fmp stock insider provider model * get all quarter data for intrinio * add `limit` param to `stocks.fa.ins` * refactoring and linting * removed additional comment * linting * re-recorded and fix tests * cash flow standard model field type to `StrictFloat` * Intrinio cash flow model fixed to get all quarters' data * linting * refactoring * financial statement standard model field type to `StrictFloat` * Intrinio financial statement model get all quarter data * set `period` type to `Optional[str]` * add `period` param to balance sheet provider models * add `period` param to cash flow provider models * use alias in model dump * remove `ttm` from `period` param * revamped intrinio financials * fixed incorrect description for `limit` param * modified tests for `balance`, `cash` and `income` * re-recorded tests * skipped intrinio financial statement fetcher tests * Add ETF county weighting command with FMP data (#5645) * Remove code that wrongfully infers the filing date as end of quarter * Add etf countries command with fmp data * Add countries command to etf router * Update sector and country weighting fmp models * Fix docstring typo * Add unit tests and update mock data * Add integration tests for etf.countries * Bring back missing integration tests * Fix economic calendar integration tests * fix missing data in intrinio financials * removed inutile params from Polygon financial statement models * Intrinio IPO overhaul * tests fixed and re-recorded * Add ETF holdings performance with FMP data (#5659) * Add etf holdings performance endpoint * Add tests * Fix failing polygon fetcher tests * Split long holdings lists into chunks and update test data * Change chunk length to 500 tickers * Add stock search from FMP (#5642) Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Feature/v4 pypi (#5579) * improvements to the publish script * move scripts * initial script that builds the package * adjustments on the docs * test pypi workflow * add hour and minute to version * black * ruff * duplicate file * moving files instead * build throught the script instead * update nox file * integration tests workflow * change workflow * fix dev_install * fix in sed cmd * testing the platform only * commenting out the publishing * fix run commands * improvements to the publish script and doc * fix publish script * updating the script and the workflow * feature/v4-pypi nightly (#5589) * init * Update nightly.py * cleanup * init file * not referencing dev_utils * updating obb platform key * revert * Increase warmup time * project name on pyproject and adding the --pre flag on readme * moving to the build folder * fix noxfile * reflecting the moves on the import statements * fix pyproject path * ruff * fix paths * fix super typo * update workflows * moving the pypi terminal files into its folder --------- Co-authored-by: teh_coderer <me@tehcoderer.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * economy.calendar nasdaq (#5628) * add quandl econcal * unittest * add integration tests * replace   * fix bug TE importance * small fix * remove stuff from quandl * add nasdaq provider * add nasdaq to install files * Update test_economy_api.py * test * quandl leftovers * remove quandl econcal test * lint * replace   * ruff * lint * update nasdaq gmt * validate countries * here * no need for this * fix calendar tests * static * static * remove error * static * readme + website * readme * remove changes TE * typo * fix unittest * fix tests * Update __init__.py * Update economic_calendar.py * revamped model and added helpers for date range --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Feature/v4-dividend-calendar: Adds Nasdaq dividend calendar and moves the command out of fundamental_analysis (#5672) * add nasdaq dividend calendar and move out of fundamental_analysis * black * ruff * add random-user-agent to pyproject.toml * add nasdaq ipo calendar * add nasdaq flag for SPO to IPO calendar * add spo test param * black * dividend test * fix transform_query - nasdaq_calendar_ipo * bring back different headers for ipo calendar * remove references to test * Add disc endpoints (#5660) * Add Quandl top retail * Add tests * Add Seeking Alpha * Add Filings * Change Provider * Fix test * Add dev_install * static * static correct * y u forget me * updated deps * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * using dev install (#5673) * Expanding the `fixedincome` menu (#5655) * models and fetcher * making the fetcher visible * std model * adding the command * improvements to the models * typo * adding the command * imrpovements to dwpcr * standard model for ecb int rates * adding the fetcher for fred * standard model of ice bofa * add ice_bofa command * ruff * ice bofa fetcher * moody std model * moody * std model * add cp command * unused import * cp * spot * ruff * hqm * tmc * ffrmc * tbffr * ruff * typing fixes * buggy dates * fred fetcher tests * ruff * adding ecb as a provider * adding new provider related stuff * adding the new command eu_ycvr * models * test for ecb fetcher * Feature/v4 fixedincome int tests (#5661) * integration tests * happy ruff * mini adjustment * ruff * typo * verbose type * fix tests * docstrings everywhere and an happy pydocstyle * fix tests * Feature/user-cache-dir: Add User Preference for the Cache Directory (#5621) * add user preference for storing cached data * ruff * fix tests? * fix test key error..? * etf integration test fix * add cache dir to SEC * black * improve docs structure for V4 (#5586) * improve docs structure for V4 * moving over changes * Add Docs to the navbar * add some, re-order sidebar * fix sentence * add docs install to source instructions * insert a couple of links, fix a typo * big terminal docs usage revamps * improve toggle component for tutorials * get rid of TOCs for all terminal docs for consistency and simplicity * improve platform docs * improve bot docs content structure * remove index from bot docs * improve ON THIS PAGE to only display TOC if at least 1 element * make edit this page text and icon on same line * add author and date to docs * add basic syntax page to usage * sidebar order for usage section * move api start command to the top with the import python import * some install page additions * small improvement * refactor routines section * Update introduction-to-routines.md * Update pipeline-of-commands.md * Update introduction-to-routines.md * Update routines-for-power-users.md * Update community-routines.md * update keyboard hotkey macros * askobb page * Update askobb-feature.md * Update index.md * Update index.md * Update index.md * Update index.md * fix images * remove HeadTitle from all files where it exist * get rid of extra spacing in markdown * small update * small edit * need index at the start because of main path when homepage of docs * use openAI to create SEO for front matter on my behalf * remove table of content from sdk page * finish improving metadata SEO for SDK docs * update duplicate header * update HeadTitle to be more specific on product * remove index from bot telegram reference * delete duplicated title for platform reference * another update * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * start PR so screenshots can get attached via GitHub website * Update qa.md * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * Update crypto introduction.md * titles * another title * Update crypto dd.md * Update defi.md * Update disc.md * Update nft.md * Update onchain.md * Update ov.md * Update introduction.md updates URL * Update introduction.md add HeadTitle * Update ba.md * Update comparison.md * Update dark-pool-shorts.md * Update disc.md * fix docs (#5646) * Update fa.md * Update gov.md * Update ins.md * Update tradinghours.md * Delete website/content/terminal/menus/stocks/options/screener.md * Update Options introduction.md * Update screener head title * Update screener TOC * Update econometrics.md * Update economy head title * Update etf.md * codespell * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Contributing guidelines (#5615) * intro section * what's expected sections * improve sections * improve sections and move how to add a data point * moving qa under contributor * better intro * moving the sharing section * better expectations * small intro to the contributor guidelines * moving things under the contributor section * there is no pre commits on the platform yet * dependency management * best practices for extensions * typo * collapse options subfolder * codespell * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update fixedincome.md * url * Update forecast.md * Update settings.md (#5665) * Update forex.md * fix front matter (#5667) * Fix conflict markers that got into markdown during previous merges * Fix front matter list formatting * Fix typo * small thing * fix hyperlinks * Update .codespell.ignore * output_type options * Architectural considerations * Update sidebar to hide pro section by default * Minor copy changes * TET pattern * import statements * clarification on preferences * Minor copy changes * Lint markdown and python * fix: open index on collapsible root elements * remove old content * options title * Fix linting errors * Refactor sidebar label to url mapping condition --------- Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Add multi-ticker support to etf_countries (#5670) * add multi-ticker support to etf_countries * remove commented-out lines * normalized percent points * percent -> percentage * Fix Nasdaq Econ Calendar Fetcher (#5668) * fix nasdaq econ cal request * more html tags * add random-user-agent to pyproject * another edge case - 24H -> 00:00 * Feature/v4-unusual-options: Adds unusual options endpoint. (#5677) * add unusual options fro Intrinio * test params * move sorting * Change type * update FMP fetcher to use the V4 endpoint (#5681) * Fix price performance not parsed correctly when there is only 1 ticker (#5678) * Add crypto search standard model and FMP data for it (#5679) * Apply renaming to news data (#5684) * inegration complete * reformatted for black * fix ruff issues * revised integration * changes to versions in pyproject.toml and updated lock files * Rename models * Update tests * Fix typos here and there * Update routers * Apply rename to ultima * Properly mock api key * Mock ultima api key --------- Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> * Feature/v4-market-snapshots: Adds full market snapshots (#5473) * add stocks market snapshots from fmp * add fmp fetcher test * unused imports * add polygon to market_snapshots * update fmp market_snapshots * black * pydantic2 things * updates * change validate_obj to model_validate * polygon cleanup * tests * descriptions * black * data description * minor adjustments, using less local variables, improving readability and removing pandas * better structure * minor adjustments * lint * fix int tests --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Add NBBO Quotes, with historical, to `obb.stocks.quote()` (#5617) * coerce string type, add default=None * add polygon stock quote * limit cleanup * add greater/less than to params * limit param * black * tests * fix tests * test_etf * rename model and function to NBBO * add standard model for nbbo * improve standardization * not redifining builtin max * fix input params * integration test params * removing unused import Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * revamped code * re-recorded nbbo test * added symbol validator * added alias in field * Stock news -> Company news --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * hotfix/update-quandl-to-nasdaq: Merge Quandl + Nasdaq (#5682) * merge quandl nd nasdaq * dev_install.py * test param name * economy python integration test * Add more input types to data processing commands (#5453) * adding more supported types to data processing commands * ruff * removing unused import * docstrings * data processing types covertion * data description * test filters * ruff * fix package builder tests * ruff * removing print * Add stocks/dps module (#5638) * short volume * pyproject missed * add sec short interest with days to cover * Add FINRA OTC endopoint * some tests * rest of unit tests * Integratin test scripts * dev install * linters caught by pre commit * lines too long * Last test files * maybe it needs a lock file? * thanks pratty * Maybe ill actually listen to pratty next time * sec test date freeze * I cant hit buttons * re record tests * tests 3 * Stockgrid test * regen int test * more testing * lint * moved these fns * dis killing me * one more test * last one * Update integration tests * Fix tests picking up wrong dps route --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename Forex to Currency (#5687) * restore fields as optional (#5686) * Rename Crypto (#5689) * added `crypto.price.historical` * static * fix tests * fix incorrect label * Move model from sec to finra (#5692) * Update toml * fixed deps * add openbb-etf lock file * cleanup * cleanup (#5694) * Rename Fixed Income (#5695) * Rename Fixed Income * Add routers * Rename stocks to equity (#5688) * Rename stocks folder * Rename openbb_stocks package * Rename routers * Reroute equity menu * Update routes based on feedback * StockNews -> EquityNews * StockInfo -> EquityProfile * Rename Equity calendars * Equity peers rename * Rename discovery * Rename fundamental * Rename price command models * Rename shorts * Update charting router * Fix seeking alpha upcoming release date * Fix linting errors * Update tests * Fix tests * Skip econometrics api tests because it's python only * Update integration tests and test data * Historical analyst estimates * Skip cboe options chain test. Unable to record vcr cassette * re-record cboe cassettes * Document CBOE unit test creation caveats --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Feature/files-for-igor: Adding a few standard models for Igor (#5699) * add some standard models for Igor * codespell * update descriptions * Add devtools metapackage (#5703) * Add openbb-devtools metapackage * adding devtools to the dev_install script --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Rename econometrics commands to be more verbose (#5702) * Expose command to model map (#5706) * Rename ta qa (#5708) * Rename ta folder * Rename ta to technical * Rename qa folder * Rename qa to quantitative * Rename the actual routes in quantitative * Equity cleanup (#5707) * cleanup * static * renaming to equity cc @the-praxs * Proof reading --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Don't enforce imperative for first word of the docstring * Remove ultima from default extensions * Rename `economy` and create `index` extension (#5705) * renamed economy and re-recorded tests * static * market indices * european indices * fred indices * index constituents * tests * correct package name * oops * static * linting * Move COT commands to regulators * Rename economy.list to available_indices * Rename GDP models and clean up * Fix charting tests * Drop _indices from available_indices command * Fix obbject to_dict test --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename etf/disc (#5715) * Docs/v4-working-docs: PR to Work on V4 Docs (#5693) * Revert changes related to pydantic2 made into v3 code * Revert fred model changes in v3 * Revert pydantic2 databento model changes in v2 * Update some names and v3 lock file * Clean up openbb/package before the beta release * Platform publishing procedure (#5701) * update instructions * introducing the version script * publish message * fix platform path * reflecting version changes * getting version from installed packages instead * removing toml from dependencies * Changes to get `a7` out (#5697) * changes to get a7 out * etf menu on the pyproject.toml * poetry lock * bump `openbb-etf` to `a5` to match version * updated deps * removing ultima * removing references to a4 cc @the-praxs * Bump index menu version * poetry lock --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Update publishing instructions * Bump core dependencies in extensions and providers * Add changes to the publish script following the beta release * Update the versions in static extension map and openbb metapackage --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: Igor Radovanov… * [Release] 4.2.2 (#6481) * add snowflake integration video (#6339) * [HotFix] Fix broken URLs in docs page. (#6368) * Fix broken URLs * use full URL to other docs pages. * [Release] 4.2.0 (#6422) * [Docs] Remove Reference to `to_chart` in OBBject. (#6096) * remove reference to to_chart in OBBject. * put chart description back in OBBject properties * [Feature] - Create openbb assets folder (#6101) * create openbb assets folder * fix unittest * rebuild --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fixes to_df() where the date series contains multiple TZ-offsets. (#6099) * allow mixed utc offset in a tz-aware date column * enforce ascending from all providers for price.historical * fix tests * add comments and apply treatment to basemodel_from_df before JSON output * yfinance consistency * add unit test * add unit test * better test * ruff --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update the quantitative extension to make more sense (#6087) * Split out a rolling submenu for the rolling functions * Make a performance and a stats submenu. * Test the statistics functions * lint * lint * dupe test * pylint * ruff * Try tests quick * black magic signature funcs * fix my custom tests * Fix the existing imports/urls * push the api update * okay I figured out whats going on * this should be all of them * Correct docstringing examples --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Fix ECB Yield Curve (#6108) * fix ecb yield curve * standard model update * Update unit-test workflow to check for changes to openbb_platform (#6109) * [Bug fix] - Fix package mypy (#6110) * fix: package mypy * types * black * [Feature] - Equity router descriptions & examples (#6103) * feat: equity/calendar * feat: compare router * fix descriptions * darkpool + discovery * fix paragraph issues * fix descriptions * fundamental part 1 * fundamental part2 * transcipts * ownership * fix * price * shorts * Update darkpool_router.py * minor fix * shorts examples * examples * ruff * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Add `exception_handler` decorator to static (#6112) * add exception handler decorator * add exception handler decorator code * updated static * rebuild to fix docstring indentation --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * update extensions list (#6114) * add missing field descriptions to yfinance equity price historical (#6116) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * remove charting extension env var (#6118) * [BugFix] Fix Company News (#6111) * fix company news * update tests * multiple symbols for polygon * don't include pageSize in Benzinga querystring, fixed as 100 * remove extra space * black * unused imports * make benzinga test cassette smaller * missing params * clear empty strings --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Allow Multiple Symbols in `equity.fundamental.metrics()` from `yfinance` (#6124) * allow multiple symbols in key_metrics from yfinance * field order thing * remove unnecessary function (#6125) * [Docs] Update OpenBB Copilot docs (#6106) * WIP: Tweak description. * WIP: Experimenting with react-player * WIP: Add copilot docs. * fixes videos width/height * WIP: Refine videos and copy. * WIP: Add last videos and sections. * Add bring-your-own-copilot section. * Tweak grammar. * Add copilot link. * Fix typos. --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * [Enhancement] Add Previous Close to DATA_DESCRIPTIONS (#6120) * add data description for previous close * ..just the one * update the model tripped by this change --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * added australia as a country also (#6131) * [Bug fix] - Fix regulator cik map standard model (#6129) * Fix regulator cik map standard model * fix description * Update cik_map.py * increase timeout to 30 (#6115) Co-authored-by: James Maslek <jmaslek11@gmail.com> * clean up some v3 deps (#6105) * clean up some v3 deps * forgot we need to do the requirements txt files * not sure it matters, but run ruff + black * am addicted to bug fixes --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Bug fix] - explicit multiple items docstring (#6127) * explicit multiple items docstring * rebuiild * rebuild again --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] Pretty Pydantic `ValidationError` exceptions (#6130) * fix validator in fmp IndexHistorical model * make ValidationError pretty * modify arg error * linting fmp IndexHistorical * black * remove unused code * tmx etf info (#6132) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] - Platform V4 Markdown Generator V2 (#6094) * add recent `openapi.json` * fix data types in models * removed `openapi.json` * set default date value as None in PolygonCurrencyPairs class * add function to generate reference.json file * reworked function to improve readability * reword function to add seo metadata * add functions for creating markdown sections * add code to extract data card markdown title * add additional functions for generating index and data models file * extract first sentence of the description for cards * code cleanup and documentation * linting * linting polygon models * add openbb import statement in create_reference_markdown_examples function * add POST method functions * cleanup; reworked generate_reference_index_files function * moved development section to 7th position in the sidebar * fix POST function params default value add standard flag to QueryParams and Data fields cleanup * add type expansion from package_builder.MethodDefinition * sort data models cards alphabetically make printing less verbose * make MAX_CARDS global display less content in cards in Commannds section * cleanup * Remove '_' from the cards under Commands section * " to ' in econometrics/causality * replace ' with " in ReferenceCard for reference dir index files * remove extra . from the quantile function description * shoutout to @deeleeramone for finding POST method description bug! * set correct value for standard field * handle BaseModel types in provider data fields * unit tests for the platform markdown generator v2 * yeet 'Default' and 'Optional' columns in the 'Data' section * last minute bug fix * add info for multiple symbols * make multiple items info same as platform static * organize sections properly * sort reference sub-directories alphabetically * extra space in 'OBBject extra' description * add type expansion for fields with multiple items POST method cleanup --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Docs] Adds Example Notebook for the Implied Earnings Move (#6128) * adds example notebook for the implied earnings move * remove commented out line --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] - Sync with new openapi.json (#6137) * feat: create data tabs * fix: uncomment * fix: remove unecessary comment * sort side bar * comment * uncomment * use .dev functions.json + clean traverse * fix futures example * fix example * point to .co * Fix the v3 markdown generation workflow (#6138) * fix workflow * debug time * see if the docs generate at least * ahhhh i found it * getting there * put the test first * some keys cleanup * small change to error message * update functions.json (#6140) * fix intraday check in charting ta_class (#6119) Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * [BugFix] Display EconDB as source for macro (#6143) * [BugFix] Disable Intrinio `InstitutionalOwnership` model (#6142) * disable fetcher in init and fetcher tests * disable provider test params from equity python and api tests * updated static * add more examples into findSymbols (#6139) Co-authored-by: James Maslek <jmaslek11@gmail.com> * [BugFix] Fix SEC ETF Holdings Parsing Exception (#6121) * fix etf holdings * linting * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/update xl docs (#6145) * remove print * update obb.get docs * example * md lint * fix get reference (#6147) * [BugFix] Filter OECD data using `start_date` and `end_date` parameters (#6144) * move constant dicts to constants.py filter by start_date and end_date * black * black again again * Merge 'main' into 'develop' (#6151) * Release/3.2.4 (#5696) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * 3.2.3->3.2.4 * Changelogs * new changelog --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Andrew <andrew.kenreich@gmail.com> Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Luqman <luqazino@gmail.com> Co-authored-by: Adwait <111136306+AdwaitSalankar@users.noreply.github.com> Co-authored-by: Abhishek Amar <66067391+abhishek-amar@users.noreply.github.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Ramazan <guvencramazan@outlook.com> Co-authored-by: joshuabuildsthings <joshuabuildsthings@users.noreply.github.com> Co-authored-by: wojda <114031148+polooner@users.noreply.github.com> Co-authored-by: Bim Phomthong <118195204+bimbolimbo@users.noreply.github.com> * Release/4.0.1 (#5840) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Release/3.2.4 (#5704) * 3.2.3->3.2.4 * Changelogs * new changelog * OpenBB Platform v4 (#5225) * change location * check something * add cache * fixed auth w/@IgorWounds and @montezdesousa * fixes for econometrics * include Darren auth suggestions * some routers included if dev + chg hub backend var * coverage router should not be here * update docker readme * forgot to check auth here * Change extension imports * update docstrings and readme * headers function wasnt being called, just referenced * relative import * econometrics add headers everywhere * Fix QA * Fix TA * Fix test * Fix python interface QA and TA * Lint * Cleanup * Change path * make the changes and some etf models * tests for command_runner * ruff * solving naming issues on pytest * Update some docstrings, fix typos and lint * solving econometrics instantiating wrong openbb * chaging the way pytest runs * messing around with the imports * ruff * Change template to add platform considerations (#5533) * change template to add platform considerations * @the-praxs suggestions * solving __pycache__ issue * removing typo * ci yml * making linters happy (i guess) * Improve Omega Ratio and docstrings * chaging pro validation hash * ruff * Fix OLS Summary and lint * Add OECD Provider for economy extension (#5534) * Add record to docs * update a couple of cboe models * Fix econometrics bugs. Make tests pass. Lint. * black * ruff * pydantic v2: remove deprecated Extra * pydantic v2: self.dict -> self.model_dump * revert pydantic * revert the revert * try 1: pin urllib3 < 2 * Revert "try 1: pin urllib3 < 2" This reverts commit3736c311cb. * Revert dep * Fix * re-lock * Skip all tests when doing cspell in pre-commit * Resolve linter errors * Add OECD to install script * Add OECD * Resolve more linter errors * Exclude static files of v4 python from ruff * More linting * Another attempt to resolve even more linting errors * Change how Literal is used * ticker. symbol. consistent. @piiq * change ticker field in Stock Search to is_symbol * Update Cboe model for stocks_search -> is_symbol parameter. * Fix issue * Lint * Small QA to rename SDK to Platform (#5544) * SDK -> Platform in docs * renamed in core * renamed in openbb `init` * `sdk` variable renamed as `platform` --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * `validator` -> `field_validator` in standard models * Standard convention for multi-ticker symbols (#5549) * standardize symbol input param in forex and crypto historical data * static * linting * Fix stock_search integration test params * Update dependencies and linting on the CI (#5550) * Remove ruff and black from platform dependencies * Update codespell configuration * Lint python code * Add toml and tomli to root dev dependencies * Update requirements.txt files * Fix buggy docstring in python package methods (#5548) * fix buggy docstring for methods * remove space * fix typing * avoid name collision with validator * Revert "avoid name collision with validator" This reverts commit8a30a44555. * typing * rebuild * python 3.8, ParamSpec not available * lint * ruff noqa * Merge with develop (#5551) * Charting extension integration tests (#5547) * initial proposal for integration tests on the charting extension * int tests for charting generation * python generator * ruff * boilerplate templates * python tests * tests for the api * using body instead so data don't get redefined * unit tests for coverage * ruff * docstrings * unnecessary access to keys() * Add trading economics economic calendar * dev install * Data Models disposition on the website (#5538) * pydantic v4 * flat structure * md files * Revert "md files" This reverts commitbd2170e2ad. * improve command descriptions * nice title and description * human readble data model names on left panel * implementation details section * content markdown files * markdown versioned files * showcase page * updates --------- Co-authored-by: tehcoderer <me@tehcoderer.com> * everything except tests * fix `datetime.date` import in fetcher test * modified url to remove `api_key` placeholder * record test * api key is called c here * fixed fetcher test for api key * recorded tests * refactor * life is ruff * codespell * Make Intrinio options chains great again (#5540) * add multithreading * cleanup * linting * use dateutil.parser * removed `TICKER_EXCEPTIONS` * modified `date` and `type` fields in standard model * set alias for `date` and `type` to match standards * static * static * Hotfix/fix post tests (#5555) * Fix econometrics * Fix ta * Fix qa. Remove intrinio to not be rate limited * Lint * Fix typo * obbject tests (#5558) * obbject tests * ruff * fix dev_install * fix unittests * black on nox * black on nox * nox * fix fetcher test so it can compare dates * fix intrinio tests * ruff * change to model_dum() instead (#5561) * Passing tests (#5560) * Passing tests * fix options * Fix most tests and bugs * fix forex missing params * make symbol upper in polygon fx pairs * fix fixedincome integration tests (#5564) * Fixing charting api integration tests (#5562) * fixing charting api integration tests * black * fix stocks less five API fails * fix the 5 failing stocks integration tests * recapture fmp stock news unit test * fix fmp forex api test * couple more forex integration fixes * changing the request to always use the legacy session. @jmaslek this is was broken for 3.8 and 3.9; with this change apparently all versions work - lemme know if you see any issue with this change * ruff * fix ta * add missing param * fix testers for the api * fix globalnews to use images instead of image * remove unncessary pandas import * econcal int tests * update gitignore * fix get_querystring to support lists * add missing parameters --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * Stock Historical standardization and UX improvements (#5457) * polygon add interval standard param * attempt at standardization * Alpha Vantage params standardization * rename `get_intervals` and fixed bug for extracting wrong value * missed changing it in `extract_data` * linting * polygon cleanup * modified `start_date` & `end_date` type to `datetime` from `dateType` * standardized intrinio stock historical params * fixed yfinance * linting * revert start and end date to dateType from datetime * fix alpha vantage * changed param * fix intrinio infinite loop * `validator` is `field_validator` * revert time params and fixed intervals * `outputsize` alias set in `Field` * set interval description using in-build dict * yfinance stock param standardization * static * intrinio cleanup * Polygon add api params as `PrivateAttr` * modified yfinance params to `PrivateAttr` * intrinio remove overriding date params * fixed description for AV adjusted param * fix alpha vantage intraday not working * re-record and pass unit tests * pass integration tests * Update test --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix econcal endpoint (#5567) * fix econcal for python interface * fix econcal tests * fix non supported json output * Fixes FMP index endpoint to get 1 day interval data (#5535) * fix FMP endpoint for getting index data for `1day` interval * fix `open` type to prevent validation error * modifed `validator` to `field_validator` * type of fields is `StrictFloat` * re-record and pass test * linting * `validator` -> `field_validator`, a3'd everything * Fix regression in tests. Lint * updating the integration test actions * Fix typo * Fix typo * Fix import * Publish versions `a3` to Pypi (#5568) * bump versions and script to publish * small improvements * uncomment exception * openbb * publishing guidelines * improve docs * add providers to economy api * make symbol required in stock_quote * Fix keys * Fix oecd * add comma * revert * Add quotes * Sleep * Improve tests * Improve * Feature/query transform (#5566) * inject query into transform_data * swap query and data * update missing fetchers * last test failing * sig test fetcher * black * av add `query` to `transform_data` call * transform_data: missing refactoring * fix uvicorn command in the doc * Automated examples (#5576) * Automated examples * Fix bug * Lint * static assets built on 3.8 * Revert "static assets built on 3.8" This reverts commitfb82ff7bd9. * remove assets * static assets on 3.8 * static assets on 3.8 * Wrap in quotes * Improve wrap * minor fix * rebuild 3.8 * Fix bug * Fix edge case * Lint * rebuild --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * use SecretStr for sensitive fields (#5578) * use SecretStr for sensitive fields * fix * docstring * Add tests for provider (#5583) * Add tests for provider * Test standard models * Lint * Fix standard model issues. Co-authored-by: @the-praxs * linting * `symbol` -> `is_symbol` in `economy.index_search` * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * feature/v4-biztoc-provider: Adds Biztoc provider and GlobalNews (#5546) * add biztoc provider * duplicate field * black * request headers * recapture test * move stuff around * add integration tests * duplicate OECD entry in dev_install * duplicate entry for oecd in pyproject.toml * Add Biztoc to workflow * update readme: credentials * Add Preferences to README * improve tests * fix biztoc * obbject pylint * Bug fix: serializ SecretStr before dumping to json * export credentials as json (#5592) * Check for wrong, changed, or outdated params. (#5597) * Improving `economy.cpi` for the FRED data (#5602) * remove multiindex using coding magic * Update field descriptions --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Improve error message. * Improve * Test tests (#5607) * Test tests * Add test * 4.0.0a4 PyPI publishing (#5608) * changes to publish * fix mini conflict * typo * cleaned `descriptions.py` * fix description in `cpi.py` * Add ETF extension to v4 (#5609) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add ETF historical price from yfinance (#5610) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add etf historical price standard model and route * Add etf historical data from yfinance * Add unit tests * Fix linter error. Organize imports * Update test data * Revert common descriptions erased by CPI PR * remove `symbol` from data for `stocks.ca.peers` * Test docstrings (#5613) * Test docstrings * fix minor bugs w/@IgorWounds * static only w/@IgorWounds * fix `importance` param in `economy.econcal` * right static only w/@IgorWounds * Fix econcal and add tests to noxfile * fix econcal static * re-record --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Clean up the newly created ETF extension (#5611) * Add ETF to dev_install bundle * Add integration tests for openbb-etf * Patch integration test generator scripts to produce lintable code * Add py.typed markers for extensions * user preferences descriptions (#5593) * user preferences descriptions * typo * Feature/v4-sec-provider: Add SEC provider to V4 (#5556) * coerce string type, add default=None * add sec provider and FTD function * update description * ruff * data model definitions in standard model already * duplicate oecd entries in dev_install and pyproject * actually commit * integration test * add stock search to SEC * add company filings for SEC provider * integration tests * remove duplicated line * ruff * **kwargs in Transform Data * some helper functions for later * black * add helper for mutual fund and etf lookup * add some SEC lookup helpers to a new regulators extension * black * ruff * fix test param * take institution filter out of sec stock_search * ruff * remove URL that codespell doesn't like * add cik-to-ticker map * add litigations rss feed * make openbb-regulators a dependency of openbb-sec * add SIC search * improve ftd and remove BeautifulSoup from SEC dependencies * fix parsing the zip files pre-2009 * ruff * update descriptions * recapture ftd test * tests params * typo * change limit param to 1 in test_sec_stock_ftd * Add didiers to_records method (#5588) * Add didiers to_records * unused import * Bring back polars + do what igor suggested * Make the output consistent with what it was. * Black ? * spelling. oops. almost like we have a pre commit or something * Feature/v4-price-performance: % returns for various horizons, comparable across multiple tickers. (#5618) * coerce string type, add default=None * add price_performance endpoint from FMP * black * extra period in docstring * ruff * forgot one file * Feature/ipo-calendar: V4 IPO Calendar (#5605) * coerce string type, add default=None * add intrinio ipo calendar * fix typo * sort __init__ * fix description * make requested changes * update test params * black * test updates * etf integration * Add disc router and WSJ provider * OBBject extensions (#5612) * changes to core * bug? * docstring * doc * Update credentials.py * fix model_dump * create extensions * fix docstring * doc * revert change query_exc * doc * fix container test * redirect obbject test patch * doc * rename method * move decorator to extension file * rename method extend_obbject * changes in creds model * avoid credential racing * doc * rename prop * doc * doc * remove comment * comment some code * free extension names * docstring * doc * docs * Hotfix/fix-v4-economic-calendar: Add FMP to Econ Calendar and fix some TE bugs (#5580) * coerce string type, add default=None * adds fmp to economic calendar and fixes some things with TE * ruff * etf integration test * missing provider for test * rename te cassette to economic_calendar * fix test * rename tests --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Add stocks disc endpoints (#5630) * Add stocks disc endpoints * Explicit * Lint * Add tests * Bump timeout * Feature/disc router (#5616) * Add disc router and WSJ provider * Lint * Lint * Move endpoints under ETF router * Update etf_performance.py * Add ETF info and sector exposure from FMP (#5620) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Fix linter errors after the merge * Fix more linter errors * Fix failing and add missing tests * Fix integration tests * Fix calendar ipo tests * Add ETF holdings and holding report dates from FMP (#5629) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Add etf holdings and holdings date routes and standard models * Add fmp holdings and holding dates fetchers * Update holdings fetcher to properly handle date object inputs * Add unit tests * Add integration tests * Black after merge * Fix test input data format * Disc router for equities. (#5640) * Disc router for equities. * add tests * Bug fixes in financial statements (#5537) * `validator` to `field_validator` in standard models * Polygon add `ttm` to `period` param * Revert "Polygon add `ttm` to `period` param" * Polygon add `ttm` to param `period` * `EarningsCallTranscript` standard model removed `quarter` param * use `tag` instead of `name` for correct field name * fix url for intrinio income statement * modified intrinio cash flow `transform_data` function * set optional data fields and validate dates * fix insider trading not fetching recent data * linting * refactoring * refactoring * set param alias in fmp stock insider provider model * get all quarter data for intrinio * add `limit` param to `stocks.fa.ins` * refactoring and linting * removed additional comment * linting * re-recorded and fix tests * cash flow standard model field type to `StrictFloat` * Intrinio cash flow model fixed to get all quarters' data * linting * refactoring * financial statement standard model field type to `StrictFloat` * Intrinio financial statement model get all quarter data * set `period` type to `Optional[str]` * add `period` param to balance sheet provider models * add `period` param to cash flow provider models * use alias in model dump * remove `ttm` from `period` param * revamped intrinio financials * fixed incorrect description for `limit` param * modified tests for `balance`, `cash` and `income` * re-recorded tests * skipped intrinio financial statement fetcher tests * Add ETF county weighting command with FMP data (#5645) * Remove code that wrongfully infers the filing date as end of quarter * Add etf countries command with fmp data * Add countries command to etf router * Update sector and country weighting fmp models * Fix docstring typo * Add unit tests and update mock data * Add integration tests for etf.countries * Bring back missing integration tests * Fix economic calendar integration tests * fix missing data in intrinio financials * removed inutile params from Polygon financial statement models * Intrinio IPO overhaul * tests fixed and re-recorded * Add ETF holdings performance with FMP data (#5659) * Add etf holdings performance endpoint * Add tests * Fix failing polygon fetcher tests * Split long holdings lists into chunks and update test data * Change chunk length to 500 tickers * Add stock search from FMP (#5642) Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Feature/v4 pypi (#5579) * improvements to the publish script * move scripts * initial script that builds the package * adjustments on the docs * test pypi workflow * add hour and minute to version * black * ruff * duplicate file * moving files instead * build throught the script instead * update nox file * integration tests workflow * change workflow * fix dev_install * fix in sed cmd * testing the platform only * commenting out the publishing * fix run commands * improvements to the publish script and doc * fix publish script * updating the script and the workflow * feature/v4-pypi nightly (#5589) * init * Update nightly.py * cleanup * init file * not referencing dev_utils * updating obb platform key * revert * Increase warmup time * project name on pyproject and adding the --pre flag on readme * moving to the build folder * fix noxfile * reflecting the moves on the import statements * fix pyproject path * ruff * fix paths * fix super typo * update workflows * moving the pypi terminal files into its folder --------- Co-authored-by: teh_coderer <me@tehcoderer.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * economy.calendar nasdaq (#5628) * add quandl econcal * unittest * add integration tests * replace   * fix bug TE importance * small fix * remove stuff from quandl * add nasdaq provider * add nasdaq to install files * Update test_economy_api.py * test * quandl leftovers * remove quandl econcal test * lint * replace   * ruff * lint * update nasdaq gmt * validate countries * here * no need for this * fix calendar tests * static * static * remove error * static * readme + website * readme * remove changes TE * typo * fix unittest * fix tests * Update __init__.py * Update economic_calendar.py * revamped model and added helpers for date range --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Feature/v4-dividend-calendar: Adds Nasdaq dividend calendar and moves the command out of fundamental_analysis (#5672) * add nasdaq dividend calendar and move out of fundamental_analysis * black * ruff * add random-user-agent to pyproject.toml * add nasdaq ipo calendar * add nasdaq flag for SPO to IPO calendar * add spo test param * black * dividend test * fix transform_query - nasdaq_calendar_ipo * bring back different headers for ipo calendar * remove references to test * Add disc endpoints (#5660) * Add Quandl top retail * Add tests * Add Seeking Alpha * Add Filings * Change Provider * Fix test * Add dev_install * static * static correct * y u forget me * updated deps * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * using dev install (#5673) * Expanding the `fixedincome` menu (#5655) * models and fetcher * making the fetcher visible * std model * adding the command * improvements to the models * typo * adding the command * imrpovements to dwpcr * standard model for ecb int rates * adding the fetcher for fred * standard model of ice bofa * add ice_bofa command * ruff * ice bofa fetcher * moody std model * moody * std model * add cp command * unused import * cp * spot * ruff * hqm * tmc * ffrmc * tbffr * ruff * typing fixes * buggy dates * fred fetcher tests * ruff * adding ecb as a provider * adding new provider related stuff * adding the new command eu_ycvr * models * test for ecb fetcher * Feature/v4 fixedincome int tests (#5661) * integration tests * happy ruff * mini adjustment * ruff * typo * verbose type * fix tests * docstrings everywhere and an happy pydocstyle * fix tests * Feature/user-cache-dir: Add User Preference for the Cache Directory (#5621) * add user preference for storing cached data * ruff * fix tests? * fix test key error..? * etf integration test fix * add cache dir to SEC * black * improve docs structure for V4 (#5586) * improve docs structure for V4 * moving over changes * Add Docs to the navbar * add some, re-order sidebar * fix sentence * add docs install to source instructions * insert a couple of links, fix a typo * big terminal docs usage revamps * improve toggle component for tutorials * get rid of TOCs for all terminal docs for consistency and simplicity * improve platform docs * improve bot docs content structure * remove index from bot docs * improve ON THIS PAGE to only display TOC if at least 1 element * make edit this page text and icon on same line * add author and date to docs * add basic syntax page to usage * sidebar order for usage section * move api start command to the top with the import python import * some install page additions * small improvement * refactor routines section * Update introduction-to-routines.md * Update pipeline-of-commands.md * Update introduction-to-routines.md * Update routines-for-power-users.md * Update community-routines.md * update keyboard hotkey macros * askobb page * Update askobb-feature.md * Update index.md * Update index.md * Update index.md * Update index.md * fix images * remove HeadTitle from all files where it exist * get rid of extra spacing in markdown * small update * small edit * need index at the start because of main path when homepage of docs * use openAI to create SEO for front matter on my behalf * remove table of content from sdk page * finish improving metadata SEO for SDK docs * update duplicate header * update HeadTitle to be more specific on product * remove index from bot telegram reference * delete duplicated title for platform reference * another update * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * start PR so screenshots can get attached via GitHub website * Update qa.md * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * Update crypto introduction.md * titles * another title * Update crypto dd.md * Update defi.md * Update disc.md * Update nft.md * Update onchain.md * Update ov.md * Update introduction.md updates URL * Update introduction.md add HeadTitle * Update ba.md * Update comparison.md * Update dark-pool-shorts.md * Update disc.md * fix docs (#5646) * Update fa.md * Update gov.md * Update ins.md * Update tradinghours.md * Delete website/content/terminal/menus/stocks/options/screener.md * Update Options introduction.md * Update screener head title * Update screener TOC * Update econometrics.md * Update economy head title * Update etf.md * codespell * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Contributing guidelines (#5615) * intro section * what's expected sections * improve sections * improve sections and move how to add a data point * moving qa under contributor * better intro * moving the sharing section * better expectations * small intro to the contributor guidelines * moving things under the contributor section * there is no pre commits on the platform yet * dependency management * best practices for extensions * typo * collapse options subfolder * codespell * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update fixedincome.md * url * Update forecast.md * Update settings.md (#5665) * Update forex.md * fix front matter (#5667) * Fix conflict markers that got into markdown during previous merges * Fix front matter list formatting * Fix typo * small thing * fix hyperlinks * Update .codespell.ignore * output_type options * Architectural considerations * Update sidebar to hide pro section by default * Minor copy changes * TET pattern * import statements * clarification on preferences * Minor copy changes * Lint markdown and python * fix: open index on collapsible root elements * remove old content * options title * Fix linting errors * Refactor sidebar label to url mapping condition --------- Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Add multi-ticker support to etf_countries (#5670) * add multi-ticker support to etf_countries * remove commented-out lines * normalized percent points * percent -> percentage * Fix Nasdaq Econ Calendar Fetcher (#5668) * fix nasdaq econ cal request * more html tags * add random-user-agent to pyproject * another edge case - 24H -> 00:00 * Feature/v4-unusual-options: Adds unusual options endpoint. (#5677) * add unusual options fro Intrinio * test params * move sorting * Change type * update FMP fetcher to use the V4 endpoint (#5681) * Fix price performance not parsed correctly when there is only 1 ticker (#5678) * Add crypto search standard model and FMP data for it (#5679) * Apply renaming to news data (#5684) * inegration complete * reformatted for black * fix ruff issues * revised integration * changes to versions in pyproject.toml and updated lock files * Rename models * Update tests * Fix typos here and there * Update routers * Apply rename to ultima * Properly mock api key * Mock ultima api key --------- Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> * Feature/v4-market-snapshots: Adds full market snapshots (#5473) * add stocks market snapshots from fmp * add fmp fetcher test * unused imports * add polygon to market_snapshots * update fmp market_snapshots * black * pydantic2 things * updates * change validate_obj to model_validate * polygon cleanup * tests * descriptions * black * data description * minor adjustments, using less local variables, improving readability and removing pandas * better structure * minor adjustments * lint * fix int tests --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Add NBBO Quotes, with historical, to `obb.stocks.quote()` (#5617) * coerce string type, add default=None * add polygon stock quote * limit cleanup * add greater/less than to params * limit param * black * tests * fix tests * test_etf * rename model and function to NBBO * add standard model for nbbo * improve standardization * not redifining builtin max * fix input params * integration test params * removing unused import Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * revamped code * re-recorded nbbo test * added symbol validator * added alias in field * Stock news -> Company news --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * hotfix/update-quandl-to-nasdaq: Merge Quandl + Nasdaq (#5682) * merge quandl nd nasdaq * dev_install.py * test param name * economy python integration test * Add more input types to data processing commands (#5453) * adding more supported types to data processing commands * ruff * removing unused import * docstrings * data processing types covertion * data description * test filters * ruff * fix package builder tests * ruff * removing print * Add stocks/dps module (#5638) * short volume * pyproject missed * add sec short interest with days to cover * Add FINRA OTC endopoint * some tests * rest of unit tests * Integratin test scripts * dev install * linters caught by pre commit * lines too long * Last test files * maybe it needs a lock file? * thanks pratty * Maybe ill actually listen to pratty next time * sec test date freeze * I cant hit buttons * re record tests * tests 3 * Stockgrid test * regen int test * more testing * lint * moved these fns * dis killing me * one more test * last one * Update integration tests * Fix tests picking up wrong dps route --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename Forex to Currency (#5687) * restore fields as optional (#5686) * Rename Crypto (#5689) * added `crypto.price.historical` * static * fix tests * fix incorrect label * Move model from sec to finra (#5692) * Update toml * fixed deps * add openbb-etf lock file * cleanup * cleanup (#5694) * Rename Fixed Income (#5695) * Rename Fixed Income * Add routers * Rename stocks to equity (#5688) * Rename stocks folder * Rename openbb_stocks package * Rename routers * Reroute equity menu * Update routes based on feedback * StockNews -> EquityNews * StockInfo -> EquityProfile * Rename Equity calendars * Equity peers rename * Rename discovery * Rename fundamental * Rename price command models * Rename shorts * Update charting router * Fix seeking alpha upcoming release date * Fix linting errors * Update tests * Fix tests * Skip econometrics api tests because it's python only * Update integration tests and test data * Historical analyst estimates * Skip cboe options chain test. Unable to record vcr cassette * re-record cboe cassettes * Document CBOE unit test creation caveats --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Feature/files-for-igor: Adding a few standard models for Igor (#5699) * add some standard models for Igor * codespell * update descriptions * Add devtools metapackage (#5703) * Add openbb-devtools metapackage * adding devtools to the dev_install script --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Rename econometrics commands to be more verbose (#5702) * Expose command to model map (#5706) * Rename ta qa (#5708) * Rename ta folder * Rename ta to technical * Rename qa folder * Rename qa to quantitative * Rename the actual routes in quantitative * Equity cleanup (#5707) * cleanup * static * renaming to equity cc @the-praxs * Proof reading --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Don't enforce imperative for first word of the docstring * Remove ultima from default extensions * Rename `economy` and create `index` extension (#5705) * renamed economy and re-recorded tests * static * market indices * european indices * fred indices * index constituents * tests * correct package name * oops * static * linting * Move COT commands to regulators * Rename economy.list to available_indices * Rename GDP models and clean up * Fix charting tests * Drop _indices from available_indices command * Fix obbject to_dict test --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename etf/disc (#5715) * Docs/v4-working-docs: PR to Work on V4 Docs (#5693) * Revert changes related to pydantic2 made into v3 code * Revert fred model changes in v3 * Revert pydantic2 databento model changes in v2 * Update some names and v3 lock file * Clean up openbb/package before the beta release * Platform publishing procedure (#5701) * update instructions * introducing the version script * publish message * fix platform path * reflecting version changes * getting version from installed packages instead * removing toml from dependencies * Changes to get `a7` out (#5697) * changes to get a7 out * etf menu on the pyproject.toml * poetry lock * bump `openbb-etf` to `a5` to match version * updated deps * removing ultima * removing references to a4 cc @the-praxs * Bump index menu version * poetry lock --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Update publishing instructions * Bump core dependencies in extensions and providers * Add changes to the publish script following the beta release * Update the versions in static extension map and openbb metapackage --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: Igor Radovanovic <74266147+Igor… * [BugFix] - Fix pylint possibly-used-before-assignment (#6484) * fix: comply w/ possibly used before assignment * remove disabe from .pylintrc * remove reset test * remove reset test * fix: update missing keys message * [Feature] ICE BofAML Bond Indices (FRED) (#6486) * fred bond indices * maturity dict * review items * [Feature] CLI logging (#6487) * remove old logging references * cli as logging subapp option * changing the subapp to the cli on init * [Feature] Generate settings menu from pydantic model (#6489) * Generate settings menu from pydantic model * fix tests * fix test * undo changes --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * [Feature] Create openbb-cli .dockerfile and update docs (#6485) * feat: create cli dockerfile and update docs * remove port mapping * Remove cli image and docs * remove remember contexts setting (#6496) * no prints when exporting (#6497) * [Enhancement] Convert Params Models To Dictionary Before Assigning As Private Attribute In OBBject. (#6492) * convert params models to dict * update cli test * fix test_static_command_runner_chart * mock_obbject results * minor linting adjustments * review changes * charting test mock obbject --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * chore: fix interval bug in the pynb (#6435) * chore: fix interval bug in the pynb * fix index to datetime conversion --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * Fix issue in earnings transcript not allowing FY 2025 to be retrieved (#6500) * remove ultima + althub * move twitter keys * Add one to date validator to allow FY diff. * Typo in spelling * multiple items allowed * static assets --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * add mortgage indices (#6501) * [Feature] Intrinio Delayed Options (#6505) * stashing * intrinio delayed options * stuff and things * test cassettes and static assets * options snapshots * description * commit intrinio files --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Replace some base exceptions by OpenBBError (#6502) * fix: replace base exceptions by openbberrors * Update yield_curve.py * fix typo --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] Adds Router Path For Economic Surveys (#6498) * add router path for economic surveys * chicago economic conditions * reference.json * add manufacturing outlook survey for texas * test file name --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Charting Modularity (#6477) * add accessors to the charting extension * equity views * get charting functions from the extensions/accessors * use the private variable instead * etf views * index views * crypto and currency views * technical views * economy views * fixedincome views * right description for price historical * unused * adjust test and deprecate the charting router * import views only with charting installed * adding views throught dependencies instead * removing unnecessary infra and adding entry point to charting extension * fixed income toml * removing accessor * typo * typo * adding extra params to obbject * remove things from init * rename utils to charts instead * updated readme --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Improved cached results (#6506) * flag to store cached results, or not * using keys to reference obbjects in the registry and data processing commands * out of bonds check * controlling results, by index or key and displaying charts * autocompletion * deps * forward ref --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Store defaults in hub account (#6491) * feat: store defaults in hub account * fix: rename var * feat: v3Credentials -> deprecatedCredentials * feat: allow unmapped deprecations * fix: account.save() * fix: unit tests * fix: update fallback message * [Enhancement] Fixed Income Enhancements (#6490) * improve effr and move sofr to fixedincome.rate * federal_reserve default start date * fred cassette * commercial paper * cp series map * update sofr and add federal_reserve to endpoint * examples * update ameribor * maturity_dict * add overnight bank funding rate * add federal reserve to obfr * pop footnoteId * central bank holdings descriptions * move moody's bond indices to the bond_indices endpoint * add it to the INDEX_CHOICES * improve hqm * handle none * add treasury minus fed funds to yield curve * static assets * estr * description * missed file in commit * second return statement * Merge `main` with `develop` (#6515) * add snowflake integration video (#6339) * [HotFix] Fix broken URLs in docs page. (#6368) * Fix broken URLs * use full URL to other docs pages. * [Release] 4.2.0 (#6422) * [Docs] Remove Reference to `to_chart` in OBBject. (#6096) * remove reference to to_chart in OBBject. * put chart description back in OBBject properties * [Feature] - Create openbb assets folder (#6101) * create openbb assets folder * fix unittest * rebuild --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fixes to_df() where the date series contains multiple TZ-offsets. (#6099) * allow mixed utc offset in a tz-aware date column * enforce ascending from all providers for price.historical * fix tests * add comments and apply treatment to basemodel_from_df before JSON output * yfinance consistency * add unit test * add unit test * better test * ruff --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update the quantitative extension to make more sense (#6087) * Split out a rolling submenu for the rolling functions * Make a performance and a stats submenu. * Test the statistics functions * lint * lint * dupe test * pylint * ruff * Try tests quick * black magic signature funcs * fix my custom tests * Fix the existing imports/urls * push the api update * okay I figured out whats going on * this should be all of them * Correct docstringing examples --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Fix ECB Yield Curve (#6108) * fix ecb yield curve * standard model update * Update unit-test workflow to check for changes to openbb_platform (#6109) * [Bug fix] - Fix package mypy (#6110) * fix: package mypy * types * black * [Feature] - Equity router descriptions & examples (#6103) * feat: equity/calendar * feat: compare router * fix descriptions * darkpool + discovery * fix paragraph issues * fix descriptions * fundamental part 1 * fundamental part2 * transcipts * ownership * fix * price * shorts * Update darkpool_router.py * minor fix * shorts examples * examples * ruff * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Add `exception_handler` decorator to static (#6112) * add exception handler decorator * add exception handler decorator code * updated static * rebuild to fix docstring indentation --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * update extensions list (#6114) * add missing field descriptions to yfinance equity price historical (#6116) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * remove charting extension env var (#6118) * [BugFix] Fix Company News (#6111) * fix company news * update tests * multiple symbols for polygon * don't include pageSize in Benzinga querystring, fixed as 100 * remove extra space * black * unused imports * make benzinga test cassette smaller * missing params * clear empty strings --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Allow Multiple Symbols in `equity.fundamental.metrics()` from `yfinance` (#6124) * allow multiple symbols in key_metrics from yfinance * field order thing * remove unnecessary function (#6125) * [Docs] Update OpenBB Copilot docs (#6106) * WIP: Tweak description. * WIP: Experimenting with react-player * WIP: Add copilot docs. * fixes videos width/height * WIP: Refine videos and copy. * WIP: Add last videos and sections. * Add bring-your-own-copilot section. * Tweak grammar. * Add copilot link. * Fix typos. --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * [Enhancement] Add Previous Close to DATA_DESCRIPTIONS (#6120) * add data description for previous close * ..just the one * update the model tripped by this change --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * added australia as a country also (#6131) * [Bug fix] - Fix regulator cik map standard model (#6129) * Fix regulator cik map standard model * fix description * Update cik_map.py * increase timeout to 30 (#6115) Co-authored-by: James Maslek <jmaslek11@gmail.com> * clean up some v3 deps (#6105) * clean up some v3 deps * forgot we need to do the requirements txt files * not sure it matters, but run ruff + black * am addicted to bug fixes --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Bug fix] - explicit multiple items docstring (#6127) * explicit multiple items docstring * rebuiild * rebuild again --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] Pretty Pydantic `ValidationError` exceptions (#6130) * fix validator in fmp IndexHistorical model * make ValidationError pretty * modify arg error * linting fmp IndexHistorical * black * remove unused code * tmx etf info (#6132) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] - Platform V4 Markdown Generator V2 (#6094) * add recent `openapi.json` * fix data types in models * removed `openapi.json` * set default date value as None in PolygonCurrencyPairs class * add function to generate reference.json file * reworked function to improve readability * reword function to add seo metadata * add functions for creating markdown sections * add code to extract data card markdown title * add additional functions for generating index and data models file * extract first sentence of the description for cards * code cleanup and documentation * linting * linting polygon models * add openbb import statement in create_reference_markdown_examples function * add POST method functions * cleanup; reworked generate_reference_index_files function * moved development section to 7th position in the sidebar * fix POST function params default value add standard flag to QueryParams and Data fields cleanup * add type expansion from package_builder.MethodDefinition * sort data models cards alphabetically make printing less verbose * make MAX_CARDS global display less content in cards in Commannds section * cleanup * Remove '_' from the cards under Commands section * " to ' in econometrics/causality * replace ' with " in ReferenceCard for reference dir index files * remove extra . from the quantile function description * shoutout to @deeleeramone for finding POST method description bug! * set correct value for standard field * handle BaseModel types in provider data fields * unit tests for the platform markdown generator v2 * yeet 'Default' and 'Optional' columns in the 'Data' section * last minute bug fix * add info for multiple symbols * make multiple items info same as platform static * organize sections properly * sort reference sub-directories alphabetically * extra space in 'OBBject extra' description * add type expansion for fields with multiple items POST method cleanup --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Docs] Adds Example Notebook for the Implied Earnings Move (#6128) * adds example notebook for the implied earnings move * remove commented out line --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] - Sync with new openapi.json (#6137) * feat: create data tabs * fix: uncomment * fix: remove unecessary comment * sort side bar * comment * uncomment * use .dev functions.json + clean traverse * fix futures example * fix example * point to .co * Fix the v3 markdown generation workflow (#6138) * fix workflow * debug time * see if the docs generate at least * ahhhh i found it * getting there * put the test first * some keys cleanup * small change to error message * update functions.json (#6140) * fix intraday check in charting ta_class (#6119) Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * [BugFix] Display EconDB as source for macro (#6143) * [BugFix] Disable Intrinio `InstitutionalOwnership` model (#6142) * disable fetcher in init and fetcher tests * disable provider test params from equity python and api tests * updated static * add more examples into findSymbols (#6139) Co-authored-by: James Maslek <jmaslek11@gmail.com> * [BugFix] Fix SEC ETF Holdings Parsing Exception (#6121) * fix etf holdings * linting * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/update xl docs (#6145) * remove print * update obb.get docs * example * md lint * fix get reference (#6147) * [BugFix] Filter OECD data using `start_date` and `end_date` parameters (#6144) * move constant dicts to constants.py filter by start_date and end_date * black * black again again * Merge 'main' into 'develop' (#6151) * Release/3.2.4 (#5696) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * 3.2.3->3.2.4 * Changelogs * new changelog --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Andrew <andrew.kenreich@gmail.com> Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Luqman <luqazino@gmail.com> Co-authored-by: Adwait <111136306+AdwaitSalankar@users.noreply.github.com> Co-authored-by: Abhishek Amar <66067391+abhishek-amar@users.noreply.github.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Ramazan <guvencramazan@outlook.com> Co-authored-by: joshuabuildsthings <joshuabuildsthings@users.noreply.github.com> Co-authored-by: wojda <114031148+polooner@users.noreply.github.com> Co-authored-by: Bim Phomthong <118195204+bimbolimbo@users.noreply.github.com> * Release/4.0.1 (#5840) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Release/3.2.4 (#5704) * 3.2.3->3.2.4 * Changelogs * new changelog * OpenBB Platform v4 (#5225) * change location * check something * add cache * fixed auth w/@IgorWounds and @montezdesousa * fixes for econometrics * include Darren auth suggestions * some routers included if dev + chg hub backend var * coverage router should not be here * update docker readme * forgot to check auth here * Change extension imports * update docstrings and readme * headers function wasnt being called, just referenced * relative import * econometrics add headers everywhere * Fix QA * Fix TA * Fix test * Fix python interface QA and TA * Lint * Cleanup * Change path * make the changes and some etf models * tests for command_runner * ruff * solving naming issues on pytest * Update some docstrings, fix typos and lint * solving econometrics instantiating wrong openbb * chaging the way pytest runs * messing around with the imports * ruff * Change template to add platform considerations (#5533) * change template to add platform considerations * @the-praxs suggestions * solving __pycache__ issue * removing typo * ci yml * making linters happy (i guess) * Improve Omega Ratio and docstrings * chaging pro validation hash * ruff * Fix OLS Summary and lint * Add OECD Provider for economy extension (#5534) * Add record to docs * update a couple of cboe models * Fix econometrics bugs. Make tests pass. Lint. * black * ruff * pydantic v2: remove deprecated Extra * pydantic v2: self.dict -> self.model_dump * revert pydantic * revert the revert * try 1: pin urllib3 < 2 * Revert "try 1: pin urllib3 < 2" This reverts commit3736c311cb. * Revert dep * Fix * re-lock * Skip all tests when doing cspell in pre-commit * Resolve linter errors * Add OECD to install script * Add OECD * Resolve more linter errors * Exclude static files of v4 python from ruff * More linting * Another attempt to resolve even more linting errors * Change how Literal is used * ticker. symbol. consistent. @piiq * change ticker field in Stock Search to is_symbol * Update Cboe model for stocks_search -> is_symbol parameter. * Fix issue * Lint * Small QA to rename SDK to Platform (#5544) * SDK -> Platform in docs * renamed in core * renamed in openbb `init` * `sdk` variable renamed as `platform` --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * `validator` -> `field_validator` in standard models * Standard convention for multi-ticker symbols (#5549) * standardize symbol input param in forex and crypto historical data * static * linting * Fix stock_search integration test params * Update dependencies and linting on the CI (#5550) * Remove ruff and black from platform dependencies * Update codespell configuration * Lint python code * Add toml and tomli to root dev dependencies * Update requirements.txt files * Fix buggy docstring in python package methods (#5548) * fix buggy docstring for methods * remove space * fix typing * avoid name collision with validator * Revert "avoid name collision with validator" This reverts commit8a30a44555. * typing * rebuild * python 3.8, ParamSpec not available * lint * ruff noqa * Merge with develop (#5551) * Charting extension integration tests (#5547) * initial proposal for integration tests on the charting extension * int tests for charting generation * python generator * ruff * boilerplate templates * python tests * tests for the api * using body instead so data don't get redefined * unit tests for coverage * ruff * docstrings * unnecessary access to keys() * Add trading economics economic calendar * dev install * Data Models disposition on the website (#5538) * pydantic v4 * flat structure * md files * Revert "md files" This reverts commitbd2170e2ad. * improve command descriptions * nice title and description * human readble data model names on left panel * implementation details section * content markdown files * markdown versioned files * showcase page * updates --------- Co-authored-by: tehcoderer <me@tehcoderer.com> * everything except tests * fix `datetime.date` import in fetcher test * modified url to remove `api_key` placeholder * record test * api key is called c here * fixed fetcher test for api key * recorded tests * refactor * life is ruff * codespell * Make Intrinio options chains great again (#5540) * add multithreading * cleanup * linting * use dateutil.parser * removed `TICKER_EXCEPTIONS` * modified `date` and `type` fields in standard model * set alias for `date` and `type` to match standards * static * static * Hotfix/fix post tests (#5555) * Fix econometrics * Fix ta * Fix qa. Remove intrinio to not be rate limited * Lint * Fix typo * obbject tests (#5558) * obbject tests * ruff * fix dev_install * fix unittests * black on nox * black on nox * nox * fix fetcher test so it can compare dates * fix intrinio tests * ruff * change to model_dum() instead (#5561) * Passing tests (#5560) * Passing tests * fix options * Fix most tests and bugs * fix forex missing params * make symbol upper in polygon fx pairs * fix fixedincome integration tests (#5564) * Fixing charting api integration tests (#5562) * fixing charting api integration tests * black * fix stocks less five API fails * fix the 5 failing stocks integration tests * recapture fmp stock news unit test * fix fmp forex api test * couple more forex integration fixes * changing the request to always use the legacy session. @jmaslek this is was broken for 3.8 and 3.9; with this change apparently all versions work - lemme know if you see any issue with this change * ruff * fix ta * add missing param * fix testers for the api * fix globalnews to use images instead of image * remove unncessary pandas import * econcal int tests * update gitignore * fix get_querystring to support lists * add missing parameters --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * Stock Historical standardization and UX improvements (#5457) * polygon add interval standard param * attempt at standardization * Alpha Vantage params standardization * rename `get_intervals` and fixed bug for extracting wrong value * missed changing it in `extract_data` * linting * polygon cleanup * modified `start_date` & `end_date` type to `datetime` from `dateType` * standardized intrinio stock historical params * fixed yfinance * linting * revert start and end date to dateType from datetime * fix alpha vantage * changed param * fix intrinio infinite loop * `validator` is `field_validator` * revert time params and fixed intervals * `outputsize` alias set in `Field` * set interval description using in-build dict * yfinance stock param standardization * static * intrinio cleanup * Polygon add api params as `PrivateAttr` * modified yfinance params to `PrivateAttr` * intrinio remove overriding date params * fixed description for AV adjusted param * fix alpha vantage intraday not working * re-record and pass unit tests * pass integration tests * Update test --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix econcal endpoint (#5567) * fix econcal for python interface * fix econcal tests * fix non supported json output * Fixes FMP index endpoint to get 1 day interval data (#5535) * fix FMP endpoint for getting index data for `1day` interval * fix `open` type to prevent validation error * modifed `validator` to `field_validator` * type of fields is `StrictFloat` * re-record and pass test * linting * `validator` -> `field_validator`, a3'd everything * Fix regression in tests. Lint * updating the integration test actions * Fix typo * Fix typo * Fix import * Publish versions `a3` to Pypi (#5568) * bump versions and script to publish * small improvements * uncomment exception * openbb * publishing guidelines * improve docs * add providers to economy api * make symbol required in stock_quote * Fix keys * Fix oecd * add comma * revert * Add quotes * Sleep * Improve tests * Improve * Feature/query transform (#5566) * inject query into transform_data * swap query and data * update missing fetchers * last test failing * sig test fetcher * black * av add `query` to `transform_data` call * transform_data: missing refactoring * fix uvicorn command in the doc * Automated examples (#5576) * Automated examples * Fix bug * Lint * static assets built on 3.8 * Revert "static assets built on 3.8" This reverts commitfb82ff7bd9. * remove assets * static assets on 3.8 * static assets on 3.8 * Wrap in quotes * Improve wrap * minor fix * rebuild 3.8 * Fix bug * Fix edge case * Lint * rebuild --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * use SecretStr for sensitive fields (#5578) * use SecretStr for sensitive fields * fix * docstring * Add tests for provider (#5583) * Add tests for provider * Test standard models * Lint * Fix standard model issues. Co-authored-by: @the-praxs * linting * `symbol` -> `is_symbol` in `economy.index_search` * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * feature/v4-biztoc-provider: Adds Biztoc provider and GlobalNews (#5546) * add biztoc provider * duplicate field * black * request headers * recapture test * move stuff around * add integration tests * duplicate OECD entry in dev_install * duplicate entry for oecd in pyproject.toml * Add Biztoc to workflow * update readme: credentials * Add Preferences to README * improve tests * fix biztoc * obbject pylint * Bug fix: serializ SecretStr before dumping to json * export credentials as json (#5592) * Check for wrong, changed, or outdated params. (#5597) * Improving `economy.cpi` for the FRED data (#5602) * remove multiindex using coding magic * Update field descriptions --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Improve error message. * Improve * Test tests (#5607) * Test tests * Add test * 4.0.0a4 PyPI publishing (#5608) * changes to publish * fix mini conflict * typo * cleaned `descriptions.py` * fix description in `cpi.py` * Add ETF extension to v4 (#5609) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add ETF historical price from yfinance (#5610) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add etf historical price standard model and route * Add etf historical data from yfinance * Add unit tests * Fix linter error. Organize imports * Update test data * Revert common descriptions erased by CPI PR * remove `symbol` from data for `stocks.ca.peers` * Test docstrings (#5613) * Test docstrings * fix minor bugs w/@IgorWounds * static only w/@IgorWounds * fix `importance` param in `economy.econcal` * right static only w/@IgorWounds * Fix econcal and add tests to noxfile * fix econcal static * re-record --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Clean up the newly created ETF extension (#5611) * Add ETF to dev_install bundle * Add integration tests for openbb-etf * Patch integration test generator scripts to produce lintable code * Add py.typed markers for extensions * user preferences descriptions (#5593) * user preferences descriptions * typo * Feature/v4-sec-provider: Add SEC provider to V4 (#5556) * coerce string type, add default=None * add sec provider and FTD function * update description * ruff * data model definitions in standard model already * duplicate oecd entries in dev_install and pyproject * actually commit * integration test * add stock search to SEC * add company filings for SEC provider * integration tests * remove duplicated line * ruff * **kwargs in Transform Data * some helper functions for later * black * add helper for mutual fund and etf lookup * add some SEC lookup helpers to a new regulators extension * black * ruff * fix test param * take institution filter out of sec stock_search * ruff * remove URL that codespell doesn't like * add cik-to-ticker map * add litigations rss feed * make openbb-regulators a dependency of openbb-sec * add SIC search * improve ftd and remove BeautifulSoup from SEC dependencies * fix parsing the zip files pre-2009 * ruff * update descriptions * recapture ftd test * tests params * typo * change limit param to 1 in test_sec_stock_ftd * Add didiers to_records method (#5588) * Add didiers to_records * unused import * Bring back polars + do what igor suggested * Make the output consistent with what it was. * Black ? * spelling. oops. almost like we have a pre commit or something * Feature/v4-price-performance: % returns for various horizons, comparable across multiple tickers. (#5618) * coerce string type, add default=None * add price_performance endpoint from FMP * black * extra period in docstring * ruff * forgot one file * Feature/ipo-calendar: V4 IPO Calendar (#5605) * coerce string type, add default=None * add intrinio ipo calendar * fix typo * sort __init__ * fix description * make requested changes * update test params * black * test updates * etf integration * Add disc router and WSJ provider * OBBject extensions (#5612) * changes to core * bug? * docstring * doc * Update credentials.py * fix model_dump * create extensions * fix docstring * doc * revert change query_exc * doc * fix container test * redirect obbject test patch * doc * rename method * move decorator to extension file * rename method extend_obbject * changes in creds model * avoid credential racing * doc * rename prop * doc * doc * remove comment * comment some code * free extension names * docstring * doc * docs * Hotfix/fix-v4-economic-calendar: Add FMP to Econ Calendar and fix some TE bugs (#5580) * coerce string type, add default=None * adds fmp to economic calendar and fixes some things with TE * ruff * etf integration test * missing provider for test * rename te cassette to economic_calendar * fix test * rename tests --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Add stocks disc endpoints (#5630) * Add stocks disc endpoints * Explicit * Lint * Add tests * Bump timeout * Feature/disc router (#5616) * Add disc router and WSJ provider * Lint * Lint * Move endpoints under ETF router * Update etf_performance.py * Add ETF info and sector exposure from FMP (#5620) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Fix linter errors after the merge * Fix more linter errors * Fix failing and add missing tests * Fix integration tests * Fix calendar ipo tests * Add ETF holdings and holding report dates from FMP (#5629) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Add etf holdings and holdings date routes and standard models * Add fmp holdings and holding dates fetchers * Update holdings fetcher to properly handle date object inputs * Add unit tests * Add integration tests * Black after merge * Fix test input data format * Disc router for equities. (#5640) * Disc router for equities. * add tests * Bug fixes in financial statements (#5537) * `validator` to `field_validator` in standard models * Polygon add `ttm` to `period` param * Revert "Polygon add `ttm` to `period` param" * Polygon add `ttm` to param `period` * `EarningsCallTranscript` standard model removed `quarter` param * use `tag` instead of `name` for correct field name * fix url for intrinio income statement * modified intrinio cash flow `transform_data` function * set optional data fields and validate dates * fix insider trading not fetching recent data * linting * refactoring * refactoring * set param alias in fmp stock insider provider model * get all quarter data for intrinio * add `limit` param to `stocks.fa.ins` * refactoring and linting * removed additional comment * linting * re-recorded and fix tests * cash flow standard model field type to `StrictFloat` * Intrinio cash flow model fixed to get all quarters' data * linting * refactoring * financial statement standard model field type to `StrictFloat` * Intrinio financial statement model get all quarter data * set `period` type to `Optional[str]` * add `period` param to balance sheet provider models * add `period` param to cash flow provider models * use alias in model dump * remove `ttm` from `period` param * revamped intrinio financials * fixed incorrect description for `limit` param * modified tests for `balance`, `cash` and `income` * re-recorded tests * skipped intrinio financial statement fetcher tests * Add ETF county weighting command with FMP data (#5645) * Remove code that wrongfully infers the filing date as end of quarter * Add etf countries command with fmp data * Add countries command to etf router * Update sector and country weighting fmp models * Fix docstring typo * Add unit tests and update mock data * Add integration tests for etf.countries * Bring back missing integration tests * Fix economic calendar integration tests * fix missing data in intrinio financials * removed inutile params from Polygon financial statement models * Intrinio IPO overhaul * tests fixed and re-recorded * Add ETF holdings performance with FMP data (#5659) * Add etf holdings performance endpoint * Add tests * Fix failing polygon fetcher tests * Split long holdings lists into chunks and update test data * Change chunk length to 500 tickers * Add stock search from FMP (#5642) Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Feature/v4 pypi (#5579) * improvements to the publish script * move scripts * initial script that builds the package * adjustments on the docs * test pypi workflow * add hour and minute to version * black * ruff * duplicate file * moving files instead * build throught the script instead * update nox file * integration tests workflow * change workflow * fix dev_install * fix in sed cmd * testing the platform only * commenting out the publishing * fix run commands * improvements to the publish script and doc * fix publish script * updating the script and the workflow * feature/v4-pypi nightly (#5589) * init * Update nightly.py * cleanup * init file * not referencing dev_utils * updating obb platform key * revert * Increase warmup time * project name on pyproject and adding the --pre flag on readme * moving to the build folder * fix noxfile * reflecting the moves on the import statements * fix pyproject path * ruff * fix paths * fix super typo * update workflows * moving the pypi terminal files into its folder --------- Co-authored-by: teh_coderer <me@tehcoderer.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * economy.calendar nasdaq (#5628) * add quandl econcal * unittest * add integration tests * replace   * fix bug TE importance * small fix * remove stuff from quandl * add nasdaq provider * add nasdaq to install files * Update test_economy_api.py * test * quandl leftovers * remove quandl econcal test * lint * replace   * ruff * lint * update nasdaq gmt * validate countries * here * no need for this * fix calendar tests * static * static * remove error * static * readme + website * readme * remove changes TE * typo * fix unittest * fix tests * Update __init__.py * Update economic_calendar.py * revamped model and added helpers for date range --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Feature/v4-dividend-calendar: Adds Nasdaq dividend calendar and moves the command out of fundamental_analysis (#5672) * add nasdaq dividend calendar and move out of fundamental_analysis * black * ruff * add random-user-agent to pyproject.toml * add nasdaq ipo calendar * add nasdaq flag for SPO to IPO calendar * add spo test param * black * dividend test * fix transform_query - nasdaq_calendar_ipo * bring back different headers for ipo calendar * remove references to test * Add disc endpoints (#5660) * Add Quandl top retail * Add tests * Add Seeking Alpha * Add Filings * Change Provider * Fix test * Add dev_install * static * static correct * y u forget me * updated deps * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * using dev install (#5673) * Expanding the `fixedincome` menu (#5655) * models and fetcher * making the fetcher visible * std model * adding the command * improvements to the models * typo * adding the command * imrpovements to dwpcr * standard model for ecb int rates * adding the fetcher for fred * standard model of ice bofa * add ice_bofa command * ruff * ice bofa fetcher * moody std model * moody * std model * add cp command * unused import * cp * spot * ruff * hqm * tmc * ffrmc * tbffr * ruff * typing fixes * buggy dates * fred fetcher tests * ruff * adding ecb as a provider * adding new provider related stuff * adding the new command eu_ycvr * models * test for ecb fetcher * Feature/v4 fixedincome int tests (#5661) * integration tests * happy ruff * mini adjustment * ruff * typo * verbose type * fix tests * docstrings everywhere and an happy pydocstyle * fix tests * Feature/user-cache-dir: Add User Preference for the Cache Directory (#5621) * add user preference for storing cached data * ruff * fix tests? * fix test key error..? * etf integration test fix * add cache dir to SEC * black * improve docs structure for V4 (#5586) * improve docs structure for V4 * moving over changes * Add Docs to the navbar * add some, re-order sidebar * fix sentence * add docs install to source instructions * insert a couple of links, fix a typo * big terminal docs usage revamps * improve toggle component for tutorials * get rid of TOCs for all terminal docs for consistency and simplicity * improve platform docs * improve bot docs content structure * remove index from bot docs * improve ON THIS PAGE to only display TOC if at least 1 element * make edit this page text and icon on same line * add author and date to docs * add basic syntax page to usage * sidebar order for usage section * move api start command to the top with the import python import * some install page additions * small improvement * refactor routines section * Update introduction-to-routines.md * Update pipeline-of-commands.md * Update introduction-to-routines.md * Update routines-for-power-users.md * Update community-routines.md * update keyboard hotkey macros * askobb page * Update askobb-feature.md * Update index.md * Update index.md * Update index.md * Update index.md * fix images * remove HeadTitle from all files where it exist * get rid of extra spacing in markdown * small update * small edit * need index at the start because of main path when homepage of docs * use openAI to create SEO for front matter on my behalf * remove table of content from sdk page * finish improving metadata SEO for SDK docs * update duplicate header * update HeadTitle to be more specific on product * remove index from bot telegram reference * delete duplicated title for platform reference * another update * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * start PR so screenshots can get attached via GitHub website * Update qa.md * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * Update crypto introduction.md * titles * another title * Update crypto dd.md * Update defi.md * Update disc.md * Update nft.md * Update onchain.md * Update ov.md * Update introduction.md updates URL * Update introduction.md add HeadTitle * Update ba.md * Update comparison.md * Update dark-pool-shorts.md * Update disc.md * fix docs (#5646) * Update fa.md * Update gov.md * Update ins.md * Update tradinghours.md * Delete website/content/terminal/menus/stocks/options/screener.md * Update Options introduction.md * Update screener head title * Update screener TOC * Update econometrics.md * Update economy head title * Update etf.md * codespell * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Contributing guidelines (#5615) * intro section * what's expected sections * improve sections * improve sections and move how to add a data point * moving qa under contributor * better intro * moving the sharing section * better expectations * small intro to the contributor guidelines * moving things under the contributor section * there is no pre commits on the platform yet * dependency management * best practices for extensions * typo * collapse options subfolder * codespell * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update fixedincome.md * url * Update forecast.md * Update settings.md (#5665) * Update forex.md * fix front matter (#5667) * Fix conflict markers that got into markdown during previous merges * Fix front matter list formatting * Fix typo * small thing * fix hyperlinks * Update .codespell.ignore * output_type options * Architectural considerations * Update sidebar to hide pro section by default * Minor copy changes * TET pattern * import statements * clarification on preferences * Minor copy changes * Lint markdown and python * fix: open index on collapsible root elements * remove old content * options title * Fix linting errors * Refactor sidebar label to url mapping condition --------- Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Add multi-ticker support to etf_countries (#5670) * add multi-ticker support to etf_countries * remove commented-out lines * normalized percent points * percent -> percentage * Fix Nasdaq Econ Calendar Fetcher (#5668) * fix nasdaq econ cal request * more html tags * add random-user-agent to pyproject * another edge case - 24H -> 00:00 * Feature/v4-unusual-options: Adds unusual options endpoint. (#5677) * add unusual options fro Intrinio * test params * move sorting * Change type * update FMP fetcher to use the V4 endpoint (#5681) * Fix price performance not parsed correctly when there is only 1 ticker (#5678) * Add crypto search standard model and FMP data for it (#5679) * Apply renaming to news data (#5684) * inegration complete * reformatted for black * fix ruff issues * revised integration * changes to versions in pyproject.toml and updated lock files * Rename models * Update tests * Fix typos here and there * Update routers * Apply rename to ultima * Properly mock api key * Mock ultima api key --------- Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> * Feature/v4-market-snapshots: Adds full market snapshots (#5473) * add stocks market snapshots from fmp * add fmp fetcher test * unused imports * add polygon to market_snapshots * update fmp market_snapshots * black * pydantic2 things * updates * change validate_obj to model_validate * polygon cleanup * tests * descriptions * black * data description * minor adjustments, using less local variables, improving readability and removing pandas * better structure * minor adjustments * lint * fix int tests --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Add NBBO Quotes, with historical, to `obb.stocks.quote()` (#5617) * coerce string type, add default=None * add polygon stock quote * limit cleanup * add greater/less than to params * limit param * black * tests * fix tests * test_etf * rename model and function to NBBO * add standard model for nbbo * improve standardization * not redifining builtin max * fix input params * integration test params * removing unused import Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * revamped code * re-recorded nbbo test * added symbol validator * added alias in field * Stock news -> Company news --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * hotfix/update-quandl-to-nasdaq: Merge Quandl + Nasdaq (#5682) * merge quandl nd nasdaq * dev_install.py * test param name * economy python integration test * Add more input types to data processing commands (#5453) * adding more supported types to data processing commands * ruff * removing unused import * docstrings * data processing types covertion * data description * test filters * ruff * fix package builder tests * ruff * removing print * Add stocks/dps module (#5638) * short volume * pyproject missed * add sec short interest with days to cover * Add FINRA OTC endopoint * some tests * rest of unit tests * Integratin test scripts * dev install * linters caught by pre commit * lines too long * Last test files * maybe it needs a lock file? * thanks pratty * Maybe ill actually listen to pratty next time * sec test date freeze * I cant hit buttons * re record tests * tests 3 * Stockgrid test * regen int test * more testing * lint * moved these fns * dis killing me * one more test * last one * Update integration tests * Fix tests picking up wrong dps route --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename Forex to Currency (#5687) * restore fields as optional (#5686) * Rename Crypto (#5689) * added `crypto.price.historical` * static * fix tests * fix incorrect label * Move model from sec to finra (#5692) * Update toml * fixed deps * add openbb-etf lock file * cleanup * cleanup (#5694) * Rename Fixed Income (#5695) * Rename Fixed Income * Add routers * Rename stocks to equity (#5688) * Rename stocks folder * Rename openbb_stocks package * Rename routers * Reroute equity menu * Update routes based on feedback * StockNews -> EquityNews * StockInfo -> EquityProfile * Rename Equity calendars * Equity peers rename * Rename discovery * Rename fundamental * Rename price command models * Rename shorts * Update charting router * Fix seeking alpha upcoming release date * Fix linting errors * Update tests * Fix tests * Skip econometrics api tests because it's python only * Update integration tests and test data * Historical analyst estimates * Skip cboe options chain test. Unable to record vcr cassette * re-record cboe cassettes * Document CBOE unit test creation caveats --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Feature/files-for-igor: Adding a few standard models for Igor (#5699) * add some standard models for Igor * codespell * update descriptions * Add devtools metapackage (#5703) * Add openbb-devtools metapackage * adding devtools to the dev_install script --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Rename econometrics commands to be more verbose (#5702) * Expose command to model map (#5706) * Rename ta qa (#5708) * Rename ta folder * Rename ta to technical * Rename qa folder * Rename qa to quantitative * Rename the actual routes in quantitative * Equity cleanup (#5707) * cleanup * static * renaming to equity cc @the-praxs * Proof reading --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Don't enforce imperative for first word of the docstring * Remove ultima from default extensions * Rename `economy` and create `index` extension (#5705) * renamed economy and re-recorded tests * static * market indices * european indices * fred indices * index constituents * tests * correct package name * oops * static * linting * Move COT commands to regulators * Rename economy.list to available_indices * Rename GDP models and clean up * Fix charting tests * Drop _indices from available_indices command * Fix obbject to_dict test --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename etf/disc (#5715) * Docs/v4-working-docs: PR to Work on V4 Docs (#5693) * Revert changes related to pydantic2 made into v3 code * Revert fred model changes in v3 * Revert pydantic2 databento model changes in v2 * Update some names and v3 lock file * Clean up openbb/package before the beta release * Platform publishing procedure (#5701) * update instructions * introducing the version script * publish message * fix platform path * reflecting version changes * getting version from installed packages instead * removing toml from dependencies * Changes to get `a7` out (#5697) * changes to get a7 out * etf menu on the pyproject.toml * poetry lock * bump `openbb-etf` to `a5` to match version * updated deps * removing ultima * removing references to a4 cc @the-praxs * Bump index menu version * poetry lock --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Update publishing instructions * Bump core dependencies in extensions and providers * Add changes to the publish script following the beta release * Update the versions in static extension map and openbb metapackage --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: Igor Radovanovic <7… * econdb context manager (#6512) Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * Release/4.2.3 (#6514) * ref to docs.openbb.co * lint * better exception handling * fix examples * revert changes in package dir * revert changes in reference.json * minor adjustment to the publish.md * changelog * core * extensions * better spacing * static assets * latest versions * publish * skip deprecated dirs * bump cli * [Feature] Add Nasdaq To Equity Screener (#6521) * nasdaq equity screener * commit the limit param * missing test params * the other missing param * sector mapping * fix biztoc * Patch test (#6523) * Clarify (#6518) Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * Merge 'main' into 'develop' (#6527) * add snowflake integration video (#6339) * [HotFix] Fix broken URLs in docs page. (#6368) * Fix broken URLs * use full URL to other docs pages. * [Release] 4.2.0 (#6422) * [Docs] Remove Reference to `to_chart` in OBBject. (#6096) * remove reference to to_chart in OBBject. * put chart description back in OBBject properties * [Feature] - Create openbb assets folder (#6101) * create openbb assets folder * fix unittest * rebuild --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fixes to_df() where the date series contains multiple TZ-offsets. (#6099) * allow mixed utc offset in a tz-aware date column * enforce ascending from all providers for price.historical * fix tests * add comments and apply treatment to basemodel_from_df before JSON output * yfinance consistency * add unit test * add unit test * better test * ruff --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update the quantitative extension to make more sense (#6087) * Split out a rolling submenu for the rolling functions * Make a performance and a stats submenu. * Test the statistics functions * lint * lint * dupe test * pylint * ruff * Try tests quick * black magic signature funcs * fix my custom tests * Fix the existing imports/urls * push the api update * okay I figured out whats going on * this should be all of them * Correct docstringing examples --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Fix ECB Yield Curve (#6108) * fix ecb yield curve * standard model update * Update unit-test workflow to check for changes to openbb_platform (#6109) * [Bug fix] - Fix package mypy (#6110) * fix: package mypy * types * black * [Feature] - Equity router descriptions & examples (#6103) * feat: equity/calendar * feat: compare router * fix descriptions * darkpool + discovery * fix paragraph issues * fix descriptions * fundamental part 1 * fundamental part2 * transcipts * ownership * fix * price * shorts * Update darkpool_router.py * minor fix * shorts examples * examples * ruff * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Add `exception_handler` decorator to static (#6112) * add exception handler decorator * add exception handler decorator code * updated static * rebuild to fix docstring indentation --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * update extensions list (#6114) * add missing field descriptions to yfinance equity price historical (#6116) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * remove charting extension env var (#6118) * [BugFix] Fix Company News (#6111) * fix company news * update tests * multiple symbols for polygon * don't include pageSize in Benzinga querystring, fixed as 100 * remove extra space * black * unused imports * make benzinga test cassette smaller * missing params * clear empty strings --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Allow Multiple Symbols in `equity.fundamental.metrics()` from `yfinance` (#6124) * allow multiple symbols in key_metrics from yfinance * field order thing * remove unnecessary function (#6125) * [Docs] Update OpenBB Copilot docs (#6106) * WIP: Tweak description. * WIP: Experimenting with react-player * WIP: Add copilot docs. * fixes videos width/height * WIP: Refine videos and copy. * WIP: Add last videos and sections. * Add bring-your-own-copilot section. * Tweak grammar. * Add copilot link. * Fix typos. --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * [Enhancement] Add Previous Close to DATA_DESCRIPTIONS (#6120) * add data description for previous close * ..just the one * update the model tripped by this change --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * added australia as a country also (#6131) * [Bug fix] - Fix regulator cik map standard model (#6129) * Fix regulator cik map standard model * fix description * Update cik_map.py * increase timeout to 30 (#6115) Co-authored-by: James Maslek <jmaslek11@gmail.com> * clean up some v3 deps (#6105) * clean up some v3 deps * forgot we need to do the requirements txt files * not sure it matters, but run ruff + black * am addicted to bug fixes --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Bug fix] - explicit multiple items docstring (#6127) * explicit multiple items docstring * rebuiild * rebuild again --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] Pretty Pydantic `ValidationError` exceptions (#6130) * fix validator in fmp IndexHistorical model * make ValidationError pretty * modify arg error * linting fmp IndexHistorical * black * remove unused code * tmx etf info (#6132) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] - Platform V4 Markdown Generator V2 (#6094) * add recent `openapi.json` * fix data types in models * removed `openapi.json` * set default date value as None in PolygonCurrencyPairs class * add function to generate reference.json file * reworked function to improve readability * reword function to add seo metadata * add functions for creating markdown sections * add code to extract data card markdown title * add additional functions for generating index and data models file * extract first sentence of the description for cards * code cleanup and documentation * linting * linting polygon models * add openbb import statement in create_reference_markdown_examples function * add POST method functions * cleanup; reworked generate_reference_index_files function * moved development section to 7th position in the sidebar * fix POST function params default value add standard flag to QueryParams and Data fields cleanup * add type expansion from package_builder.MethodDefinition * sort data models cards alphabetically make printing less verbose * make MAX_CARDS global display less content in cards in Commannds section * cleanup * Remove '_' from the cards under Commands section * " to ' in econometrics/causality * replace ' with " in ReferenceCard for reference dir index files * remove extra . from the quantile function description * shoutout to @deeleeramone for finding POST method description bug! * set correct value for standard field * handle BaseModel types in provider data fields * unit tests for the platform markdown generator v2 * yeet 'Default' and 'Optional' columns in the 'Data' section * last minute bug fix * add info for multiple symbols * make multiple items info same as platform static * organize sections properly * sort reference sub-directories alphabetically * extra space in 'OBBject extra' description * add type expansion for fields with multiple items POST method cleanup --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Docs] Adds Example Notebook for the Implied Earnings Move (#6128) * adds example notebook for the implied earnings move * remove commented out line --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] - Sync with new openapi.json (#6137) * feat: create data tabs * fix: uncomment * fix: remove unecessary comment * sort side bar * comment * uncomment * use .dev functions.json + clean traverse * fix futures example * fix example * point to .co * Fix the v3 markdown generation workflow (#6138) * fix workflow * debug time * see if the docs generate at least * ahhhh i found it * getting there * put the test first * some keys cleanup * small change to error message * update functions.json (#6140) * fix intraday check in charting ta_class (#6119) Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * [BugFix] Display EconDB as source for macro (#6143) * [BugFix] Disable Intrinio `InstitutionalOwnership` model (#6142) * disable fetcher in init and fetcher tests * disable provider test params from equity python and api tests * updated static * add more examples into findSymbols (#6139) Co-authored-by: James Maslek <jmaslek11@gmail.com> * [BugFix] Fix SEC ETF Holdings Parsing Exception (#6121) * fix etf holdings * linting * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/update xl docs (#6145) * remove print * update obb.get docs * example * md lint * fix get reference (#6147) * [BugFix] Filter OECD data using `start_date` and `end_date` parameters (#6144) * move constant dicts to constants.py filter by start_date and end_date * black * black again again * Merge 'main' into 'develop' (#6151) * Release/3.2.4 (#5696) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * 3.2.3->3.2.4 * Changelogs * new changelog --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Andrew <andrew.kenreich@gmail.com> Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Luqman <luqazino@gmail.com> Co-authored-by: Adwait <111136306+AdwaitSalankar@users.noreply.github.com> Co-authored-by: Abhishek Amar <66067391+abhishek-amar@users.noreply.github.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Ramazan <guvencramazan@outlook.com> Co-authored-by: joshuabuildsthings <joshuabuildsthings@users.noreply.github.com> Co-authored-by: wojda <114031148+polooner@users.noreply.github.com> Co-authored-by: Bim Phomthong <118195204+bimbolimbo@users.noreply.github.com> * Release/4.0.1 (#5840) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Release/3.2.4 (#5704) * 3.2.3->3.2.4 * Changelogs * new changelog * OpenBB Platform v4 (#5225) * change location * check something * add cache * fixed auth w/@IgorWounds and @montezdesousa * fixes for econometrics * include Darren auth suggestions * some routers included if dev + chg hub backend var * coverage router should not be here * update docker readme * forgot to check auth here * Change extension imports * update docstrings and readme * headers function wasnt being called, just referenced * relative import * econometrics add headers everywhere * Fix QA * Fix TA * Fix test * Fix python interface QA and TA * Lint * Cleanup * Change path * make the changes and some etf models * tests for command_runner * ruff * solving naming issues on pytest * Update some docstrings, fix typos and lint * solving econometrics instantiating wrong openbb * chaging the way pytest runs * messing around with the imports * ruff * Change template to add platform considerations (#5533) * change template to add platform considerations * @the-praxs suggestions * solving __pycache__ issue * removing typo * ci yml * making linters happy (i guess) * Improve Omega Ratio and docstrings * chaging pro validation hash * ruff * Fix OLS Summary and lint * Add OECD Provider for economy extension (#5534) * Add record to docs * update a couple of cboe models * Fix econometrics bugs. Make tests pass. Lint. * black * ruff * pydantic v2: remove deprecated Extra * pydantic v2: self.dict -> self.model_dump * revert pydantic * revert the revert * try 1: pin urllib3 < 2 * Revert "try 1: pin urllib3 < 2" This reverts commit3736c311cb. * Revert dep * Fix * re-lock * Skip all tests when doing cspell in pre-commit * Resolve linter errors * Add OECD to install script * Add OECD * Resolve more linter errors * Exclude static files of v4 python from ruff * More linting * Another attempt to resolve even more linting errors * Change how Literal is used * ticker. symbol. consistent. @piiq * change ticker field in Stock Search to is_symbol * Update Cboe model for stocks_search -> is_symbol parameter. * Fix issue * Lint * Small QA to rename SDK to Platform (#5544) * SDK -> Platform in docs * renamed in core * renamed in openbb `init` * `sdk` variable renamed as `platform` --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * `validator` -> `field_validator` in standard models * Standard convention for multi-ticker symbols (#5549) * standardize symbol input param in forex and crypto historical data * static * linting * Fix stock_search integration test params * Update dependencies and linting on the CI (#5550) * Remove ruff and black from platform dependencies * Update codespell configuration * Lint python code * Add toml and tomli to root dev dependencies * Update requirements.txt files * Fix buggy docstring in python package methods (#5548) * fix buggy docstring for methods * remove space * fix typing * avoid name collision with validator * Revert "avoid name collision with validator" This reverts commit8a30a44555. * typing * rebuild * python 3.8, ParamSpec not available * lint * ruff noqa * Merge with develop (#5551) * Charting extension integration tests (#5547) * initial proposal for integration tests on the charting extension * int tests for charting generation * python generator * ruff * boilerplate templates * python tests * tests for the api * using body instead so data don't get redefined * unit tests for coverage * ruff * docstrings * unnecessary access to keys() * Add trading economics economic calendar * dev install * Data Models disposition on the website (#5538) * pydantic v4 * flat structure * md files * Revert "md files" This reverts commitbd2170e2ad. * improve command descriptions * nice title and description * human readble data model names on left panel * implementation details section * content markdown files * markdown versioned files * showcase page * updates --------- Co-authored-by: tehcoderer <me@tehcoderer.com> * everything except tests * fix `datetime.date` import in fetcher test * modified url to remove `api_key` placeholder * record test * api key is called c here * fixed fetcher test for api key * recorded tests * refactor * life is ruff * codespell * Make Intrinio options chains great again (#5540) * add multithreading * cleanup * linting * use dateutil.parser * removed `TICKER_EXCEPTIONS` * modified `date` and `type` fields in standard model * set alias for `date` and `type` to match standards * static * static * Hotfix/fix post tests (#5555) * Fix econometrics * Fix ta * Fix qa. Remove intrinio to not be rate limited * Lint * Fix typo * obbject tests (#5558) * obbject tests * ruff * fix dev_install * fix unittests * black on nox * black on nox * nox * fix fetcher test so it can compare dates * fix intrinio tests * ruff * change to model_dum() instead (#5561) * Passing tests (#5560) * Passing tests * fix options * Fix most tests and bugs * fix forex missing params * make symbol upper in polygon fx pairs * fix fixedincome integration tests (#5564) * Fixing charting api integration tests (#5562) * fixing charting api integration tests * black * fix stocks less five API fails * fix the 5 failing stocks integration tests * recapture fmp stock news unit test * fix fmp forex api test * couple more forex integration fixes * changing the request to always use the legacy session. @jmaslek this is was broken for 3.8 and 3.9; with this change apparently all versions work - lemme know if you see any issue with this change * ruff * fix ta * add missing param * fix testers for the api * fix globalnews to use images instead of image * remove unncessary pandas import * econcal int tests * update gitignore * fix get_querystring to support lists * add missing parameters --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * Stock Historical standardization and UX improvements (#5457) * polygon add interval standard param * attempt at standardization * Alpha Vantage params standardization * rename `get_intervals` and fixed bug for extracting wrong value * missed changing it in `extract_data` * linting * polygon cleanup * modified `start_date` & `end_date` type to `datetime` from `dateType` * standardized intrinio stock historical params * fixed yfinance * linting * revert start and end date to dateType from datetime * fix alpha vantage * changed param * fix intrinio infinite loop * `validator` is `field_validator` * revert time params and fixed intervals * `outputsize` alias set in `Field` * set interval description using in-build dict * yfinance stock param standardization * static * intrinio cleanup * Polygon add api params as `PrivateAttr` * modified yfinance params to `PrivateAttr` * intrinio remove overriding date params * fixed description for AV adjusted param * fix alpha vantage intraday not working * re-record and pass unit tests * pass integration tests * Update test --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix econcal endpoint (#5567) * fix econcal for python interface * fix econcal tests * fix non supported json output * Fixes FMP index endpoint to get 1 day interval data (#5535) * fix FMP endpoint for getting index data for `1day` interval * fix `open` type to prevent validation error * modifed `validator` to `field_validator` * type of fields is `StrictFloat` * re-record and pass test * linting * `validator` -> `field_validator`, a3'd everything * Fix regression in tests. Lint * updating the integration test actions * Fix typo * Fix typo * Fix import * Publish versions `a3` to Pypi (#5568) * bump versions and script to publish * small improvements * uncomment exception * openbb * publishing guidelines * improve docs * add providers to economy api * make symbol required in stock_quote * Fix keys * Fix oecd * add comma * revert * Add quotes * Sleep * Improve tests * Improve * Feature/query transform (#5566) * inject query into transform_data * swap query and data * update missing fetchers * last test failing * sig test fetcher * black * av add `query` to `transform_data` call * transform_data: missing refactoring * fix uvicorn command in the doc * Automated examples (#5576) * Automated examples * Fix bug * Lint * static assets built on 3.8 * Revert "static assets built on 3.8" This reverts commitfb82ff7bd9. * remove assets * static assets on 3.8 * static assets on 3.8 * Wrap in quotes * Improve wrap * minor fix * rebuild 3.8 * Fix bug * Fix edge case * Lint * rebuild --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * use SecretStr for sensitive fields (#5578) * use SecretStr for sensitive fields * fix * docstring * Add tests for provider (#5583) * Add tests for provider * Test standard models * Lint * Fix standard model issues. Co-authored-by: @the-praxs * linting * `symbol` -> `is_symbol` in `economy.index_search` * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * feature/v4-biztoc-provider: Adds Biztoc provider and GlobalNews (#5546) * add biztoc provider * duplicate field * black * request headers * recapture test * move stuff around * add integration tests * duplicate OECD entry in dev_install * duplicate entry for oecd in pyproject.toml * Add Biztoc to workflow * update readme: credentials * Add Preferences to README * improve tests * fix biztoc * obbject pylint * Bug fix: serializ SecretStr before dumping to json * export credentials as json (#5592) * Check for wrong, changed, or outdated params. (#5597) * Improving `economy.cpi` for the FRED data (#5602) * remove multiindex using coding magic * Update field descriptions --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Improve error message. * Improve * Test tests (#5607) * Test tests * Add test * 4.0.0a4 PyPI publishing (#5608) * changes to publish * fix mini conflict * typo * cleaned `descriptions.py` * fix description in `cpi.py` * Add ETF extension to v4 (#5609) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add ETF historical price from yfinance (#5610) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add etf historical price standard model and route * Add etf historical data from yfinance * Add unit tests * Fix linter error. Organize imports * Update test data * Revert common descriptions erased by CPI PR * remove `symbol` from data for `stocks.ca.peers` * Test docstrings (#5613) * Test docstrings * fix minor bugs w/@IgorWounds * static only w/@IgorWounds * fix `importance` param in `economy.econcal` * right static only w/@IgorWounds * Fix econcal and add tests to noxfile * fix econcal static * re-record --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Clean up the newly created ETF extension (#5611) * Add ETF to dev_install bundle * Add integration tests for openbb-etf * Patch integration test generator scripts to produce lintable code * Add py.typed markers for extensions * user preferences descriptions (#5593) * user preferences descriptions * typo * Feature/v4-sec-provider: Add SEC provider to V4 (#5556) * coerce string type, add default=None * add sec provider and FTD function * update description * ruff * data model definitions in standard model already * duplicate oecd entries in dev_install and pyproject * actually commit * integration test * add stock search to SEC * add company filings for SEC provider * integration tests * remove duplicated line * ruff * **kwargs in Transform Data * some helper functions for later * black * add helper for mutual fund and etf lookup * add some SEC lookup helpers to a new regulators extension * black * ruff * fix test param * take institution filter out of sec stock_search * ruff * remove URL that codespell doesn't like * add cik-to-ticker map * add litigations rss feed * make openbb-regulators a dependency of openbb-sec * add SIC search * improve ftd and remove BeautifulSoup from SEC dependencies * fix parsing the zip files pre-2009 * ruff * update descriptions * recapture ftd test * tests params * typo * change limit param to 1 in test_sec_stock_ftd * Add didiers to_records method (#5588) * Add didiers to_records * unused import * Bring back polars + do what igor suggested * Make the output consistent with what it was. * Black ? * spelling. oops. almost like we have a pre commit or something * Feature/v4-price-performance: % returns for various horizons, comparable across multiple tickers. (#5618) * coerce string type, add default=None * add price_performance endpoint from FMP * black * extra period in docstring * ruff * forgot one file * Feature/ipo-calendar: V4 IPO Calendar (#5605) * coerce string type, add default=None * add intrinio ipo calendar * fix typo * sort __init__ * fix description * make requested changes * update test params * black * test updates * etf integration * Add disc router and WSJ provider * OBBject extensions (#5612) * changes to core * bug? * docstring * doc * Update credentials.py * fix model_dump * create extensions * fix docstring * doc * revert change query_exc * doc * fix container test * redirect obbject test patch * doc * rename method * move decorator to extension file * rename method extend_obbject * changes in creds model * avoid credential racing * doc * rename prop * doc * doc * remove comment * comment some code * free extension names * docstring * doc * docs * Hotfix/fix-v4-economic-calendar: Add FMP to Econ Calendar and fix some TE bugs (#5580) * coerce string type, add default=None * adds fmp to economic calendar and fixes some things with TE * ruff * etf integration test * missing provider for test * rename te cassette to economic_calendar * fix test * rename tests --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Add stocks disc endpoints (#5630) * Add stocks disc endpoints * Explicit * Lint * Add tests * Bump timeout * Feature/disc router (#5616) * Add disc router and WSJ provider * Lint * Lint * Move endpoints under ETF router * Update etf_performance.py * Add ETF info and sector exposure from FMP (#5620) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Fix linter errors after the merge * Fix more linter errors * Fix failing and add missing tests * Fix integration tests * Fix calendar ipo tests * Add ETF holdings and holding report dates from FMP (#5629) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Add etf holdings and holdings date routes and standard models * Add fmp holdings and holding dates fetchers * Update holdings fetcher to properly handle date object inputs * Add unit tests * Add integration tests * Black after merge * Fix test input data format * Disc router for equities. (#5640) * Disc router for equities. * add tests * Bug fixes in financial statements (#5537) * `validator` to `field_validator` in standard models * Polygon add `ttm` to `period` param * Revert "Polygon add `ttm` to `period` param" * Polygon add `ttm` to param `period` * `EarningsCallTranscript` standard model removed `quarter` param * use `tag` instead of `name` for correct field name * fix url for intrinio income statement * modified intrinio cash flow `transform_data` function * set optional data fields and validate dates * fix insider trading not fetching recent data * linting * refactoring * refactoring * set param alias in fmp stock insider provider model * get all quarter data for intrinio * add `limit` param to `stocks.fa.ins` * refactoring and linting * removed additional comment * linting * re-recorded and fix tests * cash flow standard model field type to `StrictFloat` * Intrinio cash flow model fixed to get all quarters' data * linting * refactoring * financial statement standard model field type to `StrictFloat` * Intrinio financial statement model get all quarter data * set `period` type to `Optional[str]` * add `period` param to balance sheet provider models * add `period` param to cash flow provider models * use alias in model dump * remove `ttm` from `period` param * revamped intrinio financials * fixed incorrect description for `limit` param * modified tests for `balance`, `cash` and `income` * re-recorded tests * skipped intrinio financial statement fetcher tests * Add ETF county weighting command with FMP data (#5645) * Remove code that wrongfully infers the filing date as end of quarter * Add etf countries command with fmp data * Add countries command to etf router * Update sector and country weighting fmp models * Fix docstring typo * Add unit tests and update mock data * Add integration tests for etf.countries * Bring back missing integration tests * Fix economic calendar integration tests * fix missing data in intrinio financials * removed inutile params from Polygon financial statement models * Intrinio IPO overhaul * tests fixed and re-recorded * Add ETF holdings performance with FMP data (#5659) * Add etf holdings performance endpoint * Add tests * Fix failing polygon fetcher tests * Split long holdings lists into chunks and update test data * Change chunk length to 500 tickers * Add stock search from FMP (#5642) Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Feature/v4 pypi (#5579) * improvements to the publish script * move scripts * initial script that builds the package * adjustments on the docs * test pypi workflow * add hour and minute to version * black * ruff * duplicate file * moving files instead * build throught the script instead * update nox file * integration tests workflow * change workflow * fix dev_install * fix in sed cmd * testing the platform only * commenting out the publishing * fix run commands * improvements to the publish script and doc * fix publish script * updating the script and the workflow * feature/v4-pypi nightly (#5589) * init * Update nightly.py * cleanup * init file * not referencing dev_utils * updating obb platform key * revert * Increase warmup time * project name on pyproject and adding the --pre flag on readme * moving to the build folder * fix noxfile * reflecting the moves on the import statements * fix pyproject path * ruff * fix paths * fix super typo * update workflows * moving the pypi terminal files into its folder --------- Co-authored-by: teh_coderer <me@tehcoderer.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * economy.calendar nasdaq (#5628) * add quandl econcal * unittest * add integration tests * replace   * fix bug TE importance * small fix * remove stuff from quandl * add nasdaq provider * add nasdaq to install files * Update test_economy_api.py * test * quandl leftovers * remove quandl econcal test * lint * replace   * ruff * lint * update nasdaq gmt * validate countries * here * no need for this * fix calendar tests * static * static * remove error * static * readme + website * readme * remove changes TE * typo * fix unittest * fix tests * Update __init__.py * Update economic_calendar.py * revamped model and added helpers for date range --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Feature/v4-dividend-calendar: Adds Nasdaq dividend calendar and moves the command out of fundamental_analysis (#5672) * add nasdaq dividend calendar and move out of fundamental_analysis * black * ruff * add random-user-agent to pyproject.toml * add nasdaq ipo calendar * add nasdaq flag for SPO to IPO calendar * add spo test param * black * dividend test * fix transform_query - nasdaq_calendar_ipo * bring back different headers for ipo calendar * remove references to test * Add disc endpoints (#5660) * Add Quandl top retail * Add tests * Add Seeking Alpha * Add Filings * Change Provider * Fix test * Add dev_install * static * static correct * y u forget me * updated deps * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * using dev install (#5673) * Expanding the `fixedincome` menu (#5655) * models and fetcher * making the fetcher visible * std model * adding the command * improvements to the models * typo * adding the command * imrpovements to dwpcr * standard model for ecb int rates * adding the fetcher for fred * standard model of ice bofa * add ice_bofa command * ruff * ice bofa fetcher * moody std model * moody * std model * add cp command * unused import * cp * spot * ruff * hqm * tmc * ffrmc * tbffr * ruff * typing fixes * buggy dates * fred fetcher tests * ruff * adding ecb as a provider * adding new provider related stuff * adding the new command eu_ycvr * models * test for ecb fetcher * Feature/v4 fixedincome int tests (#5661) * integration tests * happy ruff * mini adjustment * ruff * typo * verbose type * fix tests * docstrings everywhere and an happy pydocstyle * fix tests * Feature/user-cache-dir: Add User Preference for the Cache Directory (#5621) * add user preference for storing cached data * ruff * fix tests? * fix test key error..? * etf integration test fix * add cache dir to SEC * black * improve docs structure for V4 (#5586) * improve docs structure for V4 * moving over changes * Add Docs to the navbar * add some, re-order sidebar * fix sentence * add docs install to source instructions * insert a couple of links, fix a typo * big terminal docs usage revamps * improve toggle component for tutorials * get rid of TOCs for all terminal docs for consistency and simplicity * improve platform docs * improve bot docs content structure * remove index from bot docs * improve ON THIS PAGE to only display TOC if at least 1 element * make edit this page text and icon on same line * add author and date to docs * add basic syntax page to usage * sidebar order for usage section * move api start command to the top with the import python import * some install page additions * small improvement * refactor routines section * Update introduction-to-routines.md * Update pipeline-of-commands.md * Update introduction-to-routines.md * Update routines-for-power-users.md * Update community-routines.md * update keyboard hotkey macros * askobb page * Update askobb-feature.md * Update index.md * Update index.md * Update index.md * Update index.md * fix images * remove HeadTitle from all files where it exist * get rid of extra spacing in markdown * small update * small edit * need index at the start because of main path when homepage of docs * use openAI to create SEO for front matter on my behalf * remove table of content from sdk page * finish improving metadata SEO for SDK docs * update duplicate header * update HeadTitle to be more specific on product * remove index from bot telegram reference * delete duplicated title for platform reference * another update * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * start PR so screenshots can get attached via GitHub website * Update qa.md * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * Update crypto introduction.md * titles * another title * Update crypto dd.md * Update defi.md * Update disc.md * Update nft.md * Update onchain.md * Update ov.md * Update introduction.md updates URL * Update introduction.md add HeadTitle * Update ba.md * Update comparison.md * Update dark-pool-shorts.md * Update disc.md * fix docs (#5646) * Update fa.md * Update gov.md * Update ins.md * Update tradinghours.md * Delete website/content/terminal/menus/stocks/options/screener.md * Update Options introduction.md * Update screener head title * Update screener TOC * Update econometrics.md * Update economy head title * Update etf.md * codespell * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Contributing guidelines (#5615) * intro section * what's expected sections * improve sections * improve sections and move how to add a data point * moving qa under contributor * better intro * moving the sharing section * better expectations * small intro to the contributor guidelines * moving things under the contributor section * there is no pre commits on the platform yet * dependency management * best practices for extensions * typo * collapse options subfolder * codespell * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update fixedincome.md * url * Update forecast.md * Update settings.md (#5665) * Update forex.md * fix front matter (#5667) * Fix conflict markers that got into markdown during previous merges * Fix front matter list formatting * Fix typo * small thing * fix hyperlinks * Update .codespell.ignore * output_type options * Architectural considerations * Update sidebar to hide pro section by default * Minor copy changes * TET pattern * import statements * clarification on preferences * Minor copy changes * Lint markdown and python * fix: open index on collapsible root elements * remove old content * options title * Fix linting errors * Refactor sidebar label to url mapping condition --------- Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Add multi-ticker support to etf_countries (#5670) * add multi-ticker support to etf_countries * remove commented-out lines * normalized percent points * percent -> percentage * Fix Nasdaq Econ Calendar Fetcher (#5668) * fix nasdaq econ cal request * more html tags * add random-user-agent to pyproject * another edge case - 24H -> 00:00 * Feature/v4-unusual-options: Adds unusual options endpoint. (#5677) * add unusual options fro Intrinio * test params * move sorting * Change type * update FMP fetcher to use the V4 endpoint (#5681) * Fix price performance not parsed correctly when there is only 1 ticker (#5678) * Add crypto search standard model and FMP data for it (#5679) * Apply renaming to news data (#5684) * inegration complete * reformatted for black * fix ruff issues * revised integration * changes to versions in pyproject.toml and updated lock files * Rename models * Update tests * Fix typos here and there * Update routers * Apply rename to ultima * Properly mock api key * Mock ultima api key --------- Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> * Feature/v4-market-snapshots: Adds full market snapshots (#5473) * add stocks market snapshots from fmp * add fmp fetcher test * unused imports * add polygon to market_snapshots * update fmp market_snapshots * black * pydantic2 things * updates * change validate_obj to model_validate * polygon cleanup * tests * descriptions * black * data description * minor adjustments, using less local variables, improving readability and removing pandas * better structure * minor adjustments * lint * fix int tests --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Add NBBO Quotes, with historical, to `obb.stocks.quote()` (#5617) * coerce string type, add default=None * add polygon stock quote * limit cleanup * add greater/less than to params * limit param * black * tests * fix tests * test_etf * rename model and function to NBBO * add standard model for nbbo * improve standardization * not redifining builtin max * fix input params * integration test params * removing unused import Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * revamped code * re-recorded nbbo test * added symbol validator * added alias in field * Stock news -> Company news --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * hotfix/update-quandl-to-nasdaq: Merge Quandl + Nasdaq (#5682) * merge quandl nd nasdaq * dev_install.py * test param name * economy python integration test * Add more input types to data processing commands (#5453) * adding more supported types to data processing commands * ruff * removing unused import * docstrings * data processing types covertion * data description * test filters * ruff * fix package builder tests * ruff * removing print * Add stocks/dps module (#5638) * short volume * pyproject missed * add sec short interest with days to cover * Add FINRA OTC endopoint * some tests * rest of unit tests * Integratin test scripts * dev install * linters caught by pre commit * lines too long * Last test files * maybe it needs a lock file? * thanks pratty * Maybe ill actually listen to pratty next time * sec test date freeze * I cant hit buttons * re record tests * tests 3 * Stockgrid test * regen int test * more testing * lint * moved these fns * dis killing me * one more test * last one * Update integration tests * Fix tests picking up wrong dps route --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename Forex to Currency (#5687) * restore fields as optional (#5686) * Rename Crypto (#5689) * added `crypto.price.historical` * static * fix tests * fix incorrect label * Move model from sec to finra (#5692) * Update toml * fixed deps * add openbb-etf lock file * cleanup * cleanup (#5694) * Rename Fixed Income (#5695) * Rename Fixed Income * Add routers * Rename stocks to equity (#5688) * Rename stocks folder * Rename openbb_stocks package * Rename routers * Reroute equity menu * Update routes based on feedback * StockNews -> EquityNews * StockInfo -> EquityProfile * Rename Equity calendars * Equity peers rename * Rename discovery * Rename fundamental * Rename price command models * Rename shorts * Update charting router * Fix seeking alpha upcoming release date * Fix linting errors * Update tests * Fix tests * Skip econometrics api tests because it's python only * Update integration tests and test data * Historical analyst estimates * Skip cboe options chain test. Unable to record vcr cassette * re-record cboe cassettes * Document CBOE unit test creation caveats --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Feature/files-for-igor: Adding a few standard models for Igor (#5699) * add some standard models for Igor * codespell * update descriptions * Add devtools metapackage (#5703) * Add openbb-devtools metapackage * adding devtools to the dev_install script --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Rename econometrics commands to be more verbose (#5702) * Expose command to model map (#5706) * Rename ta qa (#5708) * Rename ta folder * Rename ta to technical * Rename qa folder * Rename qa to quantitative * Rename the actual routes in quantitative * Equity cleanup (#5707) * cleanup * static * renaming to equity cc @the-praxs * Proof reading --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Don't enforce imperative for first word of the docstring * Remove ultima from default extensions * Rename `economy` and create `index` extension (#5705) * renamed economy and re-recorded tests * static * market indices * european indices * fred indices * index constituents * tests * correct package name * oops * static * linting * Move COT commands to regulators * Rename economy.list to available_indices * Rename GDP models and clean up * Fix charting tests * Drop _indices from available_indices command * Fix obbject to_dict test --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename etf/disc (#5715) * Docs/v4-working-docs: PR to Work on V4 Docs (#5693) * Revert changes related to pydantic2 made into v3 code * Revert fred model changes in v3 * Revert pydantic2 databento model changes in v2 * Update some names and v3 lock file * Clean up openbb/package before the beta release * Platform publishing procedure (#5701) * update instructions * introducing the version script * publish message * fix platform path * reflecting version changes * getting version from installed packages instead * removing toml from dependencies * Changes to get `a7` out (#5697) * changes to get a7 out * etf menu on the pyproject.toml * poetry lock * bump `openbb-etf` to `a5` to match version * updated deps * removing ultima * removing references to a4 cc @the-praxs * Bump index menu version * poetry lock --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Update publishing instructions * Bump core dependencies in extensions and providers * Add changes to the publish script following the beta release * Update the versions in static extension map and openbb metapackage --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: Igor Radovanovic <7… * Hotfix/fix-chart - Fix data hand off. (#6511) * fix chart * fix chart * lints and adjustments * black --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * [Enhancement] Improve provider fallback message (#6507) * feat: improve fallback message * fix: non blocking request * timeout * fix: undo request --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Exclude default values when model dumping (#6516) * fix: exclude defaults when model dumping * fix: rename method in system service * fix: v3 to v4 keys mapping * feat: settings json templates * fix: unit test * fix: unit test * Release/openbb charting 2.1.3 (#6528) * add snowflake integration video (#6339) * [HotFix] Fix broken URLs in docs page. (#6368) * Fix broken URLs * use full URL to other docs pages. * [Release] 4.2.0 (#6422) * [Docs] Remove Reference to `to_chart` in OBBject. (#6096) * remove reference to to_chart in OBBject. * put chart description back in OBBject properties * [Feature] - Create openbb assets folder (#6101) * create openbb assets folder * fix unittest * rebuild --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fixes to_df() where the date series contains multiple TZ-offsets. (#6099) * allow mixed utc offset in a tz-aware date column * enforce ascending from all providers for price.historical * fix tests * add comments and apply treatment to basemodel_from_df before JSON output * yfinance consistency * add unit test * add unit test * better test * ruff --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update the quantitative extension to make more sense (#6087) * Split out a rolling submenu for the rolling functions * Make a performance and a stats submenu. * Test the statistics functions * lint * lint * dupe test * pylint * ruff * Try tests quick * black magic signature funcs * fix my custom tests * Fix the existing imports/urls * push the api update * okay I figured out whats going on * this should be all of them * Correct docstringing examples --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Fix ECB Yield Curve (#6108) * fix ecb yield curve * standard model update * Update unit-test workflow to check for changes to openbb_platform (#6109) * [Bug fix] - Fix package mypy (#6110) * fix: package mypy * types * black * [Feature] - Equity router descriptions & examples (#6103) * feat: equity/calendar * feat: compare router * fix descriptions * darkpool + discovery * fix paragraph issues * fix descriptions * fundamental part 1 * fundamental part2 * transcipts * ownership * fix * price * shorts * Update darkpool_router.py * minor fix * shorts examples * examples * ruff * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Add `exception_handler` decorator to static (#6112) * add exception handler decorator * add exception handler decorator code * updated static * rebuild to fix docstring indentation --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * update extensions list (#6114) * add missing field descriptions to yfinance equity price historical (#6116) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * remove charting extension env var (#6118) * [BugFix] Fix Company News (#6111) * fix company news * update tests * multiple symbols for polygon * don't include pageSize in Benzinga querystring, fixed as 100 * remove extra space * black * unused imports * make benzinga test cassette smaller * missing params * clear empty strings --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Allow Multiple Symbols in `equity.fundamental.metrics()` from `yfinance` (#6124) * allow multiple symbols in key_metrics from yfinance * field order thing * remove unnecessary function (#6125) * [Docs] Update OpenBB Copilot docs (#6106) * WIP: Tweak description. * WIP: Experimenting with react-player * WIP: Add copilot docs. * fixes videos width/height * WIP: Refine videos and copy. * WIP: Add last videos and sections. * Add bring-your-own-copilot section. * Tweak grammar. * Add copilot link. * Fix typos. --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * [Enhancement] Add Previous Close to DATA_DESCRIPTIONS (#6120) * add data description for previous close * ..just the one * update the model tripped by this change --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * added australia as a country also (#6131) * [Bug fix] - Fix regulator cik map standard model (#6129) * Fix regulator cik map standard model * fix description * Update cik_map.py * increase timeout to 30 (#6115) Co-authored-by: James Maslek <jmaslek11@gmail.com> * clean up some v3 deps (#6105) * clean up some v3 deps * forgot we need to do the requirements txt files * not sure it matters, but run ruff + black * am addicted to bug fixes --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Bug fix] - explicit multiple items docstring (#6127) * explicit multiple items docstring * rebuiild * rebuild again --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] Pretty Pydantic `ValidationError` exceptions (#6130) * fix validator in fmp IndexHistorical model * make ValidationError pretty * modify arg error * linting fmp IndexHistorical * black * remove unused code * tmx etf info (#6132) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] - Platform V4 Markdown Generator V2 (#6094) * add recent `openapi.json` * fix data types in models * removed `openapi.json` * set default date value as None in PolygonCurrencyPairs class * add function to generate reference.json file * reworked function to improve readability * reword function to add seo metadata * add functions for creating markdown sections * add code to extract data card markdown title * add additional functions for generating index and data models file * extract first sentence of the description for cards * code cleanup and documentation * linting * linting polygon models * add openbb import statement in create_reference_markdown_examples function * add POST method functions * cleanup; reworked generate_reference_index_files function * moved development section to 7th position in the sidebar * fix POST function params default value add standard flag to QueryParams and Data fields cleanup * add type expansion from package_builder.MethodDefinition * sort data models cards alphabetically make printing less verbose * make MAX_CARDS global display less content in cards in Commannds section * cleanup * Remove '_' from the cards under Commands section * " to ' in econometrics/causality * replace ' with " in ReferenceCard for reference dir index files * remove extra . from the quantile function description * shoutout to @deeleeramone for finding POST method description bug! * set correct value for standard field * handle BaseModel types in provider data fields * unit tests for the platform markdown generator v2 * yeet 'Default' and 'Optional' columns in the 'Data' section * last minute bug fix * add info for multiple symbols * make multiple items info same as platform static * organize sections properly * sort reference sub-directories alphabetically * extra space in 'OBBject extra' description * add type expansion for fields with multiple items POST method cleanup --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Docs] Adds Example Notebook for the Implied Earnings Move (#6128) * adds example notebook for the implied earnings move * remove commented out line --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] - Sync with new openapi.json (#6137) * feat: create data tabs * fix: uncomment * fix: remove unecessary comment * sort side bar * comment * uncomment * use .dev functions.json + clean traverse * fix futures example * fix example * point to .co * Fix the v3 markdown generation workflow (#6138) * fix workflow * debug time * see if the docs generate at least * ahhhh i found it * getting there * put the test first * some keys cleanup * small change to error message * update functions.json (#6140) * fix intraday check in charting ta_class (#6119) Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * [BugFix] Display EconDB as source for macro (#6143) * [BugFix] Disable Intrinio `InstitutionalOwnership` model (#6142) * disable fetcher in init and fetcher tests * disable provider test params from equity python and api tests * updated static * add more examples into findSymbols (#6139) Co-authored-by: James Maslek <jmaslek11@gmail.com> * [BugFix] Fix SEC ETF Holdings Parsing Exception (#6121) * fix etf holdings * linting * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/update xl docs (#6145) * remove print * update obb.get docs * example * md lint * fix get reference (#6147) * [BugFix] Filter OECD data using `start_date` and `end_date` parameters (#6144) * move constant dicts to constants.py filter by start_date and end_date * black * black again again * Merge 'main' into 'develop' (#6151) * Release/3.2.4 (#5696) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * 3.2.3->3.2.4 * Changelogs * new changelog --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Andrew <andrew.kenreich@gmail.com> Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Luqman <luqazino@gmail.com> Co-authored-by: Adwait <111136306+AdwaitSalankar@users.noreply.github.com> Co-authored-by: Abhishek Amar <66067391+abhishek-amar@users.noreply.github.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Ramazan <guvencramazan@outlook.com> Co-authored-by: joshuabuildsthings <joshuabuildsthings@users.noreply.github.com> Co-authored-by: wojda <114031148+polooner@users.noreply.github.com> Co-authored-by: Bim Phomthong <118195204+bimbolimbo@users.noreply.github.com> * Release/4.0.1 (#5840) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Release/3.2.4 (#5704) * 3.2.3->3.2.4 * Changelogs * new changelog * OpenBB Platform v4 (#5225) * change location * check something * add cache * fixed auth w/@IgorWounds and @montezdesousa * fixes for econometrics * include Darren auth suggestions * some routers included if dev + chg hub backend var * coverage router should not be here * update docker readme * forgot to check auth here * Change extension imports * update docstrings and readme * headers function wasnt being called, just referenced * relative import * econometrics add headers everywhere * Fix QA * Fix TA * Fix test * Fix python interface QA and TA * Lint * Cleanup * Change path * make the changes and some etf models * tests for command_runner * ruff * solving naming issues on pytest * Update some docstrings, fix typos and lint * solving econometrics instantiating wrong openbb * chaging the way pytest runs * messing around with the imports * ruff * Change template to add platform considerations (#5533) * change template to add platform considerations * @the-praxs suggestions * solving __pycache__ issue * removing typo * ci yml * making linters happy (i guess) * Improve Omega Ratio and docstrings * chaging pro validation hash * ruff * Fix OLS Summary and lint * Add OECD Provider for economy extension (#5534) * Add record to docs * update a couple of cboe models * Fix econometrics bugs. Make tests pass. Lint. * black * ruff * pydantic v2: remove deprecated Extra * pydantic v2: self.dict -> self.model_dump * revert pydantic * revert the revert * try 1: pin urllib3 < 2 * Revert "try 1: pin urllib3 < 2" This reverts commit3736c311cb. * Revert dep * Fix * re-lock * Skip all tests when doing cspell in pre-commit * Resolve linter errors * Add OECD to install script * Add OECD * Resolve more linter errors * Exclude static files of v4 python from ruff * More linting * Another attempt to resolve even more linting errors * Change how Literal is used * ticker. symbol. consistent. @piiq * change ticker field in Stock Search to is_symbol * Update Cboe model for stocks_search -> is_symbol parameter. * Fix issue * Lint * Small QA to rename SDK to Platform (#5544) * SDK -> Platform in docs * renamed in core * renamed in openbb `init` * `sdk` variable renamed as `platform` --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * `validator` -> `field_validator` in standard models * Standard convention for multi-ticker symbols (#5549) * standardize symbol input param in forex and crypto historical data * static * linting * Fix stock_search integration test params * Update dependencies and linting on the CI (#5550) * Remove ruff and black from platform dependencies * Update codespell configuration * Lint python code * Add toml and tomli to root dev dependencies * Update requirements.txt files * Fix buggy docstring in python package methods (#5548) * fix buggy docstring for methods * remove space * fix typing * avoid name collision with validator * Revert "avoid name collision with validator" This reverts commit8a30a44555. * typing * rebuild * python 3.8, ParamSpec not available * lint * ruff noqa * Merge with develop (#5551) * Charting extension integration tests (#5547) * initial proposal for integration tests on the charting extension * int tests for charting generation * python generator * ruff * boilerplate templates * python tests * tests for the api * using body instead so data don't get redefined * unit tests for coverage * ruff * docstrings * unnecessary access to keys() * Add trading economics economic calendar * dev install * Data Models disposition on the website (#5538) * pydantic v4 * flat structure * md files * Revert "md files" This reverts commitbd2170e2ad. * improve command descriptions * nice title and description * human readble data model names on left panel * implementation details section * content markdown files * markdown versioned files * showcase page * updates --------- Co-authored-by: tehcoderer <me@tehcoderer.com> * everything except tests * fix `datetime.date` import in fetcher test * modified url to remove `api_key` placeholder * record test * api key is called c here * fixed fetcher test for api key * recorded tests * refactor * life is ruff * codespell * Make Intrinio options chains great again (#5540) * add multithreading * cleanup * linting * use dateutil.parser * removed `TICKER_EXCEPTIONS` * modified `date` and `type` fields in standard model * set alias for `date` and `type` to match standards * static * static * Hotfix/fix post tests (#5555) * Fix econometrics * Fix ta * Fix qa. Remove intrinio to not be rate limited * Lint * Fix typo * obbject tests (#5558) * obbject tests * ruff * fix dev_install * fix unittests * black on nox * black on nox * nox * fix fetcher test so it can compare dates * fix intrinio tests * ruff * change to model_dum() instead (#5561) * Passing tests (#5560) * Passing tests * fix options * Fix most tests and bugs * fix forex missing params * make symbol upper in polygon fx pairs * fix fixedincome integration tests (#5564) * Fixing charting api integration tests (#5562) * fixing charting api integration tests * black * fix stocks less five API fails * fix the 5 failing stocks integration tests * recapture fmp stock news unit test * fix fmp forex api test * couple more forex integration fixes * changing the request to always use the legacy session. @jmaslek this is was broken for 3.8 and 3.9; with this change apparently all versions work - lemme know if you see any issue with this change * ruff * fix ta * add missing param * fix testers for the api * fix globalnews to use images instead of image * remove unncessary pandas import * econcal int tests * update gitignore * fix get_querystring to support lists * add missing parameters --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * Stock Historical standardization and UX improvements (#5457) * polygon add interval standard param * attempt at standardization * Alpha Vantage params standardization * rename `get_intervals` and fixed bug for extracting wrong value * missed changing it in `extract_data` * linting * polygon cleanup * modified `start_date` & `end_date` type to `datetime` from `dateType` * standardized intrinio stock historical params * fixed yfinance * linting * revert start and end date to dateType from datetime * fix alpha vantage * changed param * fix intrinio infinite loop * `validator` is `field_validator` * revert time params and fixed intervals * `outputsize` alias set in `Field` * set interval description using in-build dict * yfinance stock param standardization * static * intrinio cleanup * Polygon add api params as `PrivateAttr` * modified yfinance params to `PrivateAttr` * intrinio remove overriding date params * fixed description for AV adjusted param * fix alpha vantage intraday not working * re-record and pass unit tests * pass integration tests * Update test --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix econcal endpoint (#5567) * fix econcal for python interface * fix econcal tests * fix non supported json output * Fixes FMP index endpoint to get 1 day interval data (#5535) * fix FMP endpoint for getting index data for `1day` interval * fix `open` type to prevent validation error * modifed `validator` to `field_validator` * type of fields is `StrictFloat` * re-record and pass test * linting * `validator` -> `field_validator`, a3'd everything * Fix regression in tests. Lint * updating the integration test actions * Fix typo * Fix typo * Fix import * Publish versions `a3` to Pypi (#5568) * bump versions and script to publish * small improvements * uncomment exception * openbb * publishing guidelines * improve docs * add providers to economy api * make symbol required in stock_quote * Fix keys * Fix oecd * add comma * revert * Add quotes * Sleep * Improve tests * Improve * Feature/query transform (#5566) * inject query into transform_data * swap query and data * update missing fetchers * last test failing * sig test fetcher * black * av add `query` to `transform_data` call * transform_data: missing refactoring * fix uvicorn command in the doc * Automated examples (#5576) * Automated examples * Fix bug * Lint * static assets built on 3.8 * Revert "static assets built on 3.8" This reverts commitfb82ff7bd9. * remove assets * static assets on 3.8 * static assets on 3.8 * Wrap in quotes * Improve wrap * minor fix * rebuild 3.8 * Fix bug * Fix edge case * Lint * rebuild --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * use SecretStr for sensitive fields (#5578) * use SecretStr for sensitive fields * fix * docstring * Add tests for provider (#5583) * Add tests for provider * Test standard models * Lint * Fix standard model issues. Co-authored-by: @the-praxs * linting * `symbol` -> `is_symbol` in `economy.index_search` * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * feature/v4-biztoc-provider: Adds Biztoc provider and GlobalNews (#5546) * add biztoc provider * duplicate field * black * request headers * recapture test * move stuff around * add integration tests * duplicate OECD entry in dev_install * duplicate entry for oecd in pyproject.toml * Add Biztoc to workflow * update readme: credentials * Add Preferences to README * improve tests * fix biztoc * obbject pylint * Bug fix: serializ SecretStr before dumping to json * export credentials as json (#5592) * Check for wrong, changed, or outdated params. (#5597) * Improving `economy.cpi` for the FRED data (#5602) * remove multiindex using coding magic * Update field descriptions --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Improve error message. * Improve * Test tests (#5607) * Test tests * Add test * 4.0.0a4 PyPI publishing (#5608) * changes to publish * fix mini conflict * typo * cleaned `descriptions.py` * fix description in `cpi.py` * Add ETF extension to v4 (#5609) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add ETF historical price from yfinance (#5610) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add etf historical price standard model and route * Add etf historical data from yfinance * Add unit tests * Fix linter error. Organize imports * Update test data * Revert common descriptions erased by CPI PR * remove `symbol` from data for `stocks.ca.peers` * Test docstrings (#5613) * Test docstrings * fix minor bugs w/@IgorWounds * static only w/@IgorWounds * fix `importance` param in `economy.econcal` * right static only w/@IgorWounds * Fix econcal and add tests to noxfile * fix econcal static * re-record --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Clean up the newly created ETF extension (#5611) * Add ETF to dev_install bundle * Add integration tests for openbb-etf * Patch integration test generator scripts to produce lintable code * Add py.typed markers for extensions * user preferences descriptions (#5593) * user preferences descriptions * typo * Feature/v4-sec-provider: Add SEC provider to V4 (#5556) * coerce string type, add default=None * add sec provider and FTD function * update description * ruff * data model definitions in standard model already * duplicate oecd entries in dev_install and pyproject * actually commit * integration test * add stock search to SEC * add company filings for SEC provider * integration tests * remove duplicated line * ruff * **kwargs in Transform Data * some helper functions for later * black * add helper for mutual fund and etf lookup * add some SEC lookup helpers to a new regulators extension * black * ruff * fix test param * take institution filter out of sec stock_search * ruff * remove URL that codespell doesn't like * add cik-to-ticker map * add litigations rss feed * make openbb-regulators a dependency of openbb-sec * add SIC search * improve ftd and remove BeautifulSoup from SEC dependencies * fix parsing the zip files pre-2009 * ruff * update descriptions * recapture ftd test * tests params * typo * change limit param to 1 in test_sec_stock_ftd * Add didiers to_records method (#5588) * Add didiers to_records * unused import * Bring back polars + do what igor suggested * Make the output consistent with what it was. * Black ? * spelling. oops. almost like we have a pre commit or something * Feature/v4-price-performance: % returns for various horizons, comparable across multiple tickers. (#5618) * coerce string type, add default=None * add price_performance endpoint from FMP * black * extra period in docstring * ruff * forgot one file * Feature/ipo-calendar: V4 IPO Calendar (#5605) * coerce string type, add default=None * add intrinio ipo calendar * fix typo * sort __init__ * fix description * make requested changes * update test params * black * test updates * etf integration * Add disc router and WSJ provider * OBBject extensions (#5612) * changes to core * bug? * docstring * doc * Update credentials.py * fix model_dump * create extensions * fix docstring * doc * revert change query_exc * doc * fix container test * redirect obbject test patch * doc * rename method * move decorator to extension file * rename method extend_obbject * changes in creds model * avoid credential racing * doc * rename prop * doc * doc * remove comment * comment some code * free extension names * docstring * doc * docs * Hotfix/fix-v4-economic-calendar: Add FMP to Econ Calendar and fix some TE bugs (#5580) * coerce string type, add default=None * adds fmp to economic calendar and fixes some things with TE * ruff * etf integration test * missing provider for test * rename te cassette to economic_calendar * fix test * rename tests --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Add stocks disc endpoints (#5630) * Add stocks disc endpoints * Explicit * Lint * Add tests * Bump timeout * Feature/disc router (#5616) * Add disc router and WSJ provider * Lint * Lint * Move endpoints under ETF router * Update etf_performance.py * Add ETF info and sector exposure from FMP (#5620) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Fix linter errors after the merge * Fix more linter errors * Fix failing and add missing tests * Fix integration tests * Fix calendar ipo tests * Add ETF holdings and holding report dates from FMP (#5629) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Add etf holdings and holdings date routes and standard models * Add fmp holdings and holding dates fetchers * Update holdings fetcher to properly handle date object inputs * Add unit tests * Add integration tests * Black after merge * Fix test input data format * Disc router for equities. (#5640) * Disc router for equities. * add tests * Bug fixes in financial statements (#5537) * `validator` to `field_validator` in standard models * Polygon add `ttm` to `period` param * Revert "Polygon add `ttm` to `period` param" * Polygon add `ttm` to param `period` * `EarningsCallTranscript` standard model removed `quarter` param * use `tag` instead of `name` for correct field name * fix url for intrinio income statement * modified intrinio cash flow `transform_data` function * set optional data fields and validate dates * fix insider trading not fetching recent data * linting * refactoring * refactoring * set param alias in fmp stock insider provider model * get all quarter data for intrinio * add `limit` param to `stocks.fa.ins` * refactoring and linting * removed additional comment * linting * re-recorded and fix tests * cash flow standard model field type to `StrictFloat` * Intrinio cash flow model fixed to get all quarters' data * linting * refactoring * financial statement standard model field type to `StrictFloat` * Intrinio financial statement model get all quarter data * set `period` type to `Optional[str]` * add `period` param to balance sheet provider models * add `period` param to cash flow provider models * use alias in model dump * remove `ttm` from `period` param * revamped intrinio financials * fixed incorrect description for `limit` param * modified tests for `balance`, `cash` and `income` * re-recorded tests * skipped intrinio financial statement fetcher tests * Add ETF county weighting command with FMP data (#5645) * Remove code that wrongfully infers the filing date as end of quarter * Add etf countries command with fmp data * Add countries command to etf router * Update sector and country weighting fmp models * Fix docstring typo * Add unit tests and update mock data * Add integration tests for etf.countries * Bring back missing integration tests * Fix economic calendar integration tests * fix missing data in intrinio financials * removed inutile params from Polygon financial statement models * Intrinio IPO overhaul * tests fixed and re-recorded * Add ETF holdings performance with FMP data (#5659) * Add etf holdings performance endpoint * Add tests * Fix failing polygon fetcher tests * Split long holdings lists into chunks and update test data * Change chunk length to 500 tickers * Add stock search from FMP (#5642) Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Feature/v4 pypi (#5579) * improvements to the publish script * move scripts * initial script that builds the package * adjustments on the docs * test pypi workflow * add hour and minute to version * black * ruff * duplicate file * moving files instead * build throught the script instead * update nox file * integration tests workflow * change workflow * fix dev_install * fix in sed cmd * testing the platform only * commenting out the publishing * fix run commands * improvements to the publish script and doc * fix publish script * updating the script and the workflow * feature/v4-pypi nightly (#5589) * init * Update nightly.py * cleanup * init file * not referencing dev_utils * updating obb platform key * revert * Increase warmup time * project name on pyproject and adding the --pre flag on readme * moving to the build folder * fix noxfile * reflecting the moves on the import statements * fix pyproject path * ruff * fix paths * fix super typo * update workflows * moving the pypi terminal files into its folder --------- Co-authored-by: teh_coderer <me@tehcoderer.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * economy.calendar nasdaq (#5628) * add quandl econcal * unittest * add integration tests * replace   * fix bug TE importance * small fix * remove stuff from quandl * add nasdaq provider * add nasdaq to install files * Update test_economy_api.py * test * quandl leftovers * remove quandl econcal test * lint * replace   * ruff * lint * update nasdaq gmt * validate countries * here * no need for this * fix calendar tests * static * static * remove error * static * readme + website * readme * remove changes TE * typo * fix unittest * fix tests * Update __init__.py * Update economic_calendar.py * revamped model and added helpers for date range --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Feature/v4-dividend-calendar: Adds Nasdaq dividend calendar and moves the command out of fundamental_analysis (#5672) * add nasdaq dividend calendar and move out of fundamental_analysis * black * ruff * add random-user-agent to pyproject.toml * add nasdaq ipo calendar * add nasdaq flag for SPO to IPO calendar * add spo test param * black * dividend test * fix transform_query - nasdaq_calendar_ipo * bring back different headers for ipo calendar * remove references to test * Add disc endpoints (#5660) * Add Quandl top retail * Add tests * Add Seeking Alpha * Add Filings * Change Provider * Fix test * Add dev_install * static * static correct * y u forget me * updated deps * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * using dev install (#5673) * Expanding the `fixedincome` menu (#5655) * models and fetcher * making the fetcher visible * std model * adding the command * improvements to the models * typo * adding the command * imrpovements to dwpcr * standard model for ecb int rates * adding the fetcher for fred * standard model of ice bofa * add ice_bofa command * ruff * ice bofa fetcher * moody std model * moody * std model * add cp command * unused import * cp * spot * ruff * hqm * tmc * ffrmc * tbffr * ruff * typing fixes * buggy dates * fred fetcher tests * ruff * adding ecb as a provider * adding new provider related stuff * adding the new command eu_ycvr * models * test for ecb fetcher * Feature/v4 fixedincome int tests (#5661) * integration tests * happy ruff * mini adjustment * ruff * typo * verbose type * fix tests * docstrings everywhere and an happy pydocstyle * fix tests * Feature/user-cache-dir: Add User Preference for the Cache Directory (#5621) * add user preference for storing cached data * ruff * fix tests? * fix test key error..? * etf integration test fix * add cache dir to SEC * black * improve docs structure for V4 (#5586) * improve docs structure for V4 * moving over changes * Add Docs to the navbar * add some, re-order sidebar * fix sentence * add docs install to source instructions * insert a couple of links, fix a typo * big terminal docs usage revamps * improve toggle component for tutorials * get rid of TOCs for all terminal docs for consistency and simplicity * improve platform docs * improve bot docs content structure * remove index from bot docs * improve ON THIS PAGE to only display TOC if at least 1 element * make edit this page text and icon on same line * add author and date to docs * add basic syntax page to usage * sidebar order for usage section * move api start command to the top with the import python import * some install page additions * small improvement * refactor routines section * Update introduction-to-routines.md * Update pipeline-of-commands.md * Update introduction-to-routines.md * Update routines-for-power-users.md * Update community-routines.md * update keyboard hotkey macros * askobb page * Update askobb-feature.md * Update index.md * Update index.md * Update index.md * Update index.md * fix images * remove HeadTitle from all files where it exist * get rid of extra spacing in markdown * small update * small edit * need index at the start because of main path when homepage of docs * use openAI to create SEO for front matter on my behalf * remove table of content from sdk page * finish improving metadata SEO for SDK docs * update duplicate header * update HeadTitle to be more specific on product * remove index from bot telegram reference * delete duplicated title for platform reference * another update * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * start PR so screenshots can get attached via GitHub website * Update qa.md * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * Update crypto introduction.md * titles * another title * Update crypto dd.md * Update defi.md * Update disc.md * Update nft.md * Update onchain.md * Update ov.md * Update introduction.md updates URL * Update introduction.md add HeadTitle * Update ba.md * Update comparison.md * Update dark-pool-shorts.md * Update disc.md * fix docs (#5646) * Update fa.md * Update gov.md * Update ins.md * Update tradinghours.md * Delete website/content/terminal/menus/stocks/options/screener.md * Update Options introduction.md * Update screener head title * Update screener TOC * Update econometrics.md * Update economy head title * Update etf.md * codespell * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Contributing guidelines (#5615) * intro section * what's expected sections * improve sections * improve sections and move how to add a data point * moving qa under contributor * better intro * moving the sharing section * better expectations * small intro to the contributor guidelines * moving things under the contributor section * there is no pre commits on the platform yet * dependency management * best practices for extensions * typo * collapse options subfolder * codespell * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update fixedincome.md * url * Update forecast.md * Update settings.md (#5665) * Update forex.md * fix front matter (#5667) * Fix conflict markers that got into markdown during previous merges * Fix front matter list formatting * Fix typo * small thing * fix hyperlinks * Update .codespell.ignore * output_type options * Architectural considerations * Update sidebar to hide pro section by default * Minor copy changes * TET pattern * import statements * clarification on preferences * Minor copy changes * Lint markdown and python * fix: open index on collapsible root elements * remove old content * options title * Fix linting errors * Refactor sidebar label to url mapping condition --------- Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Add multi-ticker support to etf_countries (#5670) * add multi-ticker support to etf_countries * remove commented-out lines * normalized percent points * percent -> percentage * Fix Nasdaq Econ Calendar Fetcher (#5668) * fix nasdaq econ cal request * more html tags * add random-user-agent to pyproject * another edge case - 24H -> 00:00 * Feature/v4-unusual-options: Adds unusual options endpoint. (#5677) * add unusual options fro Intrinio * test params * move sorting * Change type * update FMP fetcher to use the V4 endpoint (#5681) * Fix price performance not parsed correctly when there is only 1 ticker (#5678) * Add crypto search standard model and FMP data for it (#5679) * Apply renaming to news data (#5684) * inegration complete * reformatted for black * fix ruff issues * revised integration * changes to versions in pyproject.toml and updated lock files * Rename models * Update tests * Fix typos here and there * Update routers * Apply rename to ultima * Properly mock api key * Mock ultima api key --------- Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> * Feature/v4-market-snapshots: Adds full market snapshots (#5473) * add stocks market snapshots from fmp * add fmp fetcher test * unused imports * add polygon to market_snapshots * update fmp market_snapshots * black * pydantic2 things * updates * change validate_obj to model_validate * polygon cleanup * tests * descriptions * black * data description * minor adjustments, using less local variables, improving readability and removing pandas * better structure * minor adjustments * lint * fix int tests --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Add NBBO Quotes, with historical, to `obb.stocks.quote()` (#5617) * coerce string type, add default=None * add polygon stock quote * limit cleanup * add greater/less than to params * limit param * black * tests * fix tests * test_etf * rename model and function to NBBO * add standard model for nbbo * improve standardization * not redifining builtin max * fix input params * integration test params * removing unused import Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * revamped code * re-recorded nbbo test * added symbol validator * added alias in field * Stock news -> Company news --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * hotfix/update-quandl-to-nasdaq: Merge Quandl + Nasdaq (#5682) * merge quandl nd nasdaq * dev_install.py * test param name * economy python integration test * Add more input types to data processing commands (#5453) * adding more supported types to data processing commands * ruff * removing unused import * docstrings * data processing types covertion * data description * test filters * ruff * fix package builder tests * ruff * removing print * Add stocks/dps module (#5638) * short volume * pyproject missed * add sec short interest with days to cover * Add FINRA OTC endopoint * some tests * rest of unit tests * Integratin test scripts * dev install * linters caught by pre commit * lines too long * Last test files * maybe it needs a lock file? * thanks pratty * Maybe ill actually listen to pratty next time * sec test date freeze * I cant hit buttons * re record tests * tests 3 * Stockgrid test * regen int test * more testing * lint * moved these fns * dis killing me * one more test * last one * Update integration tests * Fix tests picking up wrong dps route --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename Forex to Currency (#5687) * restore fields as optional (#5686) * Rename Crypto (#5689) * added `crypto.price.historical` * static * fix tests * fix incorrect label * Move model from sec to finra (#5692) * Update toml * fixed deps * add openbb-etf lock file * cleanup * cleanup (#5694) * Rename Fixed Income (#5695) * Rename Fixed Income * Add routers * Rename stocks to equity (#5688) * Rename stocks folder * Rename openbb_stocks package * Rename routers * Reroute equity menu * Update routes based on feedback * StockNews -> EquityNews * StockInfo -> EquityProfile * Rename Equity calendars * Equity peers rename * Rename discovery * Rename fundamental * Rename price command models * Rename shorts * Update charting router * Fix seeking alpha upcoming release date * Fix linting errors * Update tests * Fix tests * Skip econometrics api tests because it's python only * Update integration tests and test data * Historical analyst estimates * Skip cboe options chain test. Unable to record vcr cassette * re-record cboe cassettes * Document CBOE unit test creation caveats --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Feature/files-for-igor: Adding a few standard models for Igor (#5699) * add some standard models for Igor * codespell * update descriptions * Add devtools metapackage (#5703) * Add openbb-devtools metapackage * adding devtools to the dev_install script --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Rename econometrics commands to be more verbose (#5702) * Expose command to model map (#5706) * Rename ta qa (#5708) * Rename ta folder * Rename ta to technical * Rename qa folder * Rename qa to quantitative * Rename the actual routes in quantitative * Equity cleanup (#5707) * cleanup * static * renaming to equity cc @the-praxs * Proof reading --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Don't enforce imperative for first word of the docstring * Remove ultima from default extensions * Rename `economy` and create `index` extension (#5705) * renamed economy and re-recorded tests * static * market indices * european indices * fred indices * index constituents * tests * correct package name * oops * static * linting * Move COT commands to regulators * Rename economy.list to available_indices * Rename GDP models and clean up * Fix charting tests * Drop _indices from available_indices command * Fix obbject to_dict test --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename etf/disc (#5715) * Docs/v4-working-docs: PR to Work on V4 Docs (#5693) * Revert changes related to pydantic2 made into v3 code * Revert fred model changes in v3 * Revert pydantic2 databento model changes in v2 * Update some names and v3 lock file * Clean up openbb/package before the beta release * Platform publishing procedure (#5701) * update instructions * introducing the version script * publish message * fix platform path * reflecting version changes * getting version from installed packages instead * removing toml from dependencies * Changes to get `a7` out (#5697) * changes to get a7 out * etf menu on the pyproject.toml * poetry lock * bump `openbb-etf` to `a5` to match version * updated deps * removing ultima * removing references to a4 cc @the-praxs * Bump index menu version * poetry lock --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Update publishing instructions * Bump core dependencies in extensions and providers * Add changes to the publish script following the beta release * Update the versions in static extension map and openbb metapackage --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: Igor Radovanovic … * fix: test openapi.json (#6530) * [BugFix] Raise on "Error Message" with FMP Econ Calendar (#6534) * Raise on FMP Error message * bad indent * [Feature] `to_df` where `results` is a model of arrays. (#6510) * enable to_df to convert a model where all fields are arrays * use dt for check * static assets * pylint --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Merge branch 'main' into 'develop' (#6540) * add snowflake integration video (#6339) * [HotFix] Fix broken URLs in docs page. (#6368) * Fix broken URLs * use full URL to other docs pages. * [Release] 4.2.0 (#6422) * [Docs] Remove Reference to `to_chart` in OBBject. (#6096) * remove reference to to_chart in OBBject. * put chart description back in OBBject properties * [Feature] - Create openbb assets folder (#6101) * create openbb assets folder * fix unittest * rebuild --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fixes to_df() where the date series contains multiple TZ-offsets. (#6099) * allow mixed utc offset in a tz-aware date column * enforce ascending from all providers for price.historical * fix tests * add comments and apply treatment to basemodel_from_df before JSON output * yfinance consistency * add unit test * add unit test * better test * ruff --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update the quantitative extension to make more sense (#6087) * Split out a rolling submenu for the rolling functions * Make a performance and a stats submenu. * Test the statistics functions * lint * lint * dupe test * pylint * ruff * Try tests quick * black magic signature funcs * fix my custom tests * Fix the existing imports/urls * push the api update * okay I figured out whats going on * this should be all of them * Correct docstringing examples --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Fix ECB Yield Curve (#6108) * fix ecb yield curve * standard model update * Update unit-test workflow to check for changes to openbb_platform (#6109) * [Bug fix] - Fix package mypy (#6110) * fix: package mypy * types * black * [Feature] - Equity router descriptions & examples (#6103) * feat: equity/calendar * feat: compare router * fix descriptions * darkpool + discovery * fix paragraph issues * fix descriptions * fundamental part 1 * fundamental part2 * transcipts * ownership * fix * price * shorts * Update darkpool_router.py * minor fix * shorts examples * examples * ruff * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Add `exception_handler` decorator to static (#6112) * add exception handler decorator * add exception handler decorator code * updated static * rebuild to fix docstring indentation --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * update extensions list (#6114) * add missing field descriptions to yfinance equity price historical (#6116) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * remove charting extension env var (#6118) * [BugFix] Fix Company News (#6111) * fix company news * update tests * multiple symbols for polygon * don't include pageSize in Benzinga querystring, fixed as 100 * remove extra space * black * unused imports * make benzinga test cassette smaller * missing params * clear empty strings --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Allow Multiple Symbols in `equity.fundamental.metrics()` from `yfinance` (#6124) * allow multiple symbols in key_metrics from yfinance * field order thing * remove unnecessary function (#6125) * [Docs] Update OpenBB Copilot docs (#6106) * WIP: Tweak description. * WIP: Experimenting with react-player * WIP: Add copilot docs. * fixes videos width/height * WIP: Refine videos and copy. * WIP: Add last videos and sections. * Add bring-your-own-copilot section. * Tweak grammar. * Add copilot link. * Fix typos. --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * [Enhancement] Add Previous Close to DATA_DESCRIPTIONS (#6120) * add data description for previous close * ..just the one * update the model tripped by this change --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * added australia as a country also (#6131) * [Bug fix] - Fix regulator cik map standard model (#6129) * Fix regulator cik map standard model * fix description * Update cik_map.py * increase timeout to 30 (#6115) Co-authored-by: James Maslek <jmaslek11@gmail.com> * clean up some v3 deps (#6105) * clean up some v3 deps * forgot we need to do the requirements txt files * not sure it matters, but run ruff + black * am addicted to bug fixes --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Bug fix] - explicit multiple items docstring (#6127) * explicit multiple items docstring * rebuiild * rebuild again --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] Pretty Pydantic `ValidationError` exceptions (#6130) * fix validator in fmp IndexHistorical model * make ValidationError pretty * modify arg error * linting fmp IndexHistorical * black * remove unused code * tmx etf info (#6132) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] - Platform V4 Markdown Generator V2 (#6094) * add recent `openapi.json` * fix data types in models * removed `openapi.json` * set default date value as None in PolygonCurrencyPairs class * add function to generate reference.json file * reworked function to improve readability * reword function to add seo metadata * add functions for creating markdown sections * add code to extract data card markdown title * add additional functions for generating index and data models file * extract first sentence of the description for cards * code cleanup and documentation * linting * linting polygon models * add openbb import statement in create_reference_markdown_examples function * add POST method functions * cleanup; reworked generate_reference_index_files function * moved development section to 7th position in the sidebar * fix POST function params default value add standard flag to QueryParams and Data fields cleanup * add type expansion from package_builder.MethodDefinition * sort data models cards alphabetically make printing less verbose * make MAX_CARDS global display less content in cards in Commannds section * cleanup * Remove '_' from the cards under Commands section * " to ' in econometrics/causality * replace ' with " in ReferenceCard for reference dir index files * remove extra . from the quantile function description * shoutout to @deeleeramone for finding POST method description bug! * set correct value for standard field * handle BaseModel types in provider data fields * unit tests for the platform markdown generator v2 * yeet 'Default' and 'Optional' columns in the 'Data' section * last minute bug fix * add info for multiple symbols * make multiple items info same as platform static * organize sections properly * sort reference sub-directories alphabetically * extra space in 'OBBject extra' description * add type expansion for fields with multiple items POST method cleanup --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Docs] Adds Example Notebook for the Implied Earnings Move (#6128) * adds example notebook for the implied earnings move * remove commented out line --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] - Sync with new openapi.json (#6137) * feat: create data tabs * fix: uncomment * fix: remove unecessary comment * sort side bar * comment * uncomment * use .dev functions.json + clean traverse * fix futures example * fix example * point to .co * Fix the v3 markdown generation workflow (#6138) * fix workflow * debug time * see if the docs generate at least * ahhhh i found it * getting there * put the test first * some keys cleanup * small change to error message * update functions.json (#6140) * fix intraday check in charting ta_class (#6119) Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * [BugFix] Display EconDB as source for macro (#6143) * [BugFix] Disable Intrinio `InstitutionalOwnership` model (#6142) * disable fetcher in init and fetcher tests * disable provider test params from equity python and api tests * updated static * add more examples into findSymbols (#6139) Co-authored-by: James Maslek <jmaslek11@gmail.com> * [BugFix] Fix SEC ETF Holdings Parsing Exception (#6121) * fix etf holdings * linting * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/update xl docs (#6145) * remove print * update obb.get docs * example * md lint * fix get reference (#6147) * [BugFix] Filter OECD data using `start_date` and `end_date` parameters (#6144) * move constant dicts to constants.py filter by start_date and end_date * black * black again again * Merge 'main' into 'develop' (#6151) * Release/3.2.4 (#5696) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * 3.2.3->3.2.4 * Changelogs * new changelog --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Andrew <andrew.kenreich@gmail.com> Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Luqman <luqazino@gmail.com> Co-authored-by: Adwait <111136306+AdwaitSalankar@users.noreply.github.com> Co-authored-by: Abhishek Amar <66067391+abhishek-amar@users.noreply.github.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Ramazan <guvencramazan@outlook.com> Co-authored-by: joshuabuildsthings <joshuabuildsthings@users.noreply.github.com> Co-authored-by: wojda <114031148+polooner@users.noreply.github.com> Co-authored-by: Bim Phomthong <118195204+bimbolimbo@users.noreply.github.com> * Release/4.0.1 (#5840) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Release/3.2.4 (#5704) * 3.2.3->3.2.4 * Changelogs * new changelog * OpenBB Platform v4 (#5225) * change location * check something * add cache * fixed auth w/@IgorWounds and @montezdesousa * fixes for econometrics * include Darren auth suggestions * some routers included if dev + chg hub backend var * coverage router should not be here * update docker readme * forgot to check auth here * Change extension imports * update docstrings and readme * headers function wasnt being called, just referenced * relative import * econometrics add headers everywhere * Fix QA * Fix TA * Fix test * Fix python interface QA and TA * Lint * Cleanup * Change path * make the changes and some etf models * tests for command_runner * ruff * solving naming issues on pytest * Update some docstrings, fix typos and lint * solving econometrics instantiating wrong openbb * chaging the way pytest runs * messing around with the imports * ruff * Change template to add platform considerations (#5533) * change template to add platform considerations * @the-praxs suggestions * solving __pycache__ issue * removing typo * ci yml * making linters happy (i guess) * Improve Omega Ratio and docstrings * chaging pro validation hash * ruff * Fix OLS Summary and lint * Add OECD Provider for economy extension (#5534) * Add record to docs * update a couple of cboe models * Fix econometrics bugs. Make tests pass. Lint. * black * ruff * pydantic v2: remove deprecated Extra * pydantic v2: self.dict -> self.model_dump * revert pydantic * revert the revert * try 1: pin urllib3 < 2 * Revert "try 1: pin urllib3 < 2" This reverts commit3736c311cb. * Revert dep * Fix * re-lock * Skip all tests when doing cspell in pre-commit * Resolve linter errors * Add OECD to install script * Add OECD * Resolve more linter errors * Exclude static files of v4 python from ruff * More linting * Another attempt to resolve even more linting errors * Change how Literal is used * ticker. symbol. consistent. @piiq * change ticker field in Stock Search to is_symbol * Update Cboe model for stocks_search -> is_symbol parameter. * Fix issue * Lint * Small QA to rename SDK to Platform (#5544) * SDK -> Platform in docs * renamed in core * renamed in openbb `init` * `sdk` variable renamed as `platform` --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * `validator` -> `field_validator` in standard models * Standard convention for multi-ticker symbols (#5549) * standardize symbol input param in forex and crypto historical data * static * linting * Fix stock_search integration test params * Update dependencies and linting on the CI (#5550) * Remove ruff and black from platform dependencies * Update codespell configuration * Lint python code * Add toml and tomli to root dev dependencies * Update requirements.txt files * Fix buggy docstring in python package methods (#5548) * fix buggy docstring for methods * remove space * fix typing * avoid name collision with validator * Revert "avoid name collision with validator" This reverts commit8a30a44555. * typing * rebuild * python 3.8, ParamSpec not available * lint * ruff noqa * Merge with develop (#5551) * Charting extension integration tests (#5547) * initial proposal for integration tests on the charting extension * int tests for charting generation * python generator * ruff * boilerplate templates * python tests * tests for the api * using body instead so data don't get redefined * unit tests for coverage * ruff * docstrings * unnecessary access to keys() * Add trading economics economic calendar * dev install * Data Models disposition on the website (#5538) * pydantic v4 * flat structure * md files * Revert "md files" This reverts commitbd2170e2ad. * improve command descriptions * nice title and description * human readble data model names on left panel * implementation details section * content markdown files * markdown versioned files * showcase page * updates --------- Co-authored-by: tehcoderer <me@tehcoderer.com> * everything except tests * fix `datetime.date` import in fetcher test * modified url to remove `api_key` placeholder * record test * api key is called c here * fixed fetcher test for api key * recorded tests * refactor * life is ruff * codespell * Make Intrinio options chains great again (#5540) * add multithreading * cleanup * linting * use dateutil.parser * removed `TICKER_EXCEPTIONS` * modified `date` and `type` fields in standard model * set alias for `date` and `type` to match standards * static * static * Hotfix/fix post tests (#5555) * Fix econometrics * Fix ta * Fix qa. Remove intrinio to not be rate limited * Lint * Fix typo * obbject tests (#5558) * obbject tests * ruff * fix dev_install * fix unittests * black on nox * black on nox * nox * fix fetcher test so it can compare dates * fix intrinio tests * ruff * change to model_dum() instead (#5561) * Passing tests (#5560) * Passing tests * fix options * Fix most tests and bugs * fix forex missing params * make symbol upper in polygon fx pairs * fix fixedincome integration tests (#5564) * Fixing charting api integration tests (#5562) * fixing charting api integration tests * black * fix stocks less five API fails * fix the 5 failing stocks integration tests * recapture fmp stock news unit test * fix fmp forex api test * couple more forex integration fixes * changing the request to always use the legacy session. @jmaslek this is was broken for 3.8 and 3.9; with this change apparently all versions work - lemme know if you see any issue with this change * ruff * fix ta * add missing param * fix testers for the api * fix globalnews to use images instead of image * remove unncessary pandas import * econcal int tests * update gitignore * fix get_querystring to support lists * add missing parameters --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * Stock Historical standardization and UX improvements (#5457) * polygon add interval standard param * attempt at standardization * Alpha Vantage params standardization * rename `get_intervals` and fixed bug for extracting wrong value * missed changing it in `extract_data` * linting * polygon cleanup * modified `start_date` & `end_date` type to `datetime` from `dateType` * standardized intrinio stock historical params * fixed yfinance * linting * revert start and end date to dateType from datetime * fix alpha vantage * changed param * fix intrinio infinite loop * `validator` is `field_validator` * revert time params and fixed intervals * `outputsize` alias set in `Field` * set interval description using in-build dict * yfinance stock param standardization * static * intrinio cleanup * Polygon add api params as `PrivateAttr` * modified yfinance params to `PrivateAttr` * intrinio remove overriding date params * fixed description for AV adjusted param * fix alpha vantage intraday not working * re-record and pass unit tests * pass integration tests * Update test --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix econcal endpoint (#5567) * fix econcal for python interface * fix econcal tests * fix non supported json output * Fixes FMP index endpoint to get 1 day interval data (#5535) * fix FMP endpoint for getting index data for `1day` interval * fix `open` type to prevent validation error * modifed `validator` to `field_validator` * type of fields is `StrictFloat` * re-record and pass test * linting * `validator` -> `field_validator`, a3'd everything * Fix regression in tests. Lint * updating the integration test actions * Fix typo * Fix typo * Fix import * Publish versions `a3` to Pypi (#5568) * bump versions and script to publish * small improvements * uncomment exception * openbb * publishing guidelines * improve docs * add providers to economy api * make symbol required in stock_quote * Fix keys * Fix oecd * add comma * revert * Add quotes * Sleep * Improve tests * Improve * Feature/query transform (#5566) * inject query into transform_data * swap query and data * update missing fetchers * last test failing * sig test fetcher * black * av add `query` to `transform_data` call * transform_data: missing refactoring * fix uvicorn command in the doc * Automated examples (#5576) * Automated examples * Fix bug * Lint * static assets built on 3.8 * Revert "static assets built on 3.8" This reverts commitfb82ff7bd9. * remove assets * static assets on 3.8 * static assets on 3.8 * Wrap in quotes * Improve wrap * minor fix * rebuild 3.8 * Fix bug * Fix edge case * Lint * rebuild --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * use SecretStr for sensitive fields (#5578) * use SecretStr for sensitive fields * fix * docstring * Add tests for provider (#5583) * Add tests for provider * Test standard models * Lint * Fix standard model issues. Co-authored-by: @the-praxs * linting * `symbol` -> `is_symbol` in `economy.index_search` * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * feature/v4-biztoc-provider: Adds Biztoc provider and GlobalNews (#5546) * add biztoc provider * duplicate field * black * request headers * recapture test * move stuff around * add integration tests * duplicate OECD entry in dev_install * duplicate entry for oecd in pyproject.toml * Add Biztoc to workflow * update readme: credentials * Add Preferences to README * improve tests * fix biztoc * obbject pylint * Bug fix: serializ SecretStr before dumping to json * export credentials as json (#5592) * Check for wrong, changed, or outdated params. (#5597) * Improving `economy.cpi` for the FRED data (#5602) * remove multiindex using coding magic * Update field descriptions --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Improve error message. * Improve * Test tests (#5607) * Test tests * Add test * 4.0.0a4 PyPI publishing (#5608) * changes to publish * fix mini conflict * typo * cleaned `descriptions.py` * fix description in `cpi.py` * Add ETF extension to v4 (#5609) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add ETF historical price from yfinance (#5610) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add etf historical price standard model and route * Add etf historical data from yfinance * Add unit tests * Fix linter error. Organize imports * Update test data * Revert common descriptions erased by CPI PR * remove `symbol` from data for `stocks.ca.peers` * Test docstrings (#5613) * Test docstrings * fix minor bugs w/@IgorWounds * static only w/@IgorWounds * fix `importance` param in `economy.econcal` * right static only w/@IgorWounds * Fix econcal and add tests to noxfile * fix econcal static * re-record --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Clean up the newly created ETF extension (#5611) * Add ETF to dev_install bundle * Add integration tests for openbb-etf * Patch integration test generator scripts to produce lintable code * Add py.typed markers for extensions * user preferences descriptions (#5593) * user preferences descriptions * typo * Feature/v4-sec-provider: Add SEC provider to V4 (#5556) * coerce string type, add default=None * add sec provider and FTD function * update description * ruff * data model definitions in standard model already * duplicate oecd entries in dev_install and pyproject * actually commit * integration test * add stock search to SEC * add company filings for SEC provider * integration tests * remove duplicated line * ruff * **kwargs in Transform Data * some helper functions for later * black * add helper for mutual fund and etf lookup * add some SEC lookup helpers to a new regulators extension * black * ruff * fix test param * take institution filter out of sec stock_search * ruff * remove URL that codespell doesn't like * add cik-to-ticker map * add litigations rss feed * make openbb-regulators a dependency of openbb-sec * add SIC search * improve ftd and remove BeautifulSoup from SEC dependencies * fix parsing the zip files pre-2009 * ruff * update descriptions * recapture ftd test * tests params * typo * change limit param to 1 in test_sec_stock_ftd * Add didiers to_records method (#5588) * Add didiers to_records * unused import * Bring back polars + do what igor suggested * Make the output consistent with what it was. * Black ? * spelling. oops. almost like we have a pre commit or something * Feature/v4-price-performance: % returns for various horizons, comparable across multiple tickers. (#5618) * coerce string type, add default=None * add price_performance endpoint from FMP * black * extra period in docstring * ruff * forgot one file * Feature/ipo-calendar: V4 IPO Calendar (#5605) * coerce string type, add default=None * add intrinio ipo calendar * fix typo * sort __init__ * fix description * make requested changes * update test params * black * test updates * etf integration * Add disc router and WSJ provider * OBBject extensions (#5612) * changes to core * bug? * docstring * doc * Update credentials.py * fix model_dump * create extensions * fix docstring * doc * revert change query_exc * doc * fix container test * redirect obbject test patch * doc * rename method * move decorator to extension file * rename method extend_obbject * changes in creds model * avoid credential racing * doc * rename prop * doc * doc * remove comment * comment some code * free extension names * docstring * doc * docs * Hotfix/fix-v4-economic-calendar: Add FMP to Econ Calendar and fix some TE bugs (#5580) * coerce string type, add default=None * adds fmp to economic calendar and fixes some things with TE * ruff * etf integration test * missing provider for test * rename te cassette to economic_calendar * fix test * rename tests --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Add stocks disc endpoints (#5630) * Add stocks disc endpoints * Explicit * Lint * Add tests * Bump timeout * Feature/disc router (#5616) * Add disc router and WSJ provider * Lint * Lint * Move endpoints under ETF router * Update etf_performance.py * Add ETF info and sector exposure from FMP (#5620) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Fix linter errors after the merge * Fix more linter errors * Fix failing and add missing tests * Fix integration tests * Fix calendar ipo tests * Add ETF holdings and holding report dates from FMP (#5629) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Add etf holdings and holdings date routes and standard models * Add fmp holdings and holding dates fetchers * Update holdings fetcher to properly handle date object inputs * Add unit tests * Add integration tests * Black after merge * Fix test input data format * Disc router for equities. (#5640) * Disc router for equities. * add tests * Bug fixes in financial statements (#5537) * `validator` to `field_validator` in standard models * Polygon add `ttm` to `period` param * Revert "Polygon add `ttm` to `period` param" * Polygon add `ttm` to param `period` * `EarningsCallTranscript` standard model removed `quarter` param * use `tag` instead of `name` for correct field name * fix url for intrinio income statement * modified intrinio cash flow `transform_data` function * set optional data fields and validate dates * fix insider trading not fetching recent data * linting * refactoring * refactoring * set param alias in fmp stock insider provider model * get all quarter data for intrinio * add `limit` param to `stocks.fa.ins` * refactoring and linting * removed additional comment * linting * re-recorded and fix tests * cash flow standard model field type to `StrictFloat` * Intrinio cash flow model fixed to get all quarters' data * linting * refactoring * financial statement standard model field type to `StrictFloat` * Intrinio financial statement model get all quarter data * set `period` type to `Optional[str]` * add `period` param to balance sheet provider models * add `period` param to cash flow provider models * use alias in model dump * remove `ttm` from `period` param * revamped intrinio financials * fixed incorrect description for `limit` param * modified tests for `balance`, `cash` and `income` * re-recorded tests * skipped intrinio financial statement fetcher tests * Add ETF county weighting command with FMP data (#5645) * Remove code that wrongfully infers the filing date as end of quarter * Add etf countries command with fmp data * Add countries command to etf router * Update sector and country weighting fmp models * Fix docstring typo * Add unit tests and update mock data * Add integration tests for etf.countries * Bring back missing integration tests * Fix economic calendar integration tests * fix missing data in intrinio financials * removed inutile params from Polygon financial statement models * Intrinio IPO overhaul * tests fixed and re-recorded * Add ETF holdings performance with FMP data (#5659) * Add etf holdings performance endpoint * Add tests * Fix failing polygon fetcher tests * Split long holdings lists into chunks and update test data * Change chunk length to 500 tickers * Add stock search from FMP (#5642) Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Feature/v4 pypi (#5579) * improvements to the publish script * move scripts * initial script that builds the package * adjustments on the docs * test pypi workflow * add hour and minute to version * black * ruff * duplicate file * moving files instead * build throught the script instead * update nox file * integration tests workflow * change workflow * fix dev_install * fix in sed cmd * testing the platform only * commenting out the publishing * fix run commands * improvements to the publish script and doc * fix publish script * updating the script and the workflow * feature/v4-pypi nightly (#5589) * init * Update nightly.py * cleanup * init file * not referencing dev_utils * updating obb platform key * revert * Increase warmup time * project name on pyproject and adding the --pre flag on readme * moving to the build folder * fix noxfile * reflecting the moves on the import statements * fix pyproject path * ruff * fix paths * fix super typo * update workflows * moving the pypi terminal files into its folder --------- Co-authored-by: teh_coderer <me@tehcoderer.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * economy.calendar nasdaq (#5628) * add quandl econcal * unittest * add integration tests * replace   * fix bug TE importance * small fix * remove stuff from quandl * add nasdaq provider * add nasdaq to install files * Update test_economy_api.py * test * quandl leftovers * remove quandl econcal test * lint * replace   * ruff * lint * update nasdaq gmt * validate countries * here * no need for this * fix calendar tests * static * static * remove error * static * readme + website * readme * remove changes TE * typo * fix unittest * fix tests * Update __init__.py * Update economic_calendar.py * revamped model and added helpers for date range --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Feature/v4-dividend-calendar: Adds Nasdaq dividend calendar and moves the command out of fundamental_analysis (#5672) * add nasdaq dividend calendar and move out of fundamental_analysis * black * ruff * add random-user-agent to pyproject.toml * add nasdaq ipo calendar * add nasdaq flag for SPO to IPO calendar * add spo test param * black * dividend test * fix transform_query - nasdaq_calendar_ipo * bring back different headers for ipo calendar * remove references to test * Add disc endpoints (#5660) * Add Quandl top retail * Add tests * Add Seeking Alpha * Add Filings * Change Provider * Fix test * Add dev_install * static * static correct * y u forget me * updated deps * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * using dev install (#5673) * Expanding the `fixedincome` menu (#5655) * models and fetcher * making the fetcher visible * std model * adding the command * improvements to the models * typo * adding the command * imrpovements to dwpcr * standard model for ecb int rates * adding the fetcher for fred * standard model of ice bofa * add ice_bofa command * ruff * ice bofa fetcher * moody std model * moody * std model * add cp command * unused import * cp * spot * ruff * hqm * tmc * ffrmc * tbffr * ruff * typing fixes * buggy dates * fred fetcher tests * ruff * adding ecb as a provider * adding new provider related stuff * adding the new command eu_ycvr * models * test for ecb fetcher * Feature/v4 fixedincome int tests (#5661) * integration tests * happy ruff * mini adjustment * ruff * typo * verbose type * fix tests * docstrings everywhere and an happy pydocstyle * fix tests * Feature/user-cache-dir: Add User Preference for the Cache Directory (#5621) * add user preference for storing cached data * ruff * fix tests? * fix test key error..? * etf integration test fix * add cache dir to SEC * black * improve docs structure for V4 (#5586) * improve docs structure for V4 * moving over changes * Add Docs to the navbar * add some, re-order sidebar * fix sentence * add docs install to source instructions * insert a couple of links, fix a typo * big terminal docs usage revamps * improve toggle component for tutorials * get rid of TOCs for all terminal docs for consistency and simplicity * improve platform docs * improve bot docs content structure * remove index from bot docs * improve ON THIS PAGE to only display TOC if at least 1 element * make edit this page text and icon on same line * add author and date to docs * add basic syntax page to usage * sidebar order for usage section * move api start command to the top with the import python import * some install page additions * small improvement * refactor routines section * Update introduction-to-routines.md * Update pipeline-of-commands.md * Update introduction-to-routines.md * Update routines-for-power-users.md * Update community-routines.md * update keyboard hotkey macros * askobb page * Update askobb-feature.md * Update index.md * Update index.md * Update index.md * Update index.md * fix images * remove HeadTitle from all files where it exist * get rid of extra spacing in markdown * small update * small edit * need index at the start because of main path when homepage of docs * use openAI to create SEO for front matter on my behalf * remove table of content from sdk page * finish improving metadata SEO for SDK docs * update duplicate header * update HeadTitle to be more specific on product * remove index from bot telegram reference * delete duplicated title for platform reference * another update * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * start PR so screenshots can get attached via GitHub website * Update qa.md * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * Update crypto introduction.md * titles * another title * Update crypto dd.md * Update defi.md * Update disc.md * Update nft.md * Update onchain.md * Update ov.md * Update introduction.md updates URL * Update introduction.md add HeadTitle * Update ba.md * Update comparison.md * Update dark-pool-shorts.md * Update disc.md * fix docs (#5646) * Update fa.md * Update gov.md * Update ins.md * Update tradinghours.md * Delete website/content/terminal/menus/stocks/options/screener.md * Update Options introduction.md * Update screener head title * Update screener TOC * Update econometrics.md * Update economy head title * Update etf.md * codespell * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Contributing guidelines (#5615) * intro section * what's expected sections * improve sections * improve sections and move how to add a data point * moving qa under contributor * better intro * moving the sharing section * better expectations * small intro to the contributor guidelines * moving things under the contributor section * there is no pre commits on the platform yet * dependency management * best practices for extensions * typo * collapse options subfolder * codespell * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update fixedincome.md * url * Update forecast.md * Update settings.md (#5665) * Update forex.md * fix front matter (#5667) * Fix conflict markers that got into markdown during previous merges * Fix front matter list formatting * Fix typo * small thing * fix hyperlinks * Update .codespell.ignore * output_type options * Architectural considerations * Update sidebar to hide pro section by default * Minor copy changes * TET pattern * import statements * clarification on preferences * Minor copy changes * Lint markdown and python * fix: open index on collapsible root elements * remove old content * options title * Fix linting errors * Refactor sidebar label to url mapping condition --------- Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Add multi-ticker support to etf_countries (#5670) * add multi-ticker support to etf_countries * remove commented-out lines * normalized percent points * percent -> percentage * Fix Nasdaq Econ Calendar Fetcher (#5668) * fix nasdaq econ cal request * more html tags * add random-user-agent to pyproject * another edge case - 24H -> 00:00 * Feature/v4-unusual-options: Adds unusual options endpoint. (#5677) * add unusual options fro Intrinio * test params * move sorting * Change type * update FMP fetcher to use the V4 endpoint (#5681) * Fix price performance not parsed correctly when there is only 1 ticker (#5678) * Add crypto search standard model and FMP data for it (#5679) * Apply renaming to news data (#5684) * inegration complete * reformatted for black * fix ruff issues * revised integration * changes to versions in pyproject.toml and updated lock files * Rename models * Update tests * Fix typos here and there * Update routers * Apply rename to ultima * Properly mock api key * Mock ultima api key --------- Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> * Feature/v4-market-snapshots: Adds full market snapshots (#5473) * add stocks market snapshots from fmp * add fmp fetcher test * unused imports * add polygon to market_snapshots * update fmp market_snapshots * black * pydantic2 things * updates * change validate_obj to model_validate * polygon cleanup * tests * descriptions * black * data description * minor adjustments, using less local variables, improving readability and removing pandas * better structure * minor adjustments * lint * fix int tests --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Add NBBO Quotes, with historical, to `obb.stocks.quote()` (#5617) * coerce string type, add default=None * add polygon stock quote * limit cleanup * add greater/less than to params * limit param * black * tests * fix tests * test_etf * rename model and function to NBBO * add standard model for nbbo * improve standardization * not redifining builtin max * fix input params * integration test params * removing unused import Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * revamped code * re-recorded nbbo test * added symbol validator * added alias in field * Stock news -> Company news --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * hotfix/update-quandl-to-nasdaq: Merge Quandl + Nasdaq (#5682) * merge quandl nd nasdaq * dev_install.py * test param name * economy python integration test * Add more input types to data processing commands (#5453) * adding more supported types to data processing commands * ruff * removing unused import * docstrings * data processing types covertion * data description * test filters * ruff * fix package builder tests * ruff * removing print * Add stocks/dps module (#5638) * short volume * pyproject missed * add sec short interest with days to cover * Add FINRA OTC endopoint * some tests * rest of unit tests * Integratin test scripts * dev install * linters caught by pre commit * lines too long * Last test files * maybe it needs a lock file? * thanks pratty * Maybe ill actually listen to pratty next time * sec test date freeze * I cant hit buttons * re record tests * tests 3 * Stockgrid test * regen int test * more testing * lint * moved these fns * dis killing me * one more test * last one * Update integration tests * Fix tests picking up wrong dps route --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename Forex to Currency (#5687) * restore fields as optional (#5686) * Rename Crypto (#5689) * added `crypto.price.historical` * static * fix tests * fix incorrect label * Move model from sec to finra (#5692) * Update toml * fixed deps * add openbb-etf lock file * cleanup * cleanup (#5694) * Rename Fixed Income (#5695) * Rename Fixed Income * Add routers * Rename stocks to equity (#5688) * Rename stocks folder * Rename openbb_stocks package * Rename routers * Reroute equity menu * Update routes based on feedback * StockNews -> EquityNews * StockInfo -> EquityProfile * Rename Equity calendars * Equity peers rename * Rename discovery * Rename fundamental * Rename price command models * Rename shorts * Update charting router * Fix seeking alpha upcoming release date * Fix linting errors * Update tests * Fix tests * Skip econometrics api tests because it's python only * Update integration tests and test data * Historical analyst estimates * Skip cboe options chain test. Unable to record vcr cassette * re-record cboe cassettes * Document CBOE unit test creation caveats --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Feature/files-for-igor: Adding a few standard models for Igor (#5699) * add some standard models for Igor * codespell * update descriptions * Add devtools metapackage (#5703) * Add openbb-devtools metapackage * adding devtools to the dev_install script --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Rename econometrics commands to be more verbose (#5702) * Expose command to model map (#5706) * Rename ta qa (#5708) * Rename ta folder * Rename ta to technical * Rename qa folder * Rename qa to quantitative * Rename the actual routes in quantitative * Equity cleanup (#5707) * cleanup * static * renaming to equity cc @the-praxs * Proof reading --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Don't enforce imperative for first word of the docstring * Remove ultima from default extensions * Rename `economy` and create `index` extension (#5705) * renamed economy and re-recorded tests * static * market indices * european indices * fred indices * index constituents * tests * correct package name * oops * static * linting * Move COT commands to regulators * Rename economy.list to available_indices * Rename GDP models and clean up * Fix charting tests * Drop _indices from available_indices command * Fix obbject to_dict test --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename etf/disc (#5715) * Docs/v4-working-docs: PR to Work on V4 Docs (#5693) * Revert changes related to pydantic2 made into v3 code * Revert fred model changes in v3 * Revert pydantic2 databento model changes in v2 * Update some names and v3 lock file * Clean up openbb/package before the beta release * Platform publishing procedure (#5701) * update instructions * introducing the version script * publish message * fix platform path * reflecting version changes * getting version from installed packages instead * removing toml from dependencies * Changes to get `a7` out (#5697) * changes to get a7 out * etf menu on the pyproject.toml * poetry lock * bump `openbb-etf` to `a5` to match version * updated deps * removing ultima * removing references to a4 cc @the-praxs * Bump index menu version * poetry lock --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Update publishing instructions * Bump core dependencies in extensions and providers * Add changes to the publish script following the beta release * Update the versions in static extension map and openbb metapackage --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: Igor Radovan… * Delete website folder (#6541) * [Feature] - Add derivates historical chart (#6520) * Add derivates historical chart * Try to debug test * Try to debug test * Try to debug test * Revert and lint * Revert * Add tests --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] - CLI integration tests (#6533) * Integration test batch 1 * Mark test * Update cli/integration/test_integration_obbject_registry.py Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> * example of command tests * Add more test cases --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] Improvements to handling charts on the CLI `results` (#6544) * better handling of the chart arg: falls back to charting.to_chart() and only then, if not possible to display falls back to the print_rich_table() * handling chart arguments aka unknown arguments * propagating changes on return type of parse_simple_args to choices.py for coherency * fixing local variable 'export' referenced before assignment (#6545) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Merge main with dev (#6552) * add snowflake integration video (#6339) * [HotFix] Fix broken URLs in docs page. (#6368) * Fix broken URLs * use full URL to other docs pages. * [Release] 4.2.0 (#6422) * [Docs] Remove Reference to `to_chart` in OBBject. (#6096) * remove reference to to_chart in OBBject. * put chart description back in OBBject properties * [Feature] - Create openbb assets folder (#6101) * create openbb assets folder * fix unittest * rebuild --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Fixes to_df() where the date series contains multiple TZ-offsets. (#6099) * allow mixed utc offset in a tz-aware date column * enforce ascending from all providers for price.historical * fix tests * add comments and apply treatment to basemodel_from_df before JSON output * yfinance consistency * add unit test * add unit test * better test * ruff --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Update the quantitative extension to make more sense (#6087) * Split out a rolling submenu for the rolling functions * Make a performance and a stats submenu. * Test the statistics functions * lint * lint * dupe test * pylint * ruff * Try tests quick * black magic signature funcs * fix my custom tests * Fix the existing imports/urls * push the api update * okay I figured out whats going on * this should be all of them * Correct docstringing examples --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [BugFix] Fix ECB Yield Curve (#6108) * fix ecb yield curve * standard model update * Update unit-test workflow to check for changes to openbb_platform (#6109) * [Bug fix] - Fix package mypy (#6110) * fix: package mypy * types * black * [Feature] - Equity router descriptions & examples (#6103) * feat: equity/calendar * feat: compare router * fix descriptions * darkpool + discovery * fix paragraph issues * fix descriptions * fundamental part 1 * fundamental part2 * transcipts * ownership * fix * price * shorts * Update darkpool_router.py * minor fix * shorts examples * examples * ruff * black --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] - Add `exception_handler` decorator to static (#6112) * add exception handler decorator * add exception handler decorator code * updated static * rebuild to fix docstring indentation --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * update extensions list (#6114) * add missing field descriptions to yfinance equity price historical (#6116) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * remove charting extension env var (#6118) * [BugFix] Fix Company News (#6111) * fix company news * update tests * multiple symbols for polygon * don't include pageSize in Benzinga querystring, fixed as 100 * remove extra space * black * unused imports * make benzinga test cassette smaller * missing params * clear empty strings --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [BugFix] Allow Multiple Symbols in `equity.fundamental.metrics()` from `yfinance` (#6124) * allow multiple symbols in key_metrics from yfinance * field order thing * remove unnecessary function (#6125) * [Docs] Update OpenBB Copilot docs (#6106) * WIP: Tweak description. * WIP: Experimenting with react-player * WIP: Add copilot docs. * fixes videos width/height * WIP: Refine videos and copy. * WIP: Add last videos and sections. * Add bring-your-own-copilot section. * Tweak grammar. * Add copilot link. * Fix typos. --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * [Enhancement] Add Previous Close to DATA_DESCRIPTIONS (#6120) * add data description for previous close * ..just the one * update the model tripped by this change --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * added australia as a country also (#6131) * [Bug fix] - Fix regulator cik map standard model (#6129) * Fix regulator cik map standard model * fix description * Update cik_map.py * increase timeout to 30 (#6115) Co-authored-by: James Maslek <jmaslek11@gmail.com> * clean up some v3 deps (#6105) * clean up some v3 deps * forgot we need to do the requirements txt files * not sure it matters, but run ruff + black * am addicted to bug fixes --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Bug fix] - explicit multiple items docstring (#6127) * explicit multiple items docstring * rebuiild * rebuild again --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * [Feature] Pretty Pydantic `ValidationError` exceptions (#6130) * fix validator in fmp IndexHistorical model * make ValidationError pretty * modify arg error * linting fmp IndexHistorical * black * remove unused code * tmx etf info (#6132) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * [Feature] - Platform V4 Markdown Generator V2 (#6094) * add recent `openapi.json` * fix data types in models * removed `openapi.json` * set default date value as None in PolygonCurrencyPairs class * add function to generate reference.json file * reworked function to improve readability * reword function to add seo metadata * add functions for creating markdown sections * add code to extract data card markdown title * add additional functions for generating index and data models file * extract first sentence of the description for cards * code cleanup and documentation * linting * linting polygon models * add openbb import statement in create_reference_markdown_examples function * add POST method functions * cleanup; reworked generate_reference_index_files function * moved development section to 7th position in the sidebar * fix POST function params default value add standard flag to QueryParams and Data fields cleanup * add type expansion from package_builder.MethodDefinition * sort data models cards alphabetically make printing less verbose * make MAX_CARDS global display less content in cards in Commannds section * cleanup * Remove '_' from the cards under Commands section * " to ' in econometrics/causality * replace ' with " in ReferenceCard for reference dir index files * remove extra . from the quantile function description * shoutout to @deeleeramone for finding POST method description bug! * set correct value for standard field * handle BaseModel types in provider data fields * unit tests for the platform markdown generator v2 * yeet 'Default' and 'Optional' columns in the 'Data' section * last minute bug fix * add info for multiple symbols * make multiple items info same as platform static * organize sections properly * sort reference sub-directories alphabetically * extra space in 'OBBject extra' description * add type expansion for fields with multiple items POST method cleanup --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Docs] Adds Example Notebook for the Implied Earnings Move (#6128) * adds example notebook for the implied earnings move * remove commented out line --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] - Sync with new openapi.json (#6137) * feat: create data tabs * fix: uncomment * fix: remove unecessary comment * sort side bar * comment * uncomment * use .dev functions.json + clean traverse * fix futures example * fix example * point to .co * Fix the v3 markdown generation workflow (#6138) * fix workflow * debug time * see if the docs generate at least * ahhhh i found it * getting there * put the test first * some keys cleanup * small change to error message * update functions.json (#6140) * fix intraday check in charting ta_class (#6119) Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * [BugFix] Display EconDB as source for macro (#6143) * [BugFix] Disable Intrinio `InstitutionalOwnership` model (#6142) * disable fetcher in init and fetcher tests * disable provider test params from equity python and api tests * updated static * add more examples into findSymbols (#6139) Co-authored-by: James Maslek <jmaslek11@gmail.com> * [BugFix] Fix SEC ETF Holdings Parsing Exception (#6121) * fix etf holdings * linting * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/update xl docs (#6145) * remove print * update obb.get docs * example * md lint * fix get reference (#6147) * [BugFix] Filter OECD data using `start_date` and `end_date` parameters (#6144) * move constant dicts to constants.py filter by start_date and end_date * black * black again again * Merge 'main' into 'develop' (#6151) * Release/3.2.4 (#5696) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * 3.2.3->3.2.4 * Changelogs * new changelog --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Andrew <andrew.kenreich@gmail.com> Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Luqman <luqazino@gmail.com> Co-authored-by: Adwait <111136306+AdwaitSalankar@users.noreply.github.com> Co-authored-by: Abhishek Amar <66067391+abhishek-amar@users.noreply.github.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Ramazan <guvencramazan@outlook.com> Co-authored-by: joshuabuildsthings <joshuabuildsthings@users.noreply.github.com> Co-authored-by: wojda <114031148+polooner@users.noreply.github.com> Co-authored-by: Bim Phomthong <118195204+bimbolimbo@users.noreply.github.com> * Release/4.0.1 (#5840) * test * ultima description (#5541) * Updating showcase page (#5543) * updating showcase page * use sdk instead * add new bot command autopost docs (#5530) add new bot command autopost docs to docs.openbb.co Co-authored-by: James Maslek <jmaslek11@gmail.com> * Hotfix/ultima improvements (#5553) * tweaks for monetization * fix linting issue * fix: Modify 'load' behavior to append data to existing sheet (#5503) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Fixed 'worksheet not found' error during export to an existing sheet * Changes: * Now if the sheet exists in the xlsx file it will ask the user if he wants to replace/append/create new sheet --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * added platform API integration test to Nightly build (#5571) * Add columns to `stocks/search` (#5565) * Add columns to `stocks/search` isin, cusip, figi, composite_figi, shareclass_figi * Update test_search[False].txt * Update test_search[True].txt * Delete tests/openbb_terminal/stocks/cassettes/test_stocks_helper/test_search.yaml * Create test_search.yaml --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * updating ultima urls (#5587) * fix: A value is trying to be set on a copy of a slice from a DataFrame #5582 (#5591) * Update README.md (#5598) * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * fix docs (#5646) * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update settings.md (#5665) * fix front matter (#5667) * #5633 adding comma every 1000 (#5652) * #5633 adding comma every 1000 * pylint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Hotfix/reports model render report sanitize inputs (#5669) * Adding more robust special character handling to create_output_path().Addresses https://github.com/OpenBB-finance/OpenBBTerminal/issues/5299 * Running black linter on code to conform to OBB style guides. --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * hotfix/fix-gov-histcont: Fix #5650 - /stocks/gov/histcont (#5676) * fix histcont * some cleanup * remove sort line * 12-31 not 12-12 * columns_keep_types * remove space in regex (#5675) * Pin openai (#5685) * Clarified stocks/ta empty recom object message (#5468) * Clarified stocks/ta empty recom object message * black * lint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * improved market cap value extraction (#5169) * improved market cap value extraction * pylint --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Release/3.2.4 (#5704) * 3.2.3->3.2.4 * Changelogs * new changelog * OpenBB Platform v4 (#5225) * change location * check something * add cache * fixed auth w/@IgorWounds and @montezdesousa * fixes for econometrics * include Darren auth suggestions * some routers included if dev + chg hub backend var * coverage router should not be here * update docker readme * forgot to check auth here * Change extension imports * update docstrings and readme * headers function wasnt being called, just referenced * relative import * econometrics add headers everywhere * Fix QA * Fix TA * Fix test * Fix python interface QA and TA * Lint * Cleanup * Change path * make the changes and some etf models * tests for command_runner * ruff * solving naming issues on pytest * Update some docstrings, fix typos and lint * solving econometrics instantiating wrong openbb * chaging the way pytest runs * messing around with the imports * ruff * Change template to add platform considerations (#5533) * change template to add platform considerations * @the-praxs suggestions * solving __pycache__ issue * removing typo * ci yml * making linters happy (i guess) * Improve Omega Ratio and docstrings * chaging pro validation hash * ruff * Fix OLS Summary and lint * Add OECD Provider for economy extension (#5534) * Add record to docs * update a couple of cboe models * Fix econometrics bugs. Make tests pass. Lint. * black * ruff * pydantic v2: remove deprecated Extra * pydantic v2: self.dict -> self.model_dump * revert pydantic * revert the revert * try 1: pin urllib3 < 2 * Revert "try 1: pin urllib3 < 2" This reverts commit3736c311cb. * Revert dep * Fix * re-lock * Skip all tests when doing cspell in pre-commit * Resolve linter errors * Add OECD to install script * Add OECD * Resolve more linter errors * Exclude static files of v4 python from ruff * More linting * Another attempt to resolve even more linting errors * Change how Literal is used * ticker. symbol. consistent. @piiq * change ticker field in Stock Search to is_symbol * Update Cboe model for stocks_search -> is_symbol parameter. * Fix issue * Lint * Small QA to rename SDK to Platform (#5544) * SDK -> Platform in docs * renamed in core * renamed in openbb `init` * `sdk` variable renamed as `platform` --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * `validator` -> `field_validator` in standard models * Standard convention for multi-ticker symbols (#5549) * standardize symbol input param in forex and crypto historical data * static * linting * Fix stock_search integration test params * Update dependencies and linting on the CI (#5550) * Remove ruff and black from platform dependencies * Update codespell configuration * Lint python code * Add toml and tomli to root dev dependencies * Update requirements.txt files * Fix buggy docstring in python package methods (#5548) * fix buggy docstring for methods * remove space * fix typing * avoid name collision with validator * Revert "avoid name collision with validator" This reverts commit8a30a44555. * typing * rebuild * python 3.8, ParamSpec not available * lint * ruff noqa * Merge with develop (#5551) * Charting extension integration tests (#5547) * initial proposal for integration tests on the charting extension * int tests for charting generation * python generator * ruff * boilerplate templates * python tests * tests for the api * using body instead so data don't get redefined * unit tests for coverage * ruff * docstrings * unnecessary access to keys() * Add trading economics economic calendar * dev install * Data Models disposition on the website (#5538) * pydantic v4 * flat structure * md files * Revert "md files" This reverts commitbd2170e2ad. * improve command descriptions * nice title and description * human readble data model names on left panel * implementation details section * content markdown files * markdown versioned files * showcase page * updates --------- Co-authored-by: tehcoderer <me@tehcoderer.com> * everything except tests * fix `datetime.date` import in fetcher test * modified url to remove `api_key` placeholder * record test * api key is called c here * fixed fetcher test for api key * recorded tests * refactor * life is ruff * codespell * Make Intrinio options chains great again (#5540) * add multithreading * cleanup * linting * use dateutil.parser * removed `TICKER_EXCEPTIONS` * modified `date` and `type` fields in standard model * set alias for `date` and `type` to match standards * static * static * Hotfix/fix post tests (#5555) * Fix econometrics * Fix ta * Fix qa. Remove intrinio to not be rate limited * Lint * Fix typo * obbject tests (#5558) * obbject tests * ruff * fix dev_install * fix unittests * black on nox * black on nox * nox * fix fetcher test so it can compare dates * fix intrinio tests * ruff * change to model_dum() instead (#5561) * Passing tests (#5560) * Passing tests * fix options * Fix most tests and bugs * fix forex missing params * make symbol upper in polygon fx pairs * fix fixedincome integration tests (#5564) * Fixing charting api integration tests (#5562) * fixing charting api integration tests * black * fix stocks less five API fails * fix the 5 failing stocks integration tests * recapture fmp stock news unit test * fix fmp forex api test * couple more forex integration fixes * changing the request to always use the legacy session. @jmaslek this is was broken for 3.8 and 3.9; with this change apparently all versions work - lemme know if you see any issue with this change * ruff * fix ta * add missing param * fix testers for the api * fix globalnews to use images instead of image * remove unncessary pandas import * econcal int tests * update gitignore * fix get_querystring to support lists * add missing parameters --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> * Stock Historical standardization and UX improvements (#5457) * polygon add interval standard param * attempt at standardization * Alpha Vantage params standardization * rename `get_intervals` and fixed bug for extracting wrong value * missed changing it in `extract_data` * linting * polygon cleanup * modified `start_date` & `end_date` type to `datetime` from `dateType` * standardized intrinio stock historical params * fixed yfinance * linting * revert start and end date to dateType from datetime * fix alpha vantage * changed param * fix intrinio infinite loop * `validator` is `field_validator` * revert time params and fixed intervals * `outputsize` alias set in `Field` * set interval description using in-build dict * yfinance stock param standardization * static * intrinio cleanup * Polygon add api params as `PrivateAttr` * modified yfinance params to `PrivateAttr` * intrinio remove overriding date params * fixed description for AV adjusted param * fix alpha vantage intraday not working * re-record and pass unit tests * pass integration tests * Update test --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix econcal endpoint (#5567) * fix econcal for python interface * fix econcal tests * fix non supported json output * Fixes FMP index endpoint to get 1 day interval data (#5535) * fix FMP endpoint for getting index data for `1day` interval * fix `open` type to prevent validation error * modifed `validator` to `field_validator` * type of fields is `StrictFloat` * re-record and pass test * linting * `validator` -> `field_validator`, a3'd everything * Fix regression in tests. Lint * updating the integration test actions * Fix typo * Fix typo * Fix import * Publish versions `a3` to Pypi (#5568) * bump versions and script to publish * small improvements * uncomment exception * openbb * publishing guidelines * improve docs * add providers to economy api * make symbol required in stock_quote * Fix keys * Fix oecd * add comma * revert * Add quotes * Sleep * Improve tests * Improve * Feature/query transform (#5566) * inject query into transform_data * swap query and data * update missing fetchers * last test failing * sig test fetcher * black * av add `query` to `transform_data` call * transform_data: missing refactoring * fix uvicorn command in the doc * Automated examples (#5576) * Automated examples * Fix bug * Lint * static assets built on 3.8 * Revert "static assets built on 3.8" This reverts commitfb82ff7bd9. * remove assets * static assets on 3.8 * static assets on 3.8 * Wrap in quotes * Improve wrap * minor fix * rebuild 3.8 * Fix bug * Fix edge case * Lint * rebuild --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * use SecretStr for sensitive fields (#5578) * use SecretStr for sensitive fields * fix * docstring * Add tests for provider (#5583) * Add tests for provider * Test standard models * Lint * Fix standard model issues. Co-authored-by: @the-praxs * linting * `symbol` -> `is_symbol` in `economy.index_search` * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * feature/v4-biztoc-provider: Adds Biztoc provider and GlobalNews (#5546) * add biztoc provider * duplicate field * black * request headers * recapture test * move stuff around * add integration tests * duplicate OECD entry in dev_install * duplicate entry for oecd in pyproject.toml * Add Biztoc to workflow * update readme: credentials * Add Preferences to README * improve tests * fix biztoc * obbject pylint * Bug fix: serializ SecretStr before dumping to json * export credentials as json (#5592) * Check for wrong, changed, or outdated params. (#5597) * Improving `economy.cpi` for the FRED data (#5602) * remove multiindex using coding magic * Update field descriptions --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Improve error message. * Improve * Test tests (#5607) * Test tests * Add test * 4.0.0a4 PyPI publishing (#5608) * changes to publish * fix mini conflict * typo * cleaned `descriptions.py` * fix description in `cpi.py` * Add ETF extension to v4 (#5609) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add ETF historical price from yfinance (#5610) * Add etf extension with search data model * Add FMP ETF search * Add fetcher tests * Add etf historical price standard model and route * Add etf historical data from yfinance * Add unit tests * Fix linter error. Organize imports * Update test data * Revert common descriptions erased by CPI PR * remove `symbol` from data for `stocks.ca.peers` * Test docstrings (#5613) * Test docstrings * fix minor bugs w/@IgorWounds * static only w/@IgorWounds * fix `importance` param in `economy.econcal` * right static only w/@IgorWounds * Fix econcal and add tests to noxfile * fix econcal static * re-record --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Clean up the newly created ETF extension (#5611) * Add ETF to dev_install bundle * Add integration tests for openbb-etf * Patch integration test generator scripts to produce lintable code * Add py.typed markers for extensions * user preferences descriptions (#5593) * user preferences descriptions * typo * Feature/v4-sec-provider: Add SEC provider to V4 (#5556) * coerce string type, add default=None * add sec provider and FTD function * update description * ruff * data model definitions in standard model already * duplicate oecd entries in dev_install and pyproject * actually commit * integration test * add stock search to SEC * add company filings for SEC provider * integration tests * remove duplicated line * ruff * **kwargs in Transform Data * some helper functions for later * black * add helper for mutual fund and etf lookup * add some SEC lookup helpers to a new regulators extension * black * ruff * fix test param * take institution filter out of sec stock_search * ruff * remove URL that codespell doesn't like * add cik-to-ticker map * add litigations rss feed * make openbb-regulators a dependency of openbb-sec * add SIC search * improve ftd and remove BeautifulSoup from SEC dependencies * fix parsing the zip files pre-2009 * ruff * update descriptions * recapture ftd test * tests params * typo * change limit param to 1 in test_sec_stock_ftd * Add didiers to_records method (#5588) * Add didiers to_records * unused import * Bring back polars + do what igor suggested * Make the output consistent with what it was. * Black ? * spelling. oops. almost like we have a pre commit or something * Feature/v4-price-performance: % returns for various horizons, comparable across multiple tickers. (#5618) * coerce string type, add default=None * add price_performance endpoint from FMP * black * extra period in docstring * ruff * forgot one file * Feature/ipo-calendar: V4 IPO Calendar (#5605) * coerce string type, add default=None * add intrinio ipo calendar * fix typo * sort __init__ * fix description * make requested changes * update test params * black * test updates * etf integration * Add disc router and WSJ provider * OBBject extensions (#5612) * changes to core * bug? * docstring * doc * Update credentials.py * fix model_dump * create extensions * fix docstring * doc * revert change query_exc * doc * fix container test * redirect obbject test patch * doc * rename method * move decorator to extension file * rename method extend_obbject * changes in creds model * avoid credential racing * doc * rename prop * doc * doc * remove comment * comment some code * free extension names * docstring * doc * docs * Hotfix/fix-v4-economic-calendar: Add FMP to Econ Calendar and fix some TE bugs (#5580) * coerce string type, add default=None * adds fmp to economic calendar and fixes some things with TE * ruff * etf integration test * missing provider for test * rename te cassette to economic_calendar * fix test * rename tests --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Add stocks disc endpoints (#5630) * Add stocks disc endpoints * Explicit * Lint * Add tests * Bump timeout * Feature/disc router (#5616) * Add disc router and WSJ provider * Lint * Lint * Move endpoints under ETF router * Update etf_performance.py * Add ETF info and sector exposure from FMP (#5620) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Fix linter errors after the merge * Fix more linter errors * Fix failing and add missing tests * Fix integration tests * Fix calendar ipo tests * Add ETF holdings and holding report dates from FMP (#5629) * Add ETF info from FMP * Add integration tests * Add unit tests * Add etf sectors endpoint * Add etf sectors fmp endpoint * Omit nested sector list from fmp info data * Update tests and test data * Update test data * Specify provider explicitly in integration tests * Update tests * Skip yfinance etf historical test * Add etf holdings and holdings date routes and standard models * Add fmp holdings and holding dates fetchers * Update holdings fetcher to properly handle date object inputs * Add unit tests * Add integration tests * Black after merge * Fix test input data format * Disc router for equities. (#5640) * Disc router for equities. * add tests * Bug fixes in financial statements (#5537) * `validator` to `field_validator` in standard models * Polygon add `ttm` to `period` param * Revert "Polygon add `ttm` to `period` param" * Polygon add `ttm` to param `period` * `EarningsCallTranscript` standard model removed `quarter` param * use `tag` instead of `name` for correct field name * fix url for intrinio income statement * modified intrinio cash flow `transform_data` function * set optional data fields and validate dates * fix insider trading not fetching recent data * linting * refactoring * refactoring * set param alias in fmp stock insider provider model * get all quarter data for intrinio * add `limit` param to `stocks.fa.ins` * refactoring and linting * removed additional comment * linting * re-recorded and fix tests * cash flow standard model field type to `StrictFloat` * Intrinio cash flow model fixed to get all quarters' data * linting * refactoring * financial statement standard model field type to `StrictFloat` * Intrinio financial statement model get all quarter data * set `period` type to `Optional[str]` * add `period` param to balance sheet provider models * add `period` param to cash flow provider models * use alias in model dump * remove `ttm` from `period` param * revamped intrinio financials * fixed incorrect description for `limit` param * modified tests for `balance`, `cash` and `income` * re-recorded tests * skipped intrinio financial statement fetcher tests * Add ETF county weighting command with FMP data (#5645) * Remove code that wrongfully infers the filing date as end of quarter * Add etf countries command with fmp data * Add countries command to etf router * Update sector and country weighting fmp models * Fix docstring typo * Add unit tests and update mock data * Add integration tests for etf.countries * Bring back missing integration tests * Fix economic calendar integration tests * fix missing data in intrinio financials * removed inutile params from Polygon financial statement models * Intrinio IPO overhaul * tests fixed and re-recorded * Add ETF holdings performance with FMP data (#5659) * Add etf holdings performance endpoint * Add tests * Fix failing polygon fetcher tests * Split long holdings lists into chunks and update test data * Change chunk length to 500 tickers * Add stock search from FMP (#5642) Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Feature/v4 pypi (#5579) * improvements to the publish script * move scripts * initial script that builds the package * adjustments on the docs * test pypi workflow * add hour and minute to version * black * ruff * duplicate file * moving files instead * build throught the script instead * update nox file * integration tests workflow * change workflow * fix dev_install * fix in sed cmd * testing the platform only * commenting out the publishing * fix run commands * improvements to the publish script and doc * fix publish script * updating the script and the workflow * feature/v4-pypi nightly (#5589) * init * Update nightly.py * cleanup * init file * not referencing dev_utils * updating obb platform key * revert * Increase warmup time * project name on pyproject and adding the --pre flag on readme * moving to the build folder * fix noxfile * reflecting the moves on the import statements * fix pyproject path * ruff * fix paths * fix super typo * update workflows * moving the pypi terminal files into its folder --------- Co-authored-by: teh_coderer <me@tehcoderer.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * economy.calendar nasdaq (#5628) * add quandl econcal * unittest * add integration tests * replace   * fix bug TE importance * small fix * remove stuff from quandl * add nasdaq provider * add nasdaq to install files * Update test_economy_api.py * test * quandl leftovers * remove quandl econcal test * lint * replace   * ruff * lint * update nasdaq gmt * validate countries * here * no need for this * fix calendar tests * static * static * remove error * static * readme + website * readme * remove changes TE * typo * fix unittest * fix tests * Update __init__.py * Update economic_calendar.py * revamped model and added helpers for date range --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Feature/v4-dividend-calendar: Adds Nasdaq dividend calendar and moves the command out of fundamental_analysis (#5672) * add nasdaq dividend calendar and move out of fundamental_analysis * black * ruff * add random-user-agent to pyproject.toml * add nasdaq ipo calendar * add nasdaq flag for SPO to IPO calendar * add spo test param * black * dividend test * fix transform_query - nasdaq_calendar_ipo * bring back different headers for ipo calendar * remove references to test * Add disc endpoints (#5660) * Add Quandl top retail * Add tests * Add Seeking Alpha * Add Filings * Change Provider * Fix test * Add dev_install * static * static correct * y u forget me * updated deps * static --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * using dev install (#5673) * Expanding the `fixedincome` menu (#5655) * models and fetcher * making the fetcher visible * std model * adding the command * improvements to the models * typo * adding the command * imrpovements to dwpcr * standard model for ecb int rates * adding the fetcher for fred * standard model of ice bofa * add ice_bofa command * ruff * ice bofa fetcher * moody std model * moody * std model * add cp command * unused import * cp * spot * ruff * hqm * tmc * ffrmc * tbffr * ruff * typing fixes * buggy dates * fred fetcher tests * ruff * adding ecb as a provider * adding new provider related stuff * adding the new command eu_ycvr * models * test for ecb fetcher * Feature/v4 fixedincome int tests (#5661) * integration tests * happy ruff * mini adjustment * ruff * typo * verbose type * fix tests * docstrings everywhere and an happy pydocstyle * fix tests * Feature/user-cache-dir: Add User Preference for the Cache Directory (#5621) * add user preference for storing cached data * ruff * fix tests? * fix test key error..? * etf integration test fix * add cache dir to SEC * black * improve docs structure for V4 (#5586) * improve docs structure for V4 * moving over changes * Add Docs to the navbar * add some, re-order sidebar * fix sentence * add docs install to source instructions * insert a couple of links, fix a typo * big terminal docs usage revamps * improve toggle component for tutorials * get rid of TOCs for all terminal docs for consistency and simplicity * improve platform docs * improve bot docs content structure * remove index from bot docs * improve ON THIS PAGE to only display TOC if at least 1 element * make edit this page text and icon on same line * add author and date to docs * add basic syntax page to usage * sidebar order for usage section * move api start command to the top with the import python import * some install page additions * small improvement * refactor routines section * Update introduction-to-routines.md * Update pipeline-of-commands.md * Update introduction-to-routines.md * Update routines-for-power-users.md * Update community-routines.md * update keyboard hotkey macros * askobb page * Update askobb-feature.md * Update index.md * Update index.md * Update index.md * Update index.md * fix images * remove HeadTitle from all files where it exist * get rid of extra spacing in markdown * small update * small edit * need index at the start because of main path when homepage of docs * use openAI to create SEO for front matter on my behalf * remove table of content from sdk page * finish improving metadata SEO for SDK docs * update duplicate header * update HeadTitle to be more specific on product * remove index from bot telegram reference * delete duplicated title for platform reference * another update * Hotfix/econometrics export filename fix (#5508) * fix: Modify 'load' behavior to append data to existing sheet Details: - Added logic to detect existing sheet and append data if present. - There is no direct way to append on the sheet, so I am reading the sheet to get the last row number and then writing after that row number. Resolves: #5472 * Added --export option for exporting to a desired file in /econometrics menu * Added a -f/--file option to provide the filename for export. Made -t/--type and -f/--file mutually exclusive. If -f is not given, -t is required and the filename will be generated based on the time and module. * Revert `helper_funcs.py` to original state * Made some arguments not required. * Minor changes asked by @deeleeramone * No sheet name * black --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * FIX #5600 Updated the Twitter logo to X logo (#5601) * Change Ultima paragraph (#5624) * change ultima paragraph * remove old paragraph * Update CONTRIBUTING.md (#5623) * mobile line-brake fixed (#5604) In the mobile view (media max 400px ), the text line "Installation >>" appears broken into smaller segments. Co-authored-by: James Maslek <jmaslek11@gmail.com> * start PR so screenshots can get attached via GitHub website * Update qa.md * Docs/terminalpro and improvement (#5622) * add first iteration of content for Terminal Pro * Update index.md * Update dashboards.md * Update folders.md * Update grouping.md * Update report.md * Update templates.md * Update quick-start.md * Update index.md * Update index.md * Update home.md * Update news.md * Update index.md * Update index.md * Update index.md * Update data-provider.md * Update chat-with-widget.md * Update data-manipulation.md * Update forecasting.md * fix: images self closing tags * fix: only pro visitors can see pro * inter font * improve SEO content and restructuring * add new package for toggle on tutorials * move folder around * improve main page of each prod * small updates and improvements * fix logo above * small improvement in headtitle for portfolio funcs * fix typos from OpenAI's GPT-4 * fix _category_ json * remove generic SEO words * add script that generates SEO for documentation * add missing file * remove sdk warning message * fix links for andrew --------- Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> * Add light blue banner, blue when clicking sidebar + fix link in docusaurus.config.js (#5627) * typo * pro docs tab coloring * sidebar selection blue * redirecting missing * Update crypto introduction.md * titles * another title * Update crypto dd.md * Update defi.md * Update disc.md * Update nft.md * Update onchain.md * Update ov.md * Update introduction.md updates URL * Update introduction.md add HeadTitle * Update ba.md * Update comparison.md * Update dark-pool-shorts.md * Update disc.md * fix docs (#5646) * Update fa.md * Update gov.md * Update ins.md * Update tradinghours.md * Delete website/content/terminal/menus/stocks/options/screener.md * Update Options introduction.md * Update screener head title * Update screener TOC * Update econometrics.md * Update economy head title * Update etf.md * codespell * Fix the redirect for intro to the correct url for docs (#5658) * fix the redirect for intro to the correct url for docs * fix code linting --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * Contributing guidelines (#5615) * intro section * what's expected sections * improve sections * improve sections and move how to add a data point * moving qa under contributor * better intro * moving the sharing section * better expectations * small intro to the contributor guidelines * moving things under the contributor section * there is no pre commits on the platform yet * dependency management * best practices for extensions * typo * collapse options subfolder * codespell * Improve Pro documentation further (#5641) * small improvement * Fix TutorialVideo for mobile view * main page terminal pro docs * jose whelp * placeholder index file that needs to be removed * fix: fixes sidebar, removes unused index.md * update link to api keys * update api keys link * fix hyperlinks in terminal helper * fix a few more links * fix some more links * linter * black linter * improve main docs page for each product * small refactor * header to take to main page of product * run OpenAI script to generate SEO for pro content --------- Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> * Update folders.md * Update integrate-your-own-backend.md * Update index.md * Update fixedincome.md * url * Update forecast.md * Update settings.md (#5665) * Update forex.md * fix front matter (#5667) * Fix conflict markers that got into markdown during previous merges * Fix front matter list formatting * Fix typo * small thing * fix hyperlinks * Update .codespell.ignore * output_type options * Architectural considerations * Update sidebar to hide pro section by default * Minor copy changes * TET pattern * import statements * clarification on preferences * Minor copy changes * Lint markdown and python * fix: open index on collapsible root elements * remove old content * options title * Fix linting errors * Refactor sidebar label to url mapping condition --------- Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Add multi-ticker support to etf_countries (#5670) * add multi-ticker support to etf_countries * remove commented-out lines * normalized percent points * percent -> percentage * Fix Nasdaq Econ Calendar Fetcher (#5668) * fix nasdaq econ cal request * more html tags * add random-user-agent to pyproject * another edge case - 24H -> 00:00 * Feature/v4-unusual-options: Adds unusual options endpoint. (#5677) * add unusual options fro Intrinio * test params * move sorting * Change type * update FMP fetcher to use the V4 endpoint (#5681) * Fix price performance not parsed correctly when there is only 1 ticker (#5678) * Add crypto search standard model and FMP data for it (#5679) * Apply renaming to news data (#5684) * inegration complete * reformatted for black * fix ruff issues * revised integration * changes to versions in pyproject.toml and updated lock files * Rename models * Update tests * Fix typos here and there * Update routers * Apply rename to ultima * Properly mock api key * Mock ultima api key --------- Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> * Feature/v4-market-snapshots: Adds full market snapshots (#5473) * add stocks market snapshots from fmp * add fmp fetcher test * unused imports * add polygon to market_snapshots * update fmp market_snapshots * black * pydantic2 things * updates * change validate_obj to model_validate * polygon cleanup * tests * descriptions * black * data description * minor adjustments, using less local variables, improving readability and removing pandas * better structure * minor adjustments * lint * fix int tests --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Add NBBO Quotes, with historical, to `obb.stocks.quote()` (#5617) * coerce string type, add default=None * add polygon stock quote * limit cleanup * add greater/less than to params * limit param * black * tests * fix tests * test_etf * rename model and function to NBBO * add standard model for nbbo * improve standardization * not redifining builtin max * fix input params * integration test params * removing unused import Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * revamped code * re-recorded nbbo test * added symbol validator * added alias in field * Stock news -> Company news --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * hotfix/update-quandl-to-nasdaq: Merge Quandl + Nasdaq (#5682) * merge quandl nd nasdaq * dev_install.py * test param name * economy python integration test * Add more input types to data processing commands (#5453) * adding more supported types to data processing commands * ruff * removing unused import * docstrings * data processing types covertion * data description * test filters * ruff * fix package builder tests * ruff * removing print * Add stocks/dps module (#5638) * short volume * pyproject missed * add sec short interest with days to cover * Add FINRA OTC endopoint * some tests * rest of unit tests * Integratin test scripts * dev install * linters caught by pre commit * lines too long * Last test files * maybe it needs a lock file? * thanks pratty * Maybe ill actually listen to pratty next time * sec test date freeze * I cant hit buttons * re record tests * tests 3 * Stockgrid test * regen int test * more testing * lint * moved these fns * dis killing me * one more test * last one * Update integration tests * Fix tests picking up wrong dps route --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename Forex to Currency (#5687) * restore fields as optional (#5686) * Rename Crypto (#5689) * added `crypto.price.historical` * static * fix tests * fix incorrect label * Move model from sec to finra (#5692) * Update toml * fixed deps * add openbb-etf lock file * cleanup * cleanup (#5694) * Rename Fixed Income (#5695) * Rename Fixed Income * Add routers * Rename stocks to equity (#5688) * Rename stocks folder * Rename openbb_stocks package * Rename routers * Reroute equity menu * Update routes based on feedback * StockNews -> EquityNews * StockInfo -> EquityProfile * Rename Equity calendars * Equity peers rename * Rename discovery * Rename fundamental * Rename price command models * Rename shorts * Update charting router * Fix seeking alpha upcoming release date * Fix linting errors * Update tests * Fix tests * Skip econometrics api tests because it's python only * Update integration tests and test data * Historical analyst estimates * Skip cboe options chain test. Unable to record vcr cassette * re-record cboe cassettes * Document CBOE unit test creation caveats --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Feature/files-for-igor: Adding a few standard models for Igor (#5699) * add some standard models for Igor * codespell * update descriptions * Add devtools metapackage (#5703) * Add openbb-devtools metapackage * adding devtools to the dev_install script --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * Rename econometrics commands to be more verbose (#5702) * Expose command to model map (#5706) * Rename ta qa (#5708) * Rename ta folder * Rename ta to technical * Rename qa folder * Rename qa to quantitative * Rename the actual routes in quantitative * Equity cleanup (#5707) * cleanup * static * renaming to equity cc @the-praxs * Proof reading --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Don't enforce imperative for first word of the docstring * Remove ultima from default extensions * Rename `economy` and create `index` extension (#5705) * renamed economy and re-recorded tests * static * market indices * european indices * fred indices * index constituents * tests * correct package name * oops * static * linting * Move COT commands to regulators * Rename economy.list to available_indices * Rename GDP models and clean up * Fix charting tests * Drop _indices from available_indices command * Fix obbject to_dict test --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Rename etf/disc (#5715) * Docs/v4-working-docs: PR to Work on V4 Docs (#5693) * Revert changes related to pydantic2 made into v3 code * Revert fred model changes in v3 * Revert pydantic2 databento model changes in v2 * Update some names and v3 lock file * Clean up openbb/package before the beta release * Platform publishing procedure (#5701) * update instructions * introducing the version script * publish message * fix platform path * reflecting version changes * getting version from installed packages instead * removing toml from dependencies * Changes to get `a7` out (#5697) * changes to get a7 out * etf menu on the pyproject.toml * poetry lock * bump `openbb-etf` to `a5` to match version * updated deps * removing ultima * removing references to a4 cc @the-praxs * Bump index menu version * poetry lock --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Update publishing instructions * Bump core dependencies in extensions and providers * Add changes to the publish script following the beta release * Update the versions in static extension map and openbb metapackage --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: Igor Radovanovic … * Security updates (#6531) * Bump website deps to patched versions * Drop support for python 3.8 * Bump scikit-learn to a patched version * Run urllib3 update on lock files * Bump ipykernel that brings in tornado to devtools * Apply braces patch in frontend-components * Drop python 3.8 from devtools support * Bump dev environment to python >=3.10 to get rid of ullib3 v1 in lock files * Downgrade and pin numpy to 1.x until pandas-ta supports 2.x * Bump runners checkout and cache actions and python version * Fix platform hub integration test * Update dev install script to allow python 3.9 * Bump actions to versions that use node 20 vs node 16 * Bump exchange calendars package to resolve deprecation warnings * Resolve bugs highlighted by the tests (#6538) * Fix FMP currency snapshot model after a security update * fixes * add to the commit * lint --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Bump finviz * Remove website folder that was added by merge conflict resolution * update test cassettes * biztoc test * fix most of test_charting * bump yfinance * reference.json * Fix some tests * Enable 3.12 support * Have 2 sets of cassettes for 2 versions of urlib3 * Allow 3.12 for sec provider * add json_schema_extra choices to compare groups * sorted choices * test fixing: cassetes * fix charting test * black * headers in sec download zip file * Delete yaml * lint * lint * Record https test_sec_compare_company_facts_fetcher * Record https test_sec_compare_company_facts_fetcher, new params * Record test in 3.9 and 3.10 * Record yfinance tests * Record 310 with us vpn * Record tests individually * record without cache * record without cache --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: hjoaquim <henriquecjoaquim@gmail.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * [Feature] Improve PyPi publishing tool (#6542) * Update PUBLISH.md * Refactor publish.py * fix ruff check * final publish.py * feat: add option to change semantic version with poetry * replace with publish --build cmd * Bump supported python version in toml files (#6556) * Unpin <3.12 in lost tomls * Bump linearmodels to latest v4 minor * [Feature] - Add Futures Curve Chart (#6547) * Add chart * multiple dates allowed for yfinance * redefine local * exclude None and unset from basemodel_to_df * cboe vix with multiple dates allowed * black * unit test * pylint * futures curve chart with multiple dates allowed * fix typo. * format dates for display * pylint * black * lint * record test --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * [BugFix] Release fixes (#6560) * Bump openbb version * Small fixes * update version * Add python 3.12 to noxfile * ^ * python 3.12 compatibility fixes * fix typing * fix currency snapshots * black * Enable test collection on 3.12 * Update mock called once assertion syntax * remove logging assertion * fix command runner chart assertion --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * [BugFix] Update openbb-charting With Numpy Dependency. (#6562) * update openbb-charting with numpy dependency. * quantitative extension * [BugFix] Fix OECD Unemployment Age Brackets & Fix `No module named 'pkg_resources'` (#6563) * fix pkg_resources not in Python 3.9 * black * [BugFix] Fix Provider Interface Body Assignment Of Dict-Like Parameters (#6561) * fix provider interface body assignment for Dict-like parameters. * 3.9 safe --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Fix gh stars chart history + mention pro at the top (#6568) * add primary dealer positioning (#6566) * [BugFix] Charting Integration Tests (#6569) * fixing charting tests * lint * [Feature] Extract provider to logs (#6565) * remove ultima + althub * move twitter keys * Extract provider from kwargs and add to logs * pydocstyle * update test * fix tests --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Bugfix] Uncover cmd len warn (#6536) * show warnings * better error msg * mypy ignore --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * Bump openbb minor version: 4.3.0 * Remove deprecations: /equity/fundamental/overview, /index/market * Rebuild after deprecations * [Feature] Delay/Optimize Imports (#6532) * round 1 * black * more black * providers a-thru-fmp * charting settings * charting backend * black * charting_settings * missing nasdaq import * nasdaq mypy * fed money measure * some linting * black * more linting * more linting * charting imports * black * pylint * refactor fred * more linting * rest of the providers * didn't want that file * more cleanup * missed * ta_helpers * router views * chart ta_class * forgot a file * forgot another file * biztoc * package builder * technical router * fred params * bump finviz * fix tmx * more cleanup * try again * currency historical * equity search * missed files in commit * fix some tests * black * fix more test cassettes * more patchy * black * linters * more tests * black * mypy * delete unused model * more linting * forgot files * more linting * make up your mind, black, and stop moving pylint for me * more black * back to where we were before black destroyed it * .......... * .................. * unused fetcher test * remove standard model validator * commodity router * treasury prices * oecd tests * finra * container cleanup * black * forgotten file * linter * remove wrapped "" * fix merge * patches * ecb test * finra cassette * finviz cassettes * nasdaq cassettes * oecd cassettes * yfinance cassettes * more test cassettes * black * merge cleanup * cboe helpers * black * fix typo --------- Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * Bug fixes * Fix futures curve example * Fix equity historical test * Fix oecd + skip tests * Fix publishing script * Update OpenBBTerminal refs to OpenBB, repo renamed * Released code * Temporary remove mypy --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: tehcoderer <me@tehcoderer.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: Luqman <luqazino@gmail.com> Co-authored-by: minhhoang1023 <40023817+minhhoang1023@users.noreply.github.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com> Co-authored-by: Ayrton Parkinson <ayrton.parkinson1@gmail.com> Co-authored-by: northern-64bit <75195383+northern-64bit@users.noreply.github.com> Co-authored-by: Luqman <luqman.bello@openbb.finance> Co-authored-by: Eric Li <38477812+EricLi-Dev@users.noreply.github.com> Co-authored-by: Andrew <andrew.kenreich@gmail.com> Co-authored-by: Michael Struwig <mnicstruwig@gmail.com> Co-authored-by: capital0 <72140796+capital0@users.noreply.github.com> Co-authored-by: Ben Van Doren <benvandoren@users.noreply.github.com> Co-authored-by: Adi Sai <adithya.sairam1@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@gmail.com> Co-authored-by: Adwait <111136306+AdwaitSalankar@users.noreply.github.com> Co-authored-by: Abhishek Amar <66067391+abhishek-amar@users.noreply.github.com> Co-authored-by: professssor <62937125+professssor@users.noreply.github.com> Co-authored-by: Farookh Zaheer Siddiqui <129654632+FarukhS52@users.noreply.github.com> Co-authored-by: MAX SHESTOV <57421753+maxxsh@users.noreply.github.com> Co-authored-by: jose-donato <zmcdonato@gmail.com> Co-authored-by: Mohamad Fadil <fadil.parves@gmail.com> Co-authored-by: Ramazan <guvencramazan@outlook.com> Co-authored-by: joshuabuildsthings <joshuabuildsthings@users.noreply.github.com> Co-authored-by: wojda <114031148+polooner@users.noreply.github.com> Co-authored-by: Bim Phomthong <118195204+bimbolimbo@users.noreply.github.com> Co-authored-by: Ramazan <guvencramazan@yandex.com> Co-authored-by: omahs <73983677+omahs@users.noreply.github.com> Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com> Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com> Co-authored-by: Disorder AA <disorrder@gmail.com> Co-authored-by: Jingyi Z <zhao.elton@gmail.com>
82 lines
2.7 KiB
Python
82 lines
2.7 KiB
Python
"""Test the base platform controller."""
|
|
|
|
from unittest.mock import MagicMock, Mock, patch
|
|
|
|
import pytest
|
|
from openbb_cli.controllers.base_platform_controller import (
|
|
PlatformController,
|
|
Session,
|
|
)
|
|
|
|
# pylint: disable=protected-access, unused-variable, redefined-outer-name
|
|
|
|
|
|
@pytest.fixture
|
|
def platform_controller():
|
|
"""Return a platform controller."""
|
|
session = Session() # noqa: F841
|
|
translators = {"test_command": MagicMock(), "test_menu": MagicMock()} # noqa: F841
|
|
translators["test_command"]._parser = Mock(
|
|
_actions=[Mock(dest="data", choices=[], type=str, nargs=None)]
|
|
)
|
|
translators["test_command"].execute_func = Mock(return_value=Mock())
|
|
translators["test_menu"]._parser = Mock(
|
|
_actions=[Mock(dest="data", choices=[], type=str, nargs=None)]
|
|
)
|
|
translators["test_menu"].execute_func = Mock(return_value=Mock())
|
|
|
|
controller = PlatformController(
|
|
name="test", parent_path=["platform"], translators=translators
|
|
)
|
|
return controller
|
|
|
|
|
|
@pytest.mark.integration
|
|
def test_platform_controller_initialization(platform_controller):
|
|
"""Test the initialization of the platform controller."""
|
|
expected_path = "/platform/test/"
|
|
assert (
|
|
expected_path == platform_controller.PATH
|
|
), "Controller path was not set correctly"
|
|
|
|
|
|
@pytest.mark.integration
|
|
def test_command_generation(platform_controller):
|
|
"""Test the generation of commands."""
|
|
command_name = "test_command"
|
|
mock_execute_func = Mock(return_value=(Mock(), None))
|
|
platform_controller.translators[command_name].execute_func = mock_execute_func
|
|
|
|
platform_controller._generate_command_call(
|
|
name=command_name, translator=platform_controller.translators[command_name]
|
|
)
|
|
command_method_name = f"call_{command_name}"
|
|
assert hasattr(
|
|
platform_controller, command_method_name
|
|
), "Command method was not created"
|
|
|
|
|
|
@patch(
|
|
"openbb_cli.controllers.base_platform_controller.PlatformController._link_obbject_to_data_processing_commands"
|
|
)
|
|
@patch(
|
|
"openbb_cli.controllers.base_platform_controller.PlatformController._generate_commands"
|
|
)
|
|
@patch(
|
|
"openbb_cli.controllers.base_platform_controller.PlatformController._generate_sub_controllers"
|
|
)
|
|
@pytest.mark.integration
|
|
def test_platform_controller_calls(
|
|
mock_sub_controllers, mock_commands, mock_link_commands
|
|
):
|
|
"""Test the calls of the platform controller."""
|
|
translators = {"test_command": Mock()}
|
|
translators["test_command"].parser = Mock()
|
|
translators["test_command"].execute_func = Mock()
|
|
_ = PlatformController(
|
|
name="test", parent_path=["platform"], translators=translators
|
|
)
|
|
mock_sub_controllers.assert_called_once()
|
|
mock_commands.assert_called_once()
|
|
mock_link_commands.assert_called_once()
|