mirror of
https://github.com/OpenBB-finance/OpenBB.git
synced 2026-10-28 21:12:16 +00:00
* 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+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply… * Release/4.2.1 (#6456) * 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+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: tehcoderer <me@tehcoderer.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@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: Adi Sai <adithya.sairam1@gmail.com> * Hotfix/pypi openbb terminal (#5719) * renaming the project * documentation changes * Finishing touches to the publishing procedure (#5728) * finishing touches to the publishing procedure * grammar improvements * Run tests on develop (#5725) * Run tests on develop * Add a check that files changes in platform * Seprate Intrinio financials data tags into a different command (#5723) * add `ebit` field in income statement standard model * only add required data tags * remove calculations data * use `name` key instead of `tag` key * set `period` as required in data * remove `period` and `cik` from provider models * add `equity/fundamental/search_financial_attributes` with tests * clean descriptions file * add `equity/fundamental/financial_attributes` with tests * set `value` as `Optional` * Fix threadpool test error (#5734) * Remove ultima from deps (#5736) * remove ultima from deps * skip ultima test * black * change skip location * try except statement to avoid error on the ci * new currency reference rates pr (#5724) * point files to linters (#5739) * remove news from equity (#5741) * Add tiingo provider (#5740) * first commit * things * Add news endpoints * CryptoHistorical * Add currency and trailing dividend yield * things working * deps * fix pre commit things * tests? * black on the tests * pratty told me to add it * integration tests * added helpers * crypto revamped * currency revamped * trailing dividend yield revamped * equity historical revamped * company news overhauled * global news overhauled * remove `tags` param from news models * crypto correct `exchanges` description * james smh * re-recorded fetcher tests * fixed integration tests * econometrics smh * james smh again --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Add `derivatives` extension for `futures` and `options` (#5742) * removed options and futures * add derivatives extension * cleanup * bug #5649 (#5722) * bug #5649 * fixing --a upmom, downmom --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Rename the fmp search -> screener (#5744) * Rename the fmp search -> screener * misses some * i cant copy paste * docs/fix-urls: Updates the Terminal About URLs to match `/develop` (#5720) * update Terminal about URLs and some other broken links * ruff * intro * changing the heading levels * dependency management sections * structure * developer guides * structure * contributor guides * keywords and descriptions * broken urls * cool cards * Cool cards (#5727) * tidy up terminal/content * some more tidy up * fix styling for platform that was missing * more tidy up * improve color for dark and light mode * create new reference card for more basic cards * rename back to menus * implement all index.md for terminal, except reference * improve bot title * more refactoring * fix remaining index * header styling * more styling * heheheheheheeh * Revert "heheheheheheeh" This reverts commit7d095fcfd2. * Ccards (#5733) * links * more links * improved styling and chevron aligned to title * fix index.mdx urls for Terminal * update package.json * update index.mdx * fix generation * spelling * toolkit_extensions * update data extensions * couple of links * add tiingo to data extensions list --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: James Maslek <jmaslek11@gmail.com> * Stock leftover cleanup (#5745) * change to equity in `.md` files * `HistoricalStockSplits`->`HistoricalSplits` * `StockInsiderTrading`->`InsiderTrading` * sorry fmp * `EquityHistorical` cleanup * `EquityNBBO` cleanup * .md leftover * the last of stocks * Hotfix/urllib to dev group (#5732) * use the urllib3 dependency on the dev group instead * adapt the version script for the nightlies - if it's a nightly the package distribution name will have a different name * add dev dependencies to the dev installation bc of the ci * updating the import on validate_call according to: https://docs.pydantic.dev/latest/concepts/validation_decorator/ the way we were importing it breaks if pydanti… * [Docs] Guides for Metadata and AnnotatedResult (#6457) * [Docs] Redirect contributing URL (#6460) * redirect url * order * [Release] 4.2.2 (#6480) * 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+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: tehcoderer <me@tehcoderer.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@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: Adi Sai <adithya.sairam1@gmail.com> * Hotfix/pypi openbb terminal (#5719) * renaming the project * documentation changes * Finishing touches to the publishing procedure (#5728) * finishing touches to the publishing procedure * grammar improvements * Run tests on develop (#5725) * Run tests on develop * Add a check that files changes in platform * Seprate Intrinio financials data tags into a different command (#5723) * add `ebit` field in income statement standard model * only add required data tags * remove calculations data * use `name` key instead of `tag` key * set `period` as required in data * remove `period` and `cik` from provider models * add `equity/fundamental/search_financial_attributes` with tests * clean descriptions file * add `equity/fundamental/financial_attributes` with tests * set `value` as `Optional` * Fix threadpool test error (#5734) * Remove ultima from deps (#5736) * remove ultima from deps * skip ultima test * black * change skip location * try except statement to avoid error on the ci * new currency reference rates pr (#5724) * point files to linters (#5739) * remove news from equity (#5741) * Add tiingo provider (#5740) * first commit * things * Add news endpoints * CryptoHistorical * Add currency and trailing dividend yield * things working * deps * fix pre commit things * tests? * black on the tests * pratty told me to add it * integration tests * added helpers * crypto revamped * currency revamped * trailing dividend yield revamped * equity historical revamped * company news overhauled * global news overhauled * remove `tags` param from news models * crypto correct `exchanges` description * james smh * re-recorded fetcher tests * fixed integration tests * econometrics smh * james smh again --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Add `derivatives` extension for `futures` and `options` (#5742) * removed options and futures * add derivatives extension * cleanup * bug #5649 (#5722) * bug #5649 * fixing --a upmom, downmom --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Rename the fmp search -> screener (#5744) * Rename the fmp search -> screener * misses some * i cant copy paste * docs/fix-urls: Updates the Terminal About URLs to match `/develop` (#5720) * update Terminal about URLs and some other broken links * ruff * intro * changing the heading levels * dependency management sections * structure * developer guides * structure * contributor guides * keywords and descriptions * broken urls * cool cards * Cool cards (#5727) * tidy up terminal/content * some more tidy up * fix styling for platform that was missing * more tidy up * improve color for dark and light mode * create new reference card for more basic cards * rename back to menus * implement all index.md for terminal, except reference * improve bot title * more refactoring * fix remaining index * header styling * more styling * heheheheheheeh * Revert "heheheheheheeh" This reverts commit7d095fcfd2. * Ccards (#5733) * links * more links * improved styling and chevron aligned to title * fix index.mdx urls for Terminal * update package.json * update index.mdx * fix generation * spelling * toolkit_extensions * update data extensions * couple of links * add tiingo to data extensions list --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: James Maslek <jmaslek11@gmail.com> * Stock leftover cleanup (#5745) * change to equity in `.md` files * `HistoricalStockSplits`->`HistoricalSplits` * `StockInsiderTrading`->`InsiderTrading` * sorry fmp * `EquityHistorical` cleanup * `EquityNBBO` cleanup * .md leftover * the last of stocks * Hotfix/urllib to dev group (#5732) * use the urllib3 dependency on the dev group instead * adapt the version script for the nightlies - if it's a nightly the package distribution name will have a different name * add dev dependencies to the dev installation bc of the ci * updating the import on validate_call according to: https://docs.pydantic.dev/latest/concepts/validation_decorator/ the way we were importing it breaks if pydantic=2.5 @montezdesousa * loosing urllib3 version specification on the provider and adding it to platform dev deps * rmeoving urllib from top level deps; and removing --with dev flag * changing to ^ instead * Revert "changing to ^ instead" This reverts commit7300904e9f. * unnecessary dep --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/v4-bop - Add ECB Balance of Payments (Replaces #5716) (#5726) * add ecb balance of payments * missing __init__.py files * Nasdaq calendar earnings and fix FMP calendar earnings (#5718) Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/us-treasury-auctions: Adds Treasury Auctions endpoint and provider for US Government Data. (#5746) * add government_us provider and treasury auctions endpoint * black * add param for cusip * move logic for setting default start/end date * Update hub<>platform credentials map (#5749) * update hub<>platform credentials map * typo * Add API settings schema to system settings (#5743) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Skip checking creds (#5737) * skip checking creds * fix bug * ok mypy * add comment * rename required_credentials * fix * fix top_retail bug * don't require creds in some nasdaq fetchers * black * this was not here before * fix tests * update fetcher test * update contributing guidelines * Fix Quote (#5752) * Fix Quote * fixed return type and model validation --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Wrap up renaming global news to world news on a model level (#5750) * Wrap up renaming global news to world news on a model level * cleanup --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Remove eod from docstrings (#5751) * Wrap up renaming global news to world news on a model level * Remove "end of day" from historical price model docstrings --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Massive docstring cleanup (#5755) * sec router remove command * standard models cleanup * fmp cleanup * av cleanup * benzinga cleanup * biztoc cleanup * cboe cleanup * ecb cleanup * finra cleanup * fred cleanup * us cleanup * intrinio cleanup * nasdaq cleanup * oecd cleanup * polygon cleanup * sec cleanup * seeking alpha cleanup * stockgrid cleanup * tiingo cleanup * tradingeconomics cleanup * ultima cleanup * wsj cleanup * yfinance cleanup * sec router lint * fix date query param description * Updates system and api settings (#5753) * remove uncessary import on rest api * remove FrozenField and add api.version * allow setup from json * remove id tag * computed field is better * formatting --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Squeeze build time (#5756) * squeeze build time * bug fix * fix test * typo? * rebuild * keep tradingeconomics * docs/working-docs: Working V4 Docs PR (#5747) * post-install clarification, fix links * more links * change word * toolkit cleanup * rename 'contributing' to 'development' * update extensions * some urls * Update sdk-platform and v4-develop in urls (#5730) * Update sdk-platform and v4-develop in urls * Seprate Intrinio financials data tags into a different command (#5723) * add `ebit` field in income statement standard model * only add required data tags * remove calculations data * use `name` key instead of `tag` key * set `period` as required in data * remove `period` an… * [Docs] Fix Broken URLs (#6494) * fix broken urls * couple more * remove poetry install openbb_platform from docs generation. * Try it this way. * [Docs] Excel docs update (#6504) * update xl docs * update xl files * Release/4.2.3 (#6517) * [Release] 4.1.5 to `develop` (#6192) * 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+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: tehcoderer <me@tehcoderer.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@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: Adi Sai <adithya.sairam1@gmail.com> * Hotfix/pypi openbb terminal (#5719) * renaming the project * documentation changes * Finishing touches to the publishing procedure (#5728) * finishing touches to the publishing procedure * grammar improvements * Run tests on develop (#5725) * Run tests on develop * Add a check that files changes in platform * Seprate Intrinio financials data tags into a different command (#5723) * add `ebit` field in income statement standard model * only add required data tags * remove calculations data * use `name` key instead of `tag` key * set `period` as required in data * remove `period` and `cik` from provider models * add `equity/fundamental/search_financial_attributes` with tests * clean descriptions file * add `equity/fundamental/financial_attributes` with tests * set `value` as `Optional` * Fix threadpool test error (#5734) * Remove ultima from deps (#5736) * remove ultima from deps * skip ultima test * black * change skip location * try except statement to avoid error on the ci * new currency reference rates pr (#5724) * point files to linters (#5739) * remove news from equity (#5741) * Add tiingo provider (#5740) * first commit * things * Add news endpoints * CryptoHistorical * Add currency and trailing dividend yield * things working * deps * fix pre commit things * tests? * black on the tests * pratty told me to add it * integration tests * added helpers * crypto revamped * currency revamped * trailing dividend yield revamped * equity historical revamped * company news overhauled * global news overhauled * remove `tags` param from news models * crypto correct `exchanges` description * james smh * re-recorded fetcher tests * fixed integration tests * econometrics smh * james smh again --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Add `derivatives` extension for `futures` and `options` (#5742) * removed options and futures * add derivatives extension * cleanup * bug #5649 (#5722) * bug #5649 * fixing --a upmom, downmom --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Rename the fmp search -> screener (#5744) * Rename the fmp search -> screener * misses some * i cant copy paste * docs/fix-urls: Updates the Terminal About URLs to match `/develop` (#5720) * update Terminal about URLs and some other broken links * ruff * intro * changing the heading levels * dependency management sections * structure * developer guides * structure * contributor guides * keywords and descriptions * broken urls * cool cards * Cool cards (#5727) * tidy up terminal/content * some more tidy up * fix styling for platform that was missing * more tidy up * improve color for dark and light mode * create new reference card for more basic cards * rename back to menus * implement all index.md for terminal, except reference * improve bot title * more refactoring * fix remaining index * header styling * more styling * heheheheheheeh * Revert "heheheheheheeh" This reverts commit7d095fcfd2. * Ccards (#5733) * links * more links * improved styling and chevron aligned to title * fix index.mdx urls for Terminal * update package.json * update index.mdx * fix generation * spelling * toolkit_extensions * update data extensions * couple of links * add tiingo to data extensions list --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: James Maslek <jmaslek11@gmail.com> * Stock leftover cleanup (#5745) * change to equity in `.md` files * `HistoricalStockSplits`->`HistoricalSplits` * `StockInsiderTrading`->`InsiderTrading` * sorry fmp * `EquityHistorical` cleanup * `EquityNBBO` cleanup * .md leftover * the last of stocks * Hotfix/urllib to dev group (#5732) * use the urllib3 dependency on the dev group instead * adapt the version script for the nightlies - if it's a nightly the package distribution name will have a different name * add dev dependencies to the dev installation bc of the ci * updating the import on validate_call according to: https://docs.pydantic.dev/latest/concepts/validation_decorator/ the way we were importing it breaks if pydantic=2.5 @montezdesousa * loosing urllib3 version specification on the provider and adding it to platform dev deps * rmeoving urllib from top level deps; and removing --with dev flag * changing to ^ instead * Revert "changing to ^ instead" This reverts commit7300904e9f. * unnecessary dep --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/v4-bop - Add ECB Balance of Payments (Replaces #5716) (#5726) * add ecb balance of payments * missing __init__.py files * Nasdaq calendar earnings and fix FMP calendar earnings (#5718) Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/us-treasury-auctions: Adds Treasury Auctions endpoint and provider for US Government Data. (#5746) * add government_us provider and treasury auctions endpoint * black * add param for cusip * move logic for setting default start/end date * Update hub<>platform credentials map (#5749) * update hub<>platform credentials map * typo * Add API settings schema to system settings (#5743) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Skip checking creds (#5737) * skip checking creds * fix bug * ok mypy * add comment * rename required_credentials * fix * fix top_retail bug * don't require creds in some nasdaq fetchers * black * this was not here before * fix tests * update fetcher test * update contributing guidelines * Fix Quote (#5752) * Fix Quote * fixed return type and model validation --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Wrap up renaming global news to world news on a model level (#5750) * Wrap up renaming global news to world news on a model level * cleanup --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Remove eod from docstrings (#5751) * Wrap up renaming global news to world news on a model level * Remove "end of day" from historical price model docstrings --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Massive docstring cleanup (#5755) * sec router remove command * standard models cleanup * fmp cleanup * av cleanup * benzinga cleanup * biztoc cleanup * cboe cleanup * ecb cleanup * finra cleanup * fred cleanup * us cleanup * intrinio cleanup * nasdaq cleanup * oecd cleanup * polygon cleanup * sec cleanup * seeking alpha cleanup * stockgrid cleanup * tiingo cleanup * tradingeconomics cleanup * ultima cleanup * wsj cleanup * yfinance cleanup * sec router lint * fix date query param description * Updates system and api settings (#5753) * remove uncessary import on rest api * remove FrozenField and add api.version * allow setup from json * remove id tag * computed field is better * formatting --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Squeeze build time (#5756) * squeeze build time * bug fix * fix test * typo? * rebuild * keep tradingeconomics * docs/working-docs: Working V4 Docs PR (#5747) * post-install clarification, fix links * more links * change word * toolkit cleanup * rename 'contributing' to 'development' * update extensions * some urls * Update sdk-platform and v4-develop in urls (#5730) * Update sdk-platform and v4-develop in urls * Seprate Intrinio financials data tags into a different command (#5723) * add `ebit` field in income statement standard model * only add required data tags * remove calculations data * use `name` key instead of `tag` key * set `period` as required in data * remove `period` and `cik` from provider models * add `equity/fundamental/search_financial_attributes` with tests * clean descriptions file * add `equity/fundamental/financial_attributes` with tests * set `value` as `Optional` * Fix threadpool test error (#5734) * Remove ultima from deps (#5736) * remove ultima from deps * … * fix: openapi bug (#6525) * Release/openbb charting 2.1.3 (#6529) * Release bug fixes (#6187) * release bug fixes * rebuild --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * [BugFix] Update `README` for Platform (#6189) * update readme * prevent oopsies * beta versions * print extensions name * update toml with beta versions * [BugFix] Raise Alpha Vantage API Error (#6188) * raise API error * handle more API error messages * handle bad data --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> * update econ cal headers (#6191) * [Release] 4.1.5 to `develop` (#6192) * 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+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: tehcoderer <me@tehcoderer.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: Sandip Saha <sandipsmoto@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: Adi Sai <adithya.sairam1@gmail.com> * Hotfix/pypi openbb terminal (#5719) * renaming the project * documentation changes * Finishing touches to the publishing procedure (#5728) * finishing touches to the publishing procedure * grammar improvements * Run tests on develop (#5725) * Run tests on develop * Add a check that files changes in platform * Seprate Intrinio financials data tags into a different command (#5723) * add `ebit` field in income statement standard model * only add required data tags * remove calculations data * use `name` key instead of `tag` key * set `period` as required in data * remove `period` and `cik` from provider models * add `equity/fundamental/search_financial_attributes` with tests * clean descriptions file * add `equity/fundamental/financial_attributes` with tests * set `value` as `Optional` * Fix threadpool test error (#5734) * Remove ultima from deps (#5736) * remove ultima from deps * skip ultima test * black * change skip location * try except statement to avoid error on the ci * new currency reference rates pr (#5724) * point files to linters (#5739) * remove news from equity (#5741) * Add tiingo provider (#5740) * first commit * things * Add news endpoints * CryptoHistorical * Add currency and trailing dividend yield * things working * deps * fix pre commit things * tests? * black on the tests * pratty told me to add it * integration tests * added helpers * crypto revamped * currency revamped * trailing dividend yield revamped * equity historical revamped * company news overhauled * global news overhauled * remove `tags` param from news models * crypto correct `exchanges` description * james smh * re-recorded fetcher tests * fixed integration tests * econometrics smh * james smh again --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Add `derivatives` extension for `futures` and `options` (#5742) * removed options and futures * add derivatives extension * cleanup * bug #5649 (#5722) * bug #5649 * fixing --a upmom, downmom --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Rename the fmp search -> screener (#5744) * Rename the fmp search -> screener * misses some * i cant copy paste * docs/fix-urls: Updates the Terminal About URLs to match `/develop` (#5720) * update Terminal about URLs and some other broken links * ruff * intro * changing the heading levels * dependency management sections * structure * developer guides * structure * contributor guides * keywords and descriptions * broken urls * cool cards * Cool cards (#5727) * tidy up terminal/content * some more tidy up * fix styling for platform that was missing * more tidy up * improve color for dark and light mode * create new reference card for more basic cards * rename back to menus * implement all index.md for terminal, except reference * improve bot title * more refactoring * fix remaining index * header styling * more styling * heheheheheheeh * Revert "heheheheheheeh" This reverts commit7d095fcfd2. * Ccards (#5733) * links * more links * improved styling and chevron aligned to title * fix index.mdx urls for Terminal * update package.json * update index.mdx * fix generation * spelling * toolkit_extensions * update data extensions * couple of links * add tiingo to data extensions list --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: James Maslek <jmaslek11@gmail.com> * Stock leftover cleanup (#5745) * change to equity in `.md` files * `HistoricalStockSplits`->`HistoricalSplits` * `StockInsiderTrading`->`InsiderTrading` * sorry fmp * `EquityHistorical` cleanup * `EquityNBBO` cleanup * .md leftover * the last of stocks * Hotfix/urllib to dev group (#5732) * use the urllib3 dependency on the dev group instead * adapt the version script for the nightlies - if it's a nightly the package distribution name will have a different name * add dev dependencies to the dev installation bc of the ci * updating the import on validate_call according to: https://docs.pydantic.dev/latest/concepts/validation_decorator/ the way we were importing it breaks if pydantic=2.5 @montezdesousa * loosing urllib3 version specification on the provider and adding it to platform dev deps * rmeoving urllib from top level deps; and removing --with dev flag * changing to ^ instead * Revert "changing to ^ instead" This reverts commit7300904e9f. * unnecessary dep --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/v4-bop - Add ECB Balance of Payments (Replaces #5716) (#5726) * add ecb balance of payments * missing __init__.py files * Nasdaq calendar earnings and fix FMP calendar earnings (#5718) Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/us-treasury-auctions: Adds Treasury Auctions endpoint and provider for US Government Data. (#5746) * add government_us provider and treasury auctions endpoint * black * add param for cusip * move logic for setting default start/end date * Update hub<>platform credentials map (#5749) * update hub<>platform credentials map * typo * Add API settings schema to system settings (#5743) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Skip checking creds (#5737) * skip checking creds * fix bug * ok mypy * add comment * rename required_credentials * fix * fix top_retail bug * don't require creds in some nasdaq fetchers * black * this was not here before * fix tests * update fetcher test * update contributing guidelines * Fix Quote (#5752) * Fix Quote * fixed return type and model validation --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Wrap up renaming global news to world news on a model level (#5750) * Wrap up renaming global news to world news on a model level * cleanup --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Remove eod from docstrings (#5751) * Wrap up renaming global news to world news on a model level * Remove "end of day" from historical price model docstrings --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Massive docstring cleanup (#5755) * sec router remove command * standard models cleanup * fmp cleanup * av cleanup * benzinga cleanup * biztoc cleanup * cboe cleanup * ecb cleanup * finra cleanup * fred cleanup * us cleanup * intrinio cleanup * nasdaq cleanup * oecd cleanup * polygon cleanup * sec cleanup * seeking alpha cleanup * stockgrid cleanup * tiingo cleanup * tradingeconomics cleanup * ultima cleanup * wsj cleanup * yfinance cleanup * sec router lint * fix date query param description * Updates system and api settings (#5753) * remove uncessary import on rest api * remove FrozenField and add api.version * allow setup from json * remove id tag * computed field is better * formatting --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> * Squeeze build time (#5756) * squeeze build time * bug fix * fix test * typo? * rebuild * keep tradingeconomics * docs/working-docs: Working V4 Docs PR (#5747) * post-install clarification, fix links * more links * change word * toolkit cleanup * rename 'contributing' to 'development' * update extensions * some urls * Update sdk-platform and v4-develop in urls (#5730) * Update sdk-platform and v4-devel… * fix: fix provider description (#6537) * Move documentation to `openbb-docs` (#6539) * Remove website/ directory * Remove GitHub pages deployment workflow * Update documentation related content * Cannot do this now * Update actions url * fixing local variable 'export' referenced before assignment (#6546) * fix logging service (#6549) * [Hotfix] Bump versions (#6551) * versions bump * versions bump * [Release] 4.3.0 (#6572) * [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 Radovanov… * bump version (#6576) * Release openbb-econometrics 1.4.0 (#6605) Update econometrics package dependencies based on develop branch * rebuild static * merge artifact * [Release] Release 4.3.2 (#6658) * fix reset_index erasing the name of the column (#6619) * update aiohttp for dependabot (#6621) * [BugFix] Fix Pandas FutureWarning In `derivatives.futures.curve` Chart (#6626) * fix Pandas FutureWarning in derivatives.futures.curve * black * [BugFix] `obb.news.world` Add Validators To Providers Where Symbol Is Mandatory (#6625) * add validators to enforce mandatory symbols in providers where required * linter * fmp 3.9 test cassette --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * data.__fields__ is deprecated - use data.model_fields instead (#6629) * Docs fix spelling issues (#6634) * fix README.md * fix README.md * fix examples.md * fix CONTRIBUTING.md * Update README.md * [BugFix] Replace `Optional[bool]` with `bool` as type in Equity Search (#6633) * replace optiona[bool] with bool as type * one more * test cassettes --------- Co-authored-by: James Maslek <jmaslek11@gmail.com> * [Feature] Add BLS Provider Extension With Endpoints For Search and Time Series (#6630) * add bls provider extension * null is returned as '-' * codespell * mypy * missed colon * more linting * more lint * missing charting api test * handle months starting with Q * too many branches * make annual_average False by default * review items * example notebook updates (#6639) * fix output of yfinance.download Date for Colab (#6645) * capitalize economic indicator symbols before pairing with country (#6642) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Feature] Add CFTC Provider and Replace Nasdaq Datalink For COT Reports (#6643) * add cftc provider and replace nasdaq for COT Reports * linters * more linting * grammar police * mock all url params in test cassette * record test cassettes with no 6901app_token --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * add trust_env to ClientSession initialization to mimic proxy behaviour of requests library (#6640) Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * adding extra presets (#6623) Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> * [Release] Patch: `openbb-yfinance-1.3.2` (#6647) * 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 quantita… * start version bumps and open draft PR * merge artifacts * version bumps * too-many-positional-arguments * core 1.3.4 * start release pr * rest of the changes * ruff * openbb release v4.3.5 * exclude text file that shouldn't have been added to commit * update openbb-core definition in the installer bundle files --------- 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> Co-authored-by: Luqman <luqazino@gmail.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Michael Struwig <mnicstruwig@gmail.com> Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.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: 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: 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: 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: Theodore Aptekarev <aptekarev@gmail.com> Co-authored-by: tehcoderer <me@tehcoderer.com> Co-authored-by: Ramazan <guvencramazan@yandex.com> Co-authored-by: omahs <73983677+omahs@users.noreply.github.com> Co-authored-by: minhhoang1023 <40023817+minhhoang1023@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: 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: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: Jingyi Z <zhao.elton@gmail.com> Co-authored-by: Elias Rad <146735585+nnsW3@users.noreply.github.com> Co-authored-by: mmistroni <mmistroni@gmail.com>
4027 lines
176 KiB
Python
4027 lines
176 KiB
Python
### THIS FILE IS AUTO-GENERATED. DO NOT EDIT. ###
|
|
|
|
import datetime
|
|
from typing import List, Literal, Optional, Union
|
|
|
|
from annotated_types import Ge
|
|
from openbb_core.app.model.field import OpenBBField
|
|
from openbb_core.app.model.obbject import OBBject
|
|
from openbb_core.app.static.container import Container
|
|
from openbb_core.app.static.utils.decorators import exception_handler, validate
|
|
from openbb_core.app.static.utils.filters import filter_inputs
|
|
from typing_extensions import Annotated
|
|
|
|
|
|
class ROUTER_equity_fundamental(Container):
|
|
"""/equity/fundamental
|
|
balance
|
|
balance_growth
|
|
cash
|
|
cash_growth
|
|
dividends
|
|
employee_count
|
|
filings
|
|
historical_attributes
|
|
historical_eps
|
|
historical_splits
|
|
income
|
|
income_growth
|
|
latest_attributes
|
|
management
|
|
management_compensation
|
|
metrics
|
|
multiples
|
|
ratios
|
|
reported_financials
|
|
revenue_per_geography
|
|
revenue_per_segment
|
|
search_attributes
|
|
trailing_dividend_yield
|
|
transcript
|
|
"""
|
|
|
|
def __repr__(self) -> str:
|
|
return self.__doc__ or ""
|
|
|
|
@exception_handler
|
|
@validate
|
|
def balance(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
limit: Annotated[
|
|
Optional[Annotated[int, Ge(ge=0)]],
|
|
OpenBBField(description="The number of data entries to return."),
|
|
] = 5,
|
|
provider: Annotated[
|
|
Optional[Literal["fmp", "intrinio", "polygon", "yfinance"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio, polygon, yfinance."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get the balance sheet for a given company.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
limit : Optional[Annotated[int, Ge(ge=0)]]
|
|
The number of data entries to return.
|
|
provider : Optional[Literal['fmp', 'intrinio', 'polygon', 'yfinance']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio, polygon, yfinance.
|
|
period : Literal['annual', 'quarter']
|
|
Time period of the data to return. (provider: fmp, intrinio, polygon, yfinance)
|
|
fiscal_year : Optional[int]
|
|
The specific fiscal year. Reports do not go beyond 2008. (provider: intrinio)
|
|
filing_date : Optional[datetime.date]
|
|
Filing date of the financial statement. (provider: polygon)
|
|
filing_date_lt : Optional[datetime.date]
|
|
Filing date less than the given date. (provider: polygon)
|
|
filing_date_lte : Optional[datetime.date]
|
|
Filing date less than or equal to the given date. (provider: polygon)
|
|
filing_date_gt : Optional[datetime.date]
|
|
Filing date greater than the given date. (provider: polygon)
|
|
filing_date_gte : Optional[datetime.date]
|
|
Filing date greater than or equal to the given date. (provider: polygon)
|
|
period_of_report_date : Optional[datetime.date]
|
|
Period of report date of the financial statement. (provider: polygon)
|
|
period_of_report_date_lt : Optional[datetime.date]
|
|
Period of report date less than the given date. (provider: polygon)
|
|
period_of_report_date_lte : Optional[datetime.date]
|
|
Period of report date less than or equal to the given date. (provider: polygon)
|
|
period_of_report_date_gt : Optional[datetime.date]
|
|
Period of report date greater than the given date. (provider: polygon)
|
|
period_of_report_date_gte : Optional[datetime.date]
|
|
Period of report date greater than or equal to the given date. (provider: polygon)
|
|
include_sources : bool
|
|
Whether to include the sources of the financial statement. (provider: polygon)
|
|
order : Optional[Literal['asc', 'desc']]
|
|
Order of the financial statement. (provider: polygon)
|
|
sort : Optional[Literal['filing_date', 'period_of_report_date']]
|
|
Sort of the financial statement. (provider: polygon)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[BalanceSheet]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp', 'intrinio', 'polygon', 'yfinance']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
BalanceSheet
|
|
------------
|
|
period_ending : date
|
|
The end date of the reporting period.
|
|
fiscal_period : Optional[str]
|
|
The fiscal period of the report.
|
|
fiscal_year : Optional[int]
|
|
The fiscal year of the fiscal period.
|
|
filing_date : Optional[date]
|
|
The date when the filing was made. (provider: fmp)
|
|
accepted_date : Optional[datetime]
|
|
The date and time when the filing was accepted. (provider: fmp)
|
|
reported_currency : Optional[str]
|
|
The currency in which the balance sheet was reported. (provider: fmp, intrinio)
|
|
cash_and_cash_equivalents : Optional[float]
|
|
Cash and cash equivalents. (provider: fmp, intrinio)
|
|
short_term_investments : Optional[float]
|
|
Short term investments. (provider: fmp, intrinio)
|
|
cash_and_short_term_investments : Optional[float]
|
|
Cash and short term investments. (provider: fmp)
|
|
net_receivables : Optional[float]
|
|
Net receivables. (provider: fmp)
|
|
inventory : Optional[float]
|
|
Inventory. (provider: fmp, polygon)
|
|
other_current_assets : Optional[float]
|
|
Other current assets. (provider: fmp, intrinio, polygon)
|
|
total_current_assets : Optional[float]
|
|
Total current assets. (provider: fmp, intrinio, polygon)
|
|
plant_property_equipment_net : Optional[float]
|
|
Plant property equipment net. (provider: fmp, intrinio)
|
|
goodwill : Optional[float]
|
|
Goodwill. (provider: fmp, intrinio)
|
|
intangible_assets : Optional[float]
|
|
Intangible assets. (provider: fmp, intrinio, polygon)
|
|
goodwill_and_intangible_assets : Optional[float]
|
|
Goodwill and intangible assets. (provider: fmp)
|
|
long_term_investments : Optional[float]
|
|
Long term investments. (provider: fmp, intrinio)
|
|
tax_assets : Optional[float]
|
|
Tax assets. (provider: fmp)
|
|
other_non_current_assets : Optional[float]
|
|
Other non current assets. (provider: fmp, polygon)
|
|
non_current_assets : Optional[float]
|
|
Total non current assets. (provider: fmp)
|
|
other_assets : Optional[float]
|
|
Other assets. (provider: fmp, intrinio)
|
|
total_assets : Optional[float]
|
|
Total assets. (provider: fmp, intrinio, polygon)
|
|
accounts_payable : Optional[float]
|
|
Accounts payable. (provider: fmp, intrinio, polygon)
|
|
short_term_debt : Optional[float]
|
|
Short term debt. (provider: fmp, intrinio)
|
|
tax_payables : Optional[float]
|
|
Tax payables. (provider: fmp)
|
|
current_deferred_revenue : Optional[float]
|
|
Current deferred revenue. (provider: fmp, intrinio)
|
|
other_current_liabilities : Optional[float]
|
|
Other current liabilities. (provider: fmp, intrinio, polygon)
|
|
total_current_liabilities : Optional[float]
|
|
Total current liabilities. (provider: fmp, intrinio, polygon)
|
|
long_term_debt : Optional[float]
|
|
Long term debt. (provider: fmp, intrinio, polygon)
|
|
deferred_revenue_non_current : Optional[float]
|
|
Non current deferred revenue. (provider: fmp)
|
|
deferred_tax_liabilities_non_current : Optional[float]
|
|
Deferred tax liabilities non current. (provider: fmp)
|
|
other_non_current_liabilities : Optional[float]
|
|
Other non current liabilities. (provider: fmp, polygon)
|
|
total_non_current_liabilities : Optional[float]
|
|
Total non current liabilities. (provider: fmp, intrinio, polygon)
|
|
other_liabilities : Optional[float]
|
|
Other liabilities. (provider: fmp)
|
|
capital_lease_obligations : Optional[float]
|
|
Capital lease obligations. (provider: fmp, intrinio)
|
|
total_liabilities : Optional[float]
|
|
Total liabilities. (provider: fmp, intrinio, polygon)
|
|
preferred_stock : Optional[float]
|
|
Preferred stock. (provider: fmp, intrinio, polygon)
|
|
common_stock : Optional[float]
|
|
Common stock. (provider: fmp, intrinio)
|
|
retained_earnings : Optional[float]
|
|
Retained earnings. (provider: fmp, intrinio)
|
|
accumulated_other_comprehensive_income : Optional[float]
|
|
Accumulated other comprehensive income (loss). (provider: fmp, intrinio)
|
|
other_shareholders_equity : Optional[float]
|
|
Other shareholders equity. (provider: fmp)
|
|
other_total_shareholders_equity : Optional[float]
|
|
Other total shareholders equity. (provider: fmp)
|
|
total_common_equity : Optional[float]
|
|
Total common equity. (provider: fmp, intrinio)
|
|
total_equity_non_controlling_interests : Optional[float]
|
|
Total equity non controlling interests. (provider: fmp, intrinio)
|
|
total_liabilities_and_shareholders_equity : Optional[float]
|
|
Total liabilities and shareholders equity. (provider: fmp, polygon)
|
|
minority_interest : Optional[float]
|
|
Minority interest. (provider: fmp, polygon)
|
|
total_liabilities_and_total_equity : Optional[float]
|
|
Total liabilities and total equity. (provider: fmp)
|
|
total_investments : Optional[float]
|
|
Total investments. (provider: fmp)
|
|
total_debt : Optional[float]
|
|
Total debt. (provider: fmp)
|
|
net_debt : Optional[float]
|
|
Net debt. (provider: fmp)
|
|
link : Optional[str]
|
|
Link to the filing. (provider: fmp)
|
|
final_link : Optional[str]
|
|
Link to the filing document. (provider: fmp)
|
|
cash_and_due_from_banks : Optional[float]
|
|
Cash and due from banks. (provider: intrinio)
|
|
restricted_cash : Optional[float]
|
|
Restricted cash. (provider: intrinio)
|
|
federal_funds_sold : Optional[float]
|
|
Federal funds sold. (provider: intrinio)
|
|
accounts_receivable : Optional[float]
|
|
Accounts receivable. (provider: intrinio, polygon)
|
|
note_and_lease_receivable : Optional[float]
|
|
Note and lease receivable. (Vendor non-trade receivables) (provider: intrinio)
|
|
inventories : Optional[float]
|
|
Net Inventories. (provider: intrinio)
|
|
customer_and_other_receivables : Optional[float]
|
|
Customer and other receivables. (provider: intrinio)
|
|
interest_bearing_deposits_at_other_banks : Optional[float]
|
|
Interest bearing deposits at other banks. (provider: intrinio)
|
|
time_deposits_placed_and_other_short_term_investments : Optional[float]
|
|
Time deposits placed and other short term investments. (provider: intrinio)
|
|
trading_account_securities : Optional[float]
|
|
Trading account securities. (provider: intrinio)
|
|
loans_and_leases : Optional[float]
|
|
Loans and leases. (provider: intrinio)
|
|
allowance_for_loan_and_lease_losses : Optional[float]
|
|
Allowance for loan and lease losses. (provider: intrinio)
|
|
current_deferred_refundable_income_taxes : Optional[float]
|
|
Current deferred refundable income taxes. (provider: intrinio)
|
|
loans_and_leases_net_of_allowance : Optional[float]
|
|
Loans and leases net of allowance. (provider: intrinio)
|
|
accrued_investment_income : Optional[float]
|
|
Accrued investment income. (provider: intrinio)
|
|
other_current_non_operating_assets : Optional[float]
|
|
Other current non-operating assets. (provider: intrinio)
|
|
loans_held_for_sale : Optional[float]
|
|
Loans held for sale. (provider: intrinio)
|
|
prepaid_expenses : Optional[float]
|
|
Prepaid expenses. (provider: intrinio, polygon)
|
|
plant_property_equipment_gross : Optional[float]
|
|
Plant property equipment gross. (provider: intrinio)
|
|
accumulated_depreciation : Optional[float]
|
|
Accumulated depreciation. (provider: intrinio)
|
|
premises_and_equipment_net : Optional[float]
|
|
Net premises and equipment. (provider: intrinio)
|
|
mortgage_servicing_rights : Optional[float]
|
|
Mortgage servicing rights. (provider: intrinio)
|
|
unearned_premiums_asset : Optional[float]
|
|
Unearned premiums asset. (provider: intrinio)
|
|
non_current_note_lease_receivables : Optional[float]
|
|
Non-current note lease receivables. (provider: intrinio)
|
|
deferred_acquisition_cost : Optional[float]
|
|
Deferred acquisition cost. (provider: intrinio)
|
|
separate_account_business_assets : Optional[float]
|
|
Separate account business assets. (provider: intrinio)
|
|
non_current_deferred_refundable_income_taxes : Optional[float]
|
|
Noncurrent deferred refundable income taxes. (provider: intrinio)
|
|
employee_benefit_assets : Optional[float]
|
|
Employee benefit assets. (provider: intrinio)
|
|
other_non_current_operating_assets : Optional[float]
|
|
Other noncurrent operating assets. (provider: intrinio)
|
|
other_non_current_non_operating_assets : Optional[float]
|
|
Other noncurrent non-operating assets. (provider: intrinio)
|
|
interest_bearing_deposits : Optional[float]
|
|
Interest bearing deposits. (provider: intrinio)
|
|
total_non_current_assets : Optional[float]
|
|
Total noncurrent assets. (provider: intrinio, polygon)
|
|
non_interest_bearing_deposits : Optional[float]
|
|
Non interest bearing deposits. (provider: intrinio)
|
|
federal_funds_purchased_and_securities_sold : Optional[float]
|
|
Federal funds purchased and securities sold. (provider: intrinio)
|
|
bankers_acceptance_outstanding : Optional[float]
|
|
Bankers acceptance outstanding. (provider: intrinio)
|
|
current_deferred_payable_income_tax_liabilities : Optional[float]
|
|
Current deferred payable income tax liabilities. (provider: intrinio)
|
|
accrued_interest_payable : Optional[float]
|
|
Accrued interest payable. (provider: intrinio)
|
|
accrued_expenses : Optional[float]
|
|
Accrued expenses. (provider: intrinio)
|
|
other_short_term_payables : Optional[float]
|
|
Other short term payables. (provider: intrinio)
|
|
customer_deposits : Optional[float]
|
|
Customer deposits. (provider: intrinio)
|
|
dividends_payable : Optional[float]
|
|
Dividends payable. (provider: intrinio)
|
|
claims_and_claim_expense : Optional[float]
|
|
Claims and claim expense. (provider: intrinio)
|
|
future_policy_benefits : Optional[float]
|
|
Future policy benefits. (provider: intrinio)
|
|
current_employee_benefit_liabilities : Optional[float]
|
|
Current employee benefit liabilities. (provider: intrinio)
|
|
unearned_premiums_liability : Optional[float]
|
|
Unearned premiums liability. (provider: intrinio)
|
|
other_taxes_payable : Optional[float]
|
|
Other taxes payable. (provider: intrinio)
|
|
policy_holder_funds : Optional[float]
|
|
Policy holder funds. (provider: intrinio)
|
|
other_current_non_operating_liabilities : Optional[float]
|
|
Other current non-operating liabilities. (provider: intrinio)
|
|
separate_account_business_liabilities : Optional[float]
|
|
Separate account business liabilities. (provider: intrinio)
|
|
other_long_term_liabilities : Optional[float]
|
|
Other long term liabilities. (provider: intrinio)
|
|
non_current_deferred_revenue : Optional[float]
|
|
Non-current deferred revenue. (provider: intrinio)
|
|
non_current_deferred_payable_income_tax_liabilities : Optional[float]
|
|
Non-current deferred payable income tax liabilities. (provider: intrinio)
|
|
non_current_employee_benefit_liabilities : Optional[float]
|
|
Non-current employee benefit liabilities. (provider: intrinio)
|
|
other_non_current_operating_liabilities : Optional[float]
|
|
Other non-current operating liabilities. (provider: intrinio)
|
|
other_non_current_non_operating_liabilities : Optional[float]
|
|
Other non-current, non-operating liabilities. (provider: intrinio)
|
|
asset_retirement_reserve_litigation_obligation : Optional[float]
|
|
Asset retirement reserve litigation obligation. (provider: intrinio)
|
|
commitments_contingencies : Optional[float]
|
|
Commitments contingencies. (provider: intrinio)
|
|
redeemable_non_controlling_interest : Optional[float]
|
|
Redeemable non-controlling interest. (provider: intrinio, polygon)
|
|
treasury_stock : Optional[float]
|
|
Treasury stock. (provider: intrinio)
|
|
participating_policy_holder_equity : Optional[float]
|
|
Participating policy holder equity. (provider: intrinio)
|
|
other_equity_adjustments : Optional[float]
|
|
Other equity adjustments. (provider: intrinio)
|
|
total_preferred_common_equity : Optional[float]
|
|
Total preferred common equity. (provider: intrinio)
|
|
non_controlling_interest : Optional[float]
|
|
Non-controlling interest. (provider: intrinio)
|
|
total_liabilities_shareholders_equity : Optional[float]
|
|
Total liabilities and shareholders equity. (provider: intrinio)
|
|
marketable_securities : Optional[float]
|
|
Marketable securities (provider: polygon)
|
|
property_plant_equipment_net : Optional[float]
|
|
Property plant and equipment net (provider: polygon)
|
|
employee_wages : Optional[float]
|
|
Employee wages (provider: polygon)
|
|
temporary_equity_attributable_to_parent : Optional[float]
|
|
Temporary equity attributable to parent (provider: polygon)
|
|
equity_attributable_to_parent : Optional[float]
|
|
Equity attributable to parent (provider: polygon)
|
|
temporary_equity : Optional[float]
|
|
Temporary equity (provider: polygon)
|
|
redeemable_non_controlling_interest_other : Optional[float]
|
|
Redeemable non-controlling interest other (provider: polygon)
|
|
total_shareholders_equity : Optional[float]
|
|
Total stock holders equity (provider: polygon)
|
|
total_equity : Optional[float]
|
|
Total equity (provider: polygon)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.balance(symbol='AAPL', provider='fmp')
|
|
>>> obb.equity.fundamental.balance(symbol='AAPL', period='annual', limit=5, provider='intrinio')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/balance",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.balance",
|
|
("fmp", "intrinio", "polygon", "yfinance"),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"limit": limit,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"period": {
|
|
"fmp": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter"],
|
|
},
|
|
"intrinio": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter"],
|
|
},
|
|
"polygon": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter"],
|
|
},
|
|
"yfinance": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter"],
|
|
},
|
|
}
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def balance_growth(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
limit: Annotated[
|
|
Optional[int],
|
|
OpenBBField(description="The number of data entries to return."),
|
|
] = 10,
|
|
provider: Annotated[
|
|
Optional[Literal["fmp"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get the growth of a company's balance sheet items over time.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
limit : Optional[int]
|
|
The number of data entries to return.
|
|
provider : Optional[Literal['fmp']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp.
|
|
period : Literal['annual', 'quarter']
|
|
Time period of the data to return. (provider: fmp)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[BalanceSheetGrowth]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
BalanceSheetGrowth
|
|
------------------
|
|
period_ending : date
|
|
The end date of the reporting period.
|
|
fiscal_period : Optional[str]
|
|
The fiscal period of the report.
|
|
fiscal_year : Optional[int]
|
|
The fiscal year of the fiscal period.
|
|
symbol : Optional[str]
|
|
Symbol representing the entity requested in the data. (provider: fmp)
|
|
growth_cash_and_cash_equivalents : Optional[float]
|
|
Growth rate of cash and cash equivalents. (provider: fmp)
|
|
growth_short_term_investments : Optional[float]
|
|
Growth rate of short-term investments. (provider: fmp)
|
|
growth_cash_and_short_term_investments : Optional[float]
|
|
Growth rate of cash and short-term investments. (provider: fmp)
|
|
growth_net_receivables : Optional[float]
|
|
Growth rate of net receivables. (provider: fmp)
|
|
growth_inventory : Optional[float]
|
|
Growth rate of inventory. (provider: fmp)
|
|
growth_other_current_assets : Optional[float]
|
|
Growth rate of other current assets. (provider: fmp)
|
|
growth_total_current_assets : Optional[float]
|
|
Growth rate of total current assets. (provider: fmp)
|
|
growth_property_plant_equipment_net : Optional[float]
|
|
Growth rate of net property, plant, and equipment. (provider: fmp)
|
|
growth_goodwill : Optional[float]
|
|
Growth rate of goodwill. (provider: fmp)
|
|
growth_intangible_assets : Optional[float]
|
|
Growth rate of intangible assets. (provider: fmp)
|
|
growth_goodwill_and_intangible_assets : Optional[float]
|
|
Growth rate of goodwill and intangible assets. (provider: fmp)
|
|
growth_long_term_investments : Optional[float]
|
|
Growth rate of long-term investments. (provider: fmp)
|
|
growth_tax_assets : Optional[float]
|
|
Growth rate of tax assets. (provider: fmp)
|
|
growth_other_non_current_assets : Optional[float]
|
|
Growth rate of other non-current assets. (provider: fmp)
|
|
growth_total_non_current_assets : Optional[float]
|
|
Growth rate of total non-current assets. (provider: fmp)
|
|
growth_other_assets : Optional[float]
|
|
Growth rate of other assets. (provider: fmp)
|
|
growth_total_assets : Optional[float]
|
|
Growth rate of total assets. (provider: fmp)
|
|
growth_account_payables : Optional[float]
|
|
Growth rate of accounts payable. (provider: fmp)
|
|
growth_short_term_debt : Optional[float]
|
|
Growth rate of short-term debt. (provider: fmp)
|
|
growth_tax_payables : Optional[float]
|
|
Growth rate of tax payables. (provider: fmp)
|
|
growth_deferred_revenue : Optional[float]
|
|
Growth rate of deferred revenue. (provider: fmp)
|
|
growth_other_current_liabilities : Optional[float]
|
|
Growth rate of other current liabilities. (provider: fmp)
|
|
growth_total_current_liabilities : Optional[float]
|
|
Growth rate of total current liabilities. (provider: fmp)
|
|
growth_long_term_debt : Optional[float]
|
|
Growth rate of long-term debt. (provider: fmp)
|
|
growth_deferred_revenue_non_current : Optional[float]
|
|
Growth rate of non-current deferred revenue. (provider: fmp)
|
|
growth_deferrred_tax_liabilities_non_current : Optional[float]
|
|
Growth rate of non-current deferred tax liabilities. (provider: fmp)
|
|
growth_other_non_current_liabilities : Optional[float]
|
|
Growth rate of other non-current liabilities. (provider: fmp)
|
|
growth_total_non_current_liabilities : Optional[float]
|
|
Growth rate of total non-current liabilities. (provider: fmp)
|
|
growth_other_liabilities : Optional[float]
|
|
Growth rate of other liabilities. (provider: fmp)
|
|
growth_total_liabilities : Optional[float]
|
|
Growth rate of total liabilities. (provider: fmp)
|
|
growth_common_stock : Optional[float]
|
|
Growth rate of common stock. (provider: fmp)
|
|
growth_retained_earnings : Optional[float]
|
|
Growth rate of retained earnings. (provider: fmp)
|
|
growth_accumulated_other_comprehensive_income : Optional[float]
|
|
Growth rate of accumulated other comprehensive income/loss. (provider: fmp)
|
|
growth_other_total_shareholders_equity : Optional[float]
|
|
Growth rate of other total stockholders' equity. (provider: fmp)
|
|
growth_total_shareholders_equity : Optional[float]
|
|
Growth rate of total stockholders' equity. (provider: fmp)
|
|
growth_total_liabilities_and_shareholders_equity : Optional[float]
|
|
Growth rate of total liabilities and stockholders' equity. (provider: fmp)
|
|
growth_total_investments : Optional[float]
|
|
Growth rate of total investments. (provider: fmp)
|
|
growth_total_debt : Optional[float]
|
|
Growth rate of total debt. (provider: fmp)
|
|
growth_net_debt : Optional[float]
|
|
Growth rate of net debt. (provider: fmp)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.balance_growth(symbol='AAPL', provider='fmp')
|
|
>>> obb.equity.fundamental.balance_growth(symbol='AAPL', limit=10, provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/balance_growth",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.balance_growth",
|
|
("fmp",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"limit": limit,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"period": {
|
|
"fmp": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter"],
|
|
}
|
|
}
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def cash(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
limit: Annotated[
|
|
Optional[Annotated[int, Ge(ge=0)]],
|
|
OpenBBField(description="The number of data entries to return."),
|
|
] = 5,
|
|
provider: Annotated[
|
|
Optional[Literal["fmp", "intrinio", "polygon", "yfinance"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio, polygon, yfinance."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get the cash flow statement for a given company.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
limit : Optional[Annotated[int, Ge(ge=0)]]
|
|
The number of data entries to return.
|
|
provider : Optional[Literal['fmp', 'intrinio', 'polygon', 'yfinance']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio, polygon, yfinance.
|
|
period : Union[Literal['annual', 'quarter'], Literal['annual', 'quarter', 'ttm', 'ytd'], Literal['annual', 'quarter', 'ttm']]
|
|
Time period of the data to return. (provider: fmp, intrinio, polygon, yfinance)
|
|
fiscal_year : Optional[int]
|
|
The specific fiscal year. Reports do not go beyond 2008. (provider: intrinio)
|
|
filing_date : Optional[datetime.date]
|
|
Filing date of the financial statement. (provider: polygon)
|
|
filing_date_lt : Optional[datetime.date]
|
|
Filing date less than the given date. (provider: polygon)
|
|
filing_date_lte : Optional[datetime.date]
|
|
Filing date less than or equal to the given date. (provider: polygon)
|
|
filing_date_gt : Optional[datetime.date]
|
|
Filing date greater than the given date. (provider: polygon)
|
|
filing_date_gte : Optional[datetime.date]
|
|
Filing date greater than or equal to the given date. (provider: polygon)
|
|
period_of_report_date : Optional[datetime.date]
|
|
Period of report date of the financial statement. (provider: polygon)
|
|
period_of_report_date_lt : Optional[datetime.date]
|
|
Period of report date less than the given date. (provider: polygon)
|
|
period_of_report_date_lte : Optional[datetime.date]
|
|
Period of report date less than or equal to the given date. (provider: polygon)
|
|
period_of_report_date_gt : Optional[datetime.date]
|
|
Period of report date greater than the given date. (provider: polygon)
|
|
period_of_report_date_gte : Optional[datetime.date]
|
|
Period of report date greater than or equal to the given date. (provider: polygon)
|
|
include_sources : bool
|
|
Whether to include the sources of the financial statement. (provider: polygon)
|
|
order : Optional[Literal['asc', 'desc']]
|
|
Order of the financial statement. (provider: polygon)
|
|
sort : Optional[Literal['filing_date', 'period_of_report_date']]
|
|
Sort of the financial statement. (provider: polygon)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[CashFlowStatement]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp', 'intrinio', 'polygon', 'yfinance']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
CashFlowStatement
|
|
-----------------
|
|
period_ending : date
|
|
The end date of the reporting period.
|
|
fiscal_period : Optional[str]
|
|
The fiscal period of the report.
|
|
fiscal_year : Optional[int]
|
|
The fiscal year of the fiscal period.
|
|
filing_date : Optional[date]
|
|
The date of the filing. (provider: fmp)
|
|
accepted_date : Optional[datetime]
|
|
The date the filing was accepted. (provider: fmp)
|
|
reported_currency : Optional[str]
|
|
The currency in which the cash flow statement was reported. (provider: fmp);
|
|
The currency in which the balance sheet is reported. (provider: intrinio)
|
|
net_income : Optional[float]
|
|
Net income. (provider: fmp);
|
|
Consolidated Net Income. (provider: intrinio)
|
|
depreciation_and_amortization : Optional[float]
|
|
Depreciation and amortization. (provider: fmp)
|
|
deferred_income_tax : Optional[float]
|
|
Deferred income tax. (provider: fmp)
|
|
stock_based_compensation : Optional[float]
|
|
Stock-based compensation. (provider: fmp)
|
|
change_in_working_capital : Optional[float]
|
|
Change in working capital. (provider: fmp)
|
|
change_in_account_receivables : Optional[float]
|
|
Change in account receivables. (provider: fmp)
|
|
change_in_inventory : Optional[float]
|
|
Change in inventory. (provider: fmp)
|
|
change_in_account_payable : Optional[float]
|
|
Change in account payable. (provider: fmp)
|
|
change_in_other_working_capital : Optional[float]
|
|
Change in other working capital. (provider: fmp)
|
|
change_in_other_non_cash_items : Optional[float]
|
|
Change in other non-cash items. (provider: fmp)
|
|
net_cash_from_operating_activities : Optional[float]
|
|
Net cash from operating activities. (provider: fmp, intrinio)
|
|
purchase_of_property_plant_and_equipment : Optional[float]
|
|
Purchase of property, plant and equipment. (provider: fmp, intrinio)
|
|
acquisitions : Optional[float]
|
|
Acquisitions. (provider: fmp, intrinio)
|
|
purchase_of_investment_securities : Optional[float]
|
|
Purchase of investment securities. (provider: fmp, intrinio)
|
|
sale_and_maturity_of_investments : Optional[float]
|
|
Sale and maturity of investments. (provider: fmp, intrinio)
|
|
other_investing_activities : Optional[float]
|
|
Other investing activities. (provider: fmp, intrinio)
|
|
net_cash_from_investing_activities : Optional[float]
|
|
Net cash from investing activities. (provider: fmp, intrinio)
|
|
repayment_of_debt : Optional[float]
|
|
Repayment of debt. (provider: fmp, intrinio)
|
|
issuance_of_common_equity : Optional[float]
|
|
Issuance of common equity. (provider: fmp, intrinio)
|
|
repurchase_of_common_equity : Optional[float]
|
|
Repurchase of common equity. (provider: fmp, intrinio)
|
|
payment_of_dividends : Optional[float]
|
|
Payment of dividends. (provider: fmp, intrinio)
|
|
other_financing_activities : Optional[float]
|
|
Other financing activities. (provider: fmp, intrinio)
|
|
net_cash_from_financing_activities : Optional[float]
|
|
Net cash from financing activities. (provider: fmp, intrinio)
|
|
effect_of_exchange_rate_changes_on_cash : Optional[float]
|
|
Effect of exchange rate changes on cash. (provider: fmp)
|
|
net_change_in_cash_and_equivalents : Optional[float]
|
|
Net change in cash and equivalents. (provider: fmp, intrinio)
|
|
cash_at_beginning_of_period : Optional[float]
|
|
Cash at beginning of period. (provider: fmp)
|
|
cash_at_end_of_period : Optional[float]
|
|
Cash at end of period. (provider: fmp)
|
|
operating_cash_flow : Optional[float]
|
|
Operating cash flow. (provider: fmp)
|
|
capital_expenditure : Optional[float]
|
|
Capital expenditure. (provider: fmp)
|
|
free_cash_flow : Optional[float]
|
|
None
|
|
link : Optional[str]
|
|
Link to the filing. (provider: fmp)
|
|
final_link : Optional[str]
|
|
Link to the filing document. (provider: fmp)
|
|
net_income_continuing_operations : Optional[float]
|
|
Net Income (Continuing Operations) (provider: intrinio)
|
|
net_income_discontinued_operations : Optional[float]
|
|
Net Income (Discontinued Operations) (provider: intrinio)
|
|
provision_for_loan_losses : Optional[float]
|
|
Provision for Loan Losses (provider: intrinio)
|
|
provision_for_credit_losses : Optional[float]
|
|
Provision for credit losses (provider: intrinio)
|
|
depreciation_expense : Optional[float]
|
|
Depreciation Expense. (provider: intrinio)
|
|
amortization_expense : Optional[float]
|
|
Amortization Expense. (provider: intrinio)
|
|
share_based_compensation : Optional[float]
|
|
Share-based compensation. (provider: intrinio)
|
|
non_cash_adjustments_to_reconcile_net_income : Optional[float]
|
|
Non-Cash Adjustments to Reconcile Net Income. (provider: intrinio)
|
|
changes_in_operating_assets_and_liabilities : Optional[float]
|
|
Changes in Operating Assets and Liabilities (Net) (provider: intrinio)
|
|
net_cash_from_continuing_operating_activities : Optional[float]
|
|
Net Cash from Continuing Operating Activities (provider: intrinio)
|
|
net_cash_from_discontinued_operating_activities : Optional[float]
|
|
Net Cash from Discontinued Operating Activities (provider: intrinio)
|
|
divestitures : Optional[float]
|
|
Divestitures (provider: intrinio)
|
|
sale_of_property_plant_and_equipment : Optional[float]
|
|
Sale of Property, Plant, and Equipment (provider: intrinio)
|
|
purchase_of_investments : Optional[float]
|
|
Purchase of Investments (provider: intrinio)
|
|
loans_held_for_sale : Optional[float]
|
|
Loans Held for Sale (Net) (provider: intrinio)
|
|
net_cash_from_continuing_investing_activities : Optional[float]
|
|
Net Cash from Continuing Investing Activities (provider: intrinio)
|
|
net_cash_from_discontinued_investing_activities : Optional[float]
|
|
Net Cash from Discontinued Investing Activities (provider: intrinio)
|
|
repurchase_of_preferred_equity : Optional[float]
|
|
Repurchase of Preferred Equity (provider: intrinio)
|
|
issuance_of_preferred_equity : Optional[float]
|
|
Issuance of Preferred Equity (provider: intrinio)
|
|
issuance_of_debt : Optional[float]
|
|
Issuance of Debt (provider: intrinio)
|
|
cash_interest_received : Optional[float]
|
|
Cash Interest Received (provider: intrinio)
|
|
net_change_in_deposits : Optional[float]
|
|
Net Change in Deposits (provider: intrinio)
|
|
net_increase_in_fed_funds_sold : Optional[float]
|
|
Net Increase in Fed Funds Sold (provider: intrinio)
|
|
net_cash_from_continuing_financing_activities : Optional[float]
|
|
Net Cash from Continuing Financing Activities (provider: intrinio)
|
|
net_cash_from_discontinued_financing_activities : Optional[float]
|
|
Net Cash from Discontinued Financing Activities (provider: intrinio)
|
|
effect_of_exchange_rate_changes : Optional[float]
|
|
Effect of Exchange Rate Changes (provider: intrinio)
|
|
other_net_changes_in_cash : Optional[float]
|
|
Other Net Changes in Cash (provider: intrinio)
|
|
cash_income_taxes_paid : Optional[float]
|
|
Cash Income Taxes Paid (provider: intrinio)
|
|
cash_interest_paid : Optional[float]
|
|
Cash Interest Paid (provider: intrinio)
|
|
net_cash_flow_from_operating_activities_continuing : Optional[float]
|
|
Net cash flow from operating activities continuing. (provider: polygon)
|
|
net_cash_flow_from_operating_activities_discontinued : Optional[float]
|
|
Net cash flow from operating activities discontinued. (provider: polygon)
|
|
net_cash_flow_from_operating_activities : Optional[float]
|
|
Net cash flow from operating activities. (provider: polygon)
|
|
net_cash_flow_from_investing_activities_continuing : Optional[float]
|
|
Net cash flow from investing activities continuing. (provider: polygon)
|
|
net_cash_flow_from_investing_activities_discontinued : Optional[float]
|
|
Net cash flow from investing activities discontinued. (provider: polygon)
|
|
net_cash_flow_from_investing_activities : Optional[float]
|
|
Net cash flow from investing activities. (provider: polygon)
|
|
net_cash_flow_from_financing_activities_continuing : Optional[float]
|
|
Net cash flow from financing activities continuing. (provider: polygon)
|
|
net_cash_flow_from_financing_activities_discontinued : Optional[float]
|
|
Net cash flow from financing activities discontinued. (provider: polygon)
|
|
net_cash_flow_from_financing_activities : Optional[float]
|
|
Net cash flow from financing activities. (provider: polygon)
|
|
net_cash_flow_continuing : Optional[float]
|
|
Net cash flow continuing. (provider: polygon)
|
|
net_cash_flow_discontinued : Optional[float]
|
|
Net cash flow discontinued. (provider: polygon)
|
|
exchange_gains_losses : Optional[float]
|
|
Exchange gains losses. (provider: polygon)
|
|
net_cash_flow : Optional[float]
|
|
Net cash flow. (provider: polygon)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.cash(symbol='AAPL', provider='fmp')
|
|
>>> obb.equity.fundamental.cash(symbol='AAPL', period='annual', limit=5, provider='intrinio')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/cash",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.cash",
|
|
("fmp", "intrinio", "polygon", "yfinance"),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"limit": limit,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"period": {
|
|
"fmp": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter"],
|
|
},
|
|
"intrinio": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter", "ttm", "ytd"],
|
|
},
|
|
"polygon": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter", "ttm"],
|
|
},
|
|
"yfinance": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter"],
|
|
},
|
|
}
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def cash_growth(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
limit: Annotated[
|
|
Optional[int],
|
|
OpenBBField(description="The number of data entries to return."),
|
|
] = 10,
|
|
provider: Annotated[
|
|
Optional[Literal["fmp"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get the growth of a company's cash flow statement items over time.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
limit : Optional[int]
|
|
The number of data entries to return.
|
|
provider : Optional[Literal['fmp']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp.
|
|
period : Literal['annual', 'quarter']
|
|
Time period of the data to return. (provider: fmp)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[CashFlowStatementGrowth]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
CashFlowStatementGrowth
|
|
-----------------------
|
|
period_ending : date
|
|
The end date of the reporting period.
|
|
fiscal_period : Optional[str]
|
|
The fiscal period of the report.
|
|
fiscal_year : Optional[int]
|
|
The fiscal year of the fiscal period.
|
|
symbol : Optional[str]
|
|
Symbol representing the entity requested in the data. (provider: fmp)
|
|
growth_net_income : Optional[float]
|
|
Growth rate of net income. (provider: fmp)
|
|
growth_depreciation_and_amortization : Optional[float]
|
|
Growth rate of depreciation and amortization. (provider: fmp)
|
|
growth_deferred_income_tax : Optional[float]
|
|
Growth rate of deferred income tax. (provider: fmp)
|
|
growth_stock_based_compensation : Optional[float]
|
|
Growth rate of stock-based compensation. (provider: fmp)
|
|
growth_change_in_working_capital : Optional[float]
|
|
Growth rate of change in working capital. (provider: fmp)
|
|
growth_account_receivables : Optional[float]
|
|
Growth rate of accounts receivables. (provider: fmp)
|
|
growth_inventory : Optional[float]
|
|
Growth rate of inventory. (provider: fmp)
|
|
growth_account_payable : Optional[float]
|
|
Growth rate of account payable. (provider: fmp)
|
|
growth_other_working_capital : Optional[float]
|
|
Growth rate of other working capital. (provider: fmp)
|
|
growth_other_non_cash_items : Optional[float]
|
|
Growth rate of other non-cash items. (provider: fmp)
|
|
growth_net_cash_from_operating_activities : Optional[float]
|
|
Growth rate of net cash provided by operating activities. (provider: fmp)
|
|
growth_purchase_of_property_plant_and_equipment : Optional[float]
|
|
Growth rate of investments in property, plant, and equipment. (provider: fmp)
|
|
growth_acquisitions : Optional[float]
|
|
Growth rate of net acquisitions. (provider: fmp)
|
|
growth_purchase_of_investment_securities : Optional[float]
|
|
Growth rate of purchases of investments. (provider: fmp)
|
|
growth_sale_and_maturity_of_investments : Optional[float]
|
|
Growth rate of sales maturities of investments. (provider: fmp)
|
|
growth_other_investing_activities : Optional[float]
|
|
Growth rate of other investing activities. (provider: fmp)
|
|
growth_net_cash_from_investing_activities : Optional[float]
|
|
Growth rate of net cash used for investing activities. (provider: fmp)
|
|
growth_repayment_of_debt : Optional[float]
|
|
Growth rate of debt repayment. (provider: fmp)
|
|
growth_common_stock_issued : Optional[float]
|
|
Growth rate of common stock issued. (provider: fmp)
|
|
growth_common_stock_repurchased : Optional[float]
|
|
Growth rate of common stock repurchased. (provider: fmp)
|
|
growth_dividends_paid : Optional[float]
|
|
Growth rate of dividends paid. (provider: fmp)
|
|
growth_other_financing_activities : Optional[float]
|
|
Growth rate of other financing activities. (provider: fmp)
|
|
growth_net_cash_from_financing_activities : Optional[float]
|
|
Growth rate of net cash used/provided by financing activities. (provider: fmp)
|
|
growth_effect_of_exchange_rate_changes_on_cash : Optional[float]
|
|
Growth rate of the effect of foreign exchange changes on cash. (provider: fmp)
|
|
growth_net_change_in_cash_and_equivalents : Optional[float]
|
|
Growth rate of net change in cash. (provider: fmp)
|
|
growth_cash_at_beginning_of_period : Optional[float]
|
|
Growth rate of cash at the beginning of the period. (provider: fmp)
|
|
growth_cash_at_end_of_period : Optional[float]
|
|
Growth rate of cash at the end of the period. (provider: fmp)
|
|
growth_operating_cash_flow : Optional[float]
|
|
Growth rate of operating cash flow. (provider: fmp)
|
|
growth_capital_expenditure : Optional[float]
|
|
Growth rate of capital expenditure. (provider: fmp)
|
|
growth_free_cash_flow : Optional[float]
|
|
Growth rate of free cash flow. (provider: fmp)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.cash_growth(symbol='AAPL', provider='fmp')
|
|
>>> obb.equity.fundamental.cash_growth(symbol='AAPL', limit=10, provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/cash_growth",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.cash_growth",
|
|
("fmp",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"limit": limit,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"period": {
|
|
"fmp": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter"],
|
|
}
|
|
}
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def dividends(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
start_date: Annotated[
|
|
Union[datetime.date, None, str],
|
|
OpenBBField(description="Start date of the data, in YYYY-MM-DD format."),
|
|
] = None,
|
|
end_date: Annotated[
|
|
Union[datetime.date, None, str],
|
|
OpenBBField(description="End date of the data, in YYYY-MM-DD format."),
|
|
] = None,
|
|
provider: Annotated[
|
|
Optional[Literal["fmp", "intrinio", "yfinance"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio, yfinance."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get historical dividend data for a given company.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
start_date : Union[date, None, str]
|
|
Start date of the data, in YYYY-MM-DD format.
|
|
end_date : Union[date, None, str]
|
|
End date of the data, in YYYY-MM-DD format.
|
|
provider : Optional[Literal['fmp', 'intrinio', 'yfinance']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio, yfinance.
|
|
limit : Optional[int]
|
|
The number of data entries to return. (provider: intrinio)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[HistoricalDividends]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp', 'intrinio', 'yfinance']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
HistoricalDividends
|
|
-------------------
|
|
ex_dividend_date : date
|
|
The ex-dividend date - the date on which the stock begins trading without rights to the dividend.
|
|
amount : float
|
|
The dividend amount per share.
|
|
label : Optional[str]
|
|
Label of the historical dividends. (provider: fmp)
|
|
adj_dividend : Optional[float]
|
|
Adjusted dividend of the historical dividends. (provider: fmp)
|
|
record_date : Optional[date]
|
|
Record date of the historical dividends. (provider: fmp)
|
|
payment_date : Optional[date]
|
|
Payment date of the historical dividends. (provider: fmp)
|
|
declaration_date : Optional[date]
|
|
Declaration date of the historical dividends. (provider: fmp)
|
|
factor : Optional[float]
|
|
factor by which to multiply stock prices before this date, in order to calculate historically-adjusted stock prices. (provider: intrinio)
|
|
currency : Optional[str]
|
|
The currency in which the dividend is paid. (provider: intrinio)
|
|
split_ratio : Optional[float]
|
|
The ratio of the stock split, if a stock split occurred. (provider: intrinio)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.dividends(symbol='AAPL', provider='intrinio')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/dividends",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.dividends",
|
|
("fmp", "intrinio", "yfinance"),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"start_date": start_date,
|
|
"end_date": end_date,
|
|
},
|
|
extra_params=kwargs,
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def employee_count(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
provider: Annotated[
|
|
Optional[Literal["fmp"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get historical employee count data for a given company.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
provider : Optional[Literal['fmp']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp.
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[HistoricalEmployees]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
HistoricalEmployees
|
|
-------------------
|
|
symbol : str
|
|
Symbol representing the entity requested in the data.
|
|
cik : int
|
|
Central Index Key (CIK) for the requested entity.
|
|
acceptance_time : datetime
|
|
Time of acceptance of the company employee.
|
|
period_of_report : date
|
|
Date of reporting of the company employee.
|
|
company_name : str
|
|
Registered name of the company to retrieve the historical employees of.
|
|
form_type : str
|
|
Form type of the company employee.
|
|
filing_date : date
|
|
Filing date of the company employee
|
|
employee_count : int
|
|
Count of employees of the company.
|
|
source : str
|
|
Source URL which retrieves this data for the company.
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.employee_count(symbol='AAPL', provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/employee_count",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.employee_count",
|
|
("fmp",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
},
|
|
extra_params=kwargs,
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def filings(
|
|
self,
|
|
symbol: Annotated[
|
|
Optional[str], OpenBBField(description="Symbol to get data for.")
|
|
] = None,
|
|
form_type: Annotated[
|
|
Union[str, None, List[Optional[str]]],
|
|
OpenBBField(
|
|
description="Filter by form type. Check the data provider for available types. Multiple comma separated items allowed for provider(s): sec."
|
|
),
|
|
] = None,
|
|
limit: Annotated[
|
|
int, OpenBBField(description="The number of data entries to return.")
|
|
] = 100,
|
|
provider: Annotated[
|
|
Optional[Literal["fmp", "intrinio", "sec"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio, sec."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get the URLs to SEC filings reported to EDGAR database, such as 10-K, 10-Q, 8-K, and more.
|
|
|
|
SEC filings include Form 10-K, Form 10-Q, Form 8-K, the proxy statement, Forms 3, 4, and 5, Schedule 13, Form 114,
|
|
Foreign Investment Disclosures and others. The annual 10-K report is required to be
|
|
filed annually and includes the company's financial statements, management discussion and analysis,
|
|
and audited financial statements.
|
|
|
|
|
|
Parameters
|
|
----------
|
|
symbol : Optional[str]
|
|
Symbol to get data for.
|
|
form_type : Union[str, None, List[Optional[str]]]
|
|
Filter by form type. Check the data provider for available types. Multiple comma separated items allowed for provider(s): sec.
|
|
limit : int
|
|
The number of data entries to return.
|
|
provider : Optional[Literal['fmp', 'intrinio', 'sec']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio, sec.
|
|
start_date : Optional[datetime.date]
|
|
Start date of the data, in YYYY-MM-DD format. (provider: intrinio, sec)
|
|
end_date : Optional[datetime.date]
|
|
End date of the data, in YYYY-MM-DD format. (provider: intrinio, sec)
|
|
thea_enabled : Optional[bool]
|
|
Return filings that have been read by Intrinio's Thea NLP. (provider: intrinio)
|
|
cik : Optional[Union[int, str]]
|
|
Lookup filings by Central Index Key (CIK) instead of by symbol. (provider: sec)
|
|
use_cache : bool
|
|
Whether or not to use cache. If True, cache will store for one day. (provider: sec)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[CompanyFilings]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp', 'intrinio', 'sec']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
CompanyFilings
|
|
--------------
|
|
filing_date : date
|
|
The date of the filing.
|
|
accepted_date : Optional[datetime]
|
|
Accepted date of the filing.
|
|
symbol : Optional[str]
|
|
Symbol representing the entity requested in the data.
|
|
cik : Optional[str]
|
|
Central Index Key (CIK) for the requested entity.
|
|
report_type : Optional[str]
|
|
Type of filing.
|
|
filing_url : Optional[str]
|
|
URL to the filing page.
|
|
report_url : str
|
|
URL to the actual report.
|
|
id : Optional[str]
|
|
Intrinio ID of the filing. (provider: intrinio)
|
|
period_end_date : Optional[date]
|
|
Ending date of the fiscal period for the filing. (provider: intrinio)
|
|
sec_unique_id : Optional[str]
|
|
SEC unique ID of the filing. (provider: intrinio)
|
|
instance_url : Optional[str]
|
|
URL for the XBRL filing for the report. (provider: intrinio)
|
|
industry_group : Optional[str]
|
|
Industry group of the company. (provider: intrinio)
|
|
industry_category : Optional[str]
|
|
Industry category of the company. (provider: intrinio)
|
|
report_date : Optional[date]
|
|
The date of the filing. (provider: sec)
|
|
act : Optional[Union[int, str]]
|
|
The SEC Act number. (provider: sec)
|
|
items : Optional[Union[str, float]]
|
|
The SEC Item numbers. (provider: sec)
|
|
primary_doc_description : Optional[str]
|
|
The description of the primary document. (provider: sec)
|
|
primary_doc : Optional[str]
|
|
The filename of the primary document. (provider: sec)
|
|
accession_number : Optional[Union[int, str]]
|
|
The accession number. (provider: sec)
|
|
file_number : Optional[Union[int, str]]
|
|
The file number. (provider: sec)
|
|
film_number : Optional[Union[int, str]]
|
|
The film number. (provider: sec)
|
|
is_inline_xbrl : Optional[Union[int, str]]
|
|
Whether the filing is an inline XBRL filing. (provider: sec)
|
|
is_xbrl : Optional[Union[int, str]]
|
|
Whether the filing is an XBRL filing. (provider: sec)
|
|
size : Optional[Union[int, str]]
|
|
The size of the filing. (provider: sec)
|
|
complete_submission_url : Optional[str]
|
|
The URL to the complete filing submission. (provider: sec)
|
|
filing_detail_url : Optional[str]
|
|
The URL to the filing details. (provider: sec)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.filings(provider='fmp')
|
|
>>> obb.equity.fundamental.filings(limit=100, provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/filings",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.filings",
|
|
("fmp", "intrinio", "sec"),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"form_type": form_type,
|
|
"limit": limit,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"form_type": {
|
|
"sec": {
|
|
"multiple_items_allowed": True,
|
|
"choices": [
|
|
"1",
|
|
"1-A",
|
|
"1-A_POS",
|
|
"1-A-W",
|
|
"1-E",
|
|
"1-E_AD",
|
|
"1-K",
|
|
"1-SA",
|
|
"1-U",
|
|
"1-Z",
|
|
"1-Z-W",
|
|
"10-12B",
|
|
"10-12G",
|
|
"10-D",
|
|
"10-K",
|
|
"10-KT",
|
|
"10-Q",
|
|
"10-QT",
|
|
"11-K",
|
|
"11-KT",
|
|
"13F-HR",
|
|
"13F-NT",
|
|
"13FCONP",
|
|
"144",
|
|
"15-12B",
|
|
"15-12G",
|
|
"15-15D",
|
|
"15F-12B",
|
|
"15F-12G",
|
|
"15F-15D",
|
|
"18-12B",
|
|
"18-K",
|
|
"19B-4E",
|
|
"2-A",
|
|
"2-AF",
|
|
"2-E",
|
|
"20-F",
|
|
"20FR12B",
|
|
"20FR12G",
|
|
"24F-2NT",
|
|
"25",
|
|
"25-NSE",
|
|
"253G1",
|
|
"253G2",
|
|
"253G3",
|
|
"253G4",
|
|
"3",
|
|
"305B2",
|
|
"34-12H",
|
|
"4",
|
|
"40-17F1",
|
|
"40-17F2",
|
|
"40-17G",
|
|
"40-17GCS",
|
|
"40-202A",
|
|
"40-203A",
|
|
"40-206A",
|
|
"40-24B2",
|
|
"40-33",
|
|
"40-6B",
|
|
"40-8B25",
|
|
"40-8F-2",
|
|
"40-APP",
|
|
"40-F",
|
|
"40-OIP",
|
|
"40FR12B",
|
|
"40FR12G",
|
|
"424A",
|
|
"424B1",
|
|
"424B2",
|
|
"424B3",
|
|
"424B4",
|
|
"424B5",
|
|
"424B7",
|
|
"424B8",
|
|
"424H",
|
|
"425",
|
|
"485APOS",
|
|
"485BPOS",
|
|
"485BXT",
|
|
"486APOS",
|
|
"486BPOS",
|
|
"486BXT",
|
|
"487",
|
|
"497",
|
|
"497AD",
|
|
"497H2",
|
|
"497J",
|
|
"497K",
|
|
"497VPI",
|
|
"497VPU",
|
|
"5",
|
|
"6-K",
|
|
"6B_NTC",
|
|
"6B_ORDR",
|
|
"8-A12B",
|
|
"8-A12G",
|
|
"8-K",
|
|
"8-K12B",
|
|
"8-K12G3",
|
|
"8-K15D5",
|
|
"8-M",
|
|
"8F-2_NTC",
|
|
"8F-2_ORDR",
|
|
"9-M",
|
|
"ABS-15G",
|
|
"ABS-EE",
|
|
"ADN-MTL",
|
|
"ADV-E",
|
|
"ADV-H-C",
|
|
"ADV-H-T",
|
|
"ADV-NR",
|
|
"ANNLRPT",
|
|
"APP_NTC",
|
|
"APP_ORDR",
|
|
"APP_WD",
|
|
"APP_WDG",
|
|
"ARS",
|
|
"ATS-N",
|
|
"ATS-N-C",
|
|
"ATS-N/UA",
|
|
"AW",
|
|
"AW_WD",
|
|
"C",
|
|
"C-AR",
|
|
"C-AR-W",
|
|
"C-TR",
|
|
"C-TR-W",
|
|
"C-U",
|
|
"C-U-W",
|
|
"C-W",
|
|
"CB",
|
|
"CERT",
|
|
"CERTARCA",
|
|
"CERTBATS",
|
|
"CERTCBO",
|
|
"CERTNAS",
|
|
"CERTNYS",
|
|
"CERTPAC",
|
|
"CFPORTAL",
|
|
"CFPORTAL-W",
|
|
"CORRESP",
|
|
"CT_ORDER",
|
|
"D",
|
|
"DEF_14A",
|
|
"DEF_14C",
|
|
"DEFA14A",
|
|
"DEFA14C",
|
|
"DEFC14A",
|
|
"DEFC14C",
|
|
"DEFM14A",
|
|
"DEFM14C",
|
|
"DEFN14A",
|
|
"DEFR14A",
|
|
"DEFR14C",
|
|
"DEL_AM",
|
|
"DFAN14A",
|
|
"DFRN14A",
|
|
"DOS",
|
|
"DOSLTR",
|
|
"DRS",
|
|
"DRSLTR",
|
|
"DSTRBRPT",
|
|
"EFFECT",
|
|
"F-1",
|
|
"F-10",
|
|
"F-10EF",
|
|
"F-10POS",
|
|
"F-1MEF",
|
|
"F-3",
|
|
"F-3ASR",
|
|
"F-3D",
|
|
"F-3DPOS",
|
|
"F-3MEF",
|
|
"F-4",
|
|
"F-4_POS",
|
|
"F-4MEF",
|
|
"F-6",
|
|
"F-6_POS",
|
|
"F-6EF",
|
|
"F-7",
|
|
"F-7_POS",
|
|
"F-8",
|
|
"F-8_POS",
|
|
"F-80",
|
|
"F-80POS",
|
|
"F-9",
|
|
"F-9_POS",
|
|
"F-N",
|
|
"F-X",
|
|
"FOCUSN",
|
|
"FWP",
|
|
"G-405",
|
|
"G-405N",
|
|
"G-FIN",
|
|
"G-FINW",
|
|
"IRANNOTICE",
|
|
"MA",
|
|
"MA-A",
|
|
"MA-I",
|
|
"MA-W",
|
|
"MSD",
|
|
"MSDCO",
|
|
"MSDW",
|
|
"N-1",
|
|
"N-14",
|
|
"N-14_8C",
|
|
"N-14MEF",
|
|
"N-18F1",
|
|
"N-1A",
|
|
"N-2",
|
|
"N-2_POSASR",
|
|
"N-23C-2",
|
|
"N-23C3A",
|
|
"N-23C3B",
|
|
"N-23C3C",
|
|
"N-2ASR",
|
|
"N-2MEF",
|
|
"N-30B-2",
|
|
"N-30D",
|
|
"N-4",
|
|
"N-5",
|
|
"N-54A",
|
|
"N-54C",
|
|
"N-6",
|
|
"N-6F",
|
|
"N-8A",
|
|
"N-8B-2",
|
|
"N-8F",
|
|
"N-8F_NTC",
|
|
"N-8F_ORDR",
|
|
"N-CEN",
|
|
"N-CR",
|
|
"N-CSR",
|
|
"N-CSRS",
|
|
"N-MFP",
|
|
"N-MFP1",
|
|
"N-MFP2",
|
|
"N-PX",
|
|
"N-Q",
|
|
"N-VP",
|
|
"N-VPFS",
|
|
"NO_ACT",
|
|
"NPORT-EX",
|
|
"NPORT-NP",
|
|
"NPORT-P",
|
|
"NRSRO-CE",
|
|
"NRSRO-UPD",
|
|
"NSAR-A",
|
|
"NSAR-AT",
|
|
"NSAR-B",
|
|
"NSAR-BT",
|
|
"NSAR-U",
|
|
"NT_10-D",
|
|
"NT_10-K",
|
|
"NT_10-Q",
|
|
"NT_11-K",
|
|
"NT_20-F",
|
|
"NT_N-CEN",
|
|
"NT_N-MFP",
|
|
"NT_N-MFP1",
|
|
"NT_N-MFP2",
|
|
"NT_NPORT-EX",
|
|
"NT_NPORT-P",
|
|
"NT-NCEN",
|
|
"NT-NCSR",
|
|
"NT-NSAR",
|
|
"NTFNCEN",
|
|
"NTFNCSR",
|
|
"NTFNSAR",
|
|
"NTN_10D",
|
|
"NTN_10K",
|
|
"NTN_10Q",
|
|
"NTN_20F",
|
|
"OIP_NTC",
|
|
"OIP_ORDR",
|
|
"POS_8C",
|
|
"POS_AM",
|
|
"POS_AMI",
|
|
"POS_EX",
|
|
"POS462B",
|
|
"POS462C",
|
|
"POSASR",
|
|
"PRE_14A",
|
|
"PRE_14C",
|
|
"PREC14A",
|
|
"PREC14C",
|
|
"PREM14A",
|
|
"PREM14C",
|
|
"PREN14A",
|
|
"PRER14A",
|
|
"PRER14C",
|
|
"PRRN14A",
|
|
"PX14A6G",
|
|
"PX14A6N",
|
|
"QRTLYRPT",
|
|
"QUALIF",
|
|
"REG-NR",
|
|
"REVOKED",
|
|
"RW",
|
|
"RW_WD",
|
|
"S-1",
|
|
"S-11",
|
|
"S-11MEF",
|
|
"S-1MEF",
|
|
"S-20",
|
|
"S-3",
|
|
"S-3ASR",
|
|
"S-3D",
|
|
"S-3DPOS",
|
|
"S-3MEF",
|
|
"S-4",
|
|
"S-4_POS",
|
|
"S-4EF",
|
|
"S-4MEF",
|
|
"S-6",
|
|
"S-8",
|
|
"S-8_POS",
|
|
"S-B",
|
|
"S-BMEF",
|
|
"SBSE",
|
|
"SBSE-A",
|
|
"SBSE-BD",
|
|
"SBSE-C",
|
|
"SBSE-W",
|
|
"SC_13D",
|
|
"SC_13E1",
|
|
"SC_13E3",
|
|
"SC_13G",
|
|
"SC_14D9",
|
|
"SC_14F1",
|
|
"SC_14N",
|
|
"SC_TO-C",
|
|
"SC_TO-I",
|
|
"SC_TO-T",
|
|
"SC13E4F",
|
|
"SC14D1F",
|
|
"SC14D9C",
|
|
"SC14D9F",
|
|
"SD",
|
|
"SDR",
|
|
"SE",
|
|
"SEC_ACTION",
|
|
"SEC_STAFF_ACTION",
|
|
"SEC_STAFF_LETTER",
|
|
"SF-1",
|
|
"SF-3",
|
|
"SL",
|
|
"SP_15D2",
|
|
"STOP_ORDER",
|
|
"SUPPL",
|
|
"T-3",
|
|
"TA-1",
|
|
"TA-2",
|
|
"TA-W",
|
|
"TACO",
|
|
"TH",
|
|
"TTW",
|
|
"UNDER",
|
|
"UPLOAD",
|
|
"WDL-REQ",
|
|
"X-17A-5",
|
|
],
|
|
}
|
|
}
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def historical_attributes(
|
|
self,
|
|
symbol: Annotated[
|
|
Union[str, List[str]],
|
|
OpenBBField(
|
|
description="Symbol to get data for. Multiple comma separated items allowed for provider(s): intrinio."
|
|
),
|
|
],
|
|
tag: Annotated[
|
|
Union[str, List[str]],
|
|
OpenBBField(
|
|
description="Intrinio data tag ID or code. Multiple comma separated items allowed for provider(s): intrinio."
|
|
),
|
|
],
|
|
start_date: Annotated[
|
|
Union[datetime.date, None, str],
|
|
OpenBBField(description="Start date of the data, in YYYY-MM-DD format."),
|
|
] = None,
|
|
end_date: Annotated[
|
|
Union[datetime.date, None, str],
|
|
OpenBBField(description="End date of the data, in YYYY-MM-DD format."),
|
|
] = None,
|
|
frequency: Annotated[
|
|
Optional[Literal["daily", "weekly", "monthly", "quarterly", "yearly"]],
|
|
OpenBBField(description="The frequency of the data."),
|
|
] = "yearly",
|
|
limit: Annotated[
|
|
Optional[int],
|
|
OpenBBField(description="The number of data entries to return."),
|
|
] = 1000,
|
|
tag_type: Annotated[
|
|
Optional[str], OpenBBField(description="Filter by type, when applicable.")
|
|
] = None,
|
|
sort: Annotated[
|
|
Optional[Literal["asc", "desc"]], OpenBBField(description="Sort order.")
|
|
] = "desc",
|
|
provider: Annotated[
|
|
Optional[Literal["intrinio"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: intrinio."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get the historical values of a data tag from Intrinio.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : Union[str, List[str]]
|
|
Symbol to get data for. Multiple comma separated items allowed for provider(s): intrinio.
|
|
tag : Union[str, List[str]]
|
|
Intrinio data tag ID or code. Multiple comma separated items allowed for provider(s): intrinio.
|
|
start_date : Union[date, None, str]
|
|
Start date of the data, in YYYY-MM-DD format.
|
|
end_date : Union[date, None, str]
|
|
End date of the data, in YYYY-MM-DD format.
|
|
frequency : Optional[Literal['daily', 'weekly', 'monthly', 'quarterly', 'yearly']]
|
|
The frequency of the data.
|
|
limit : Optional[int]
|
|
The number of data entries to return.
|
|
tag_type : Optional[str]
|
|
Filter by type, when applicable.
|
|
sort : Optional[Literal['asc', 'desc']]
|
|
Sort order.
|
|
provider : Optional[Literal['intrinio']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: intrinio.
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[HistoricalAttributes]
|
|
Serializable results.
|
|
provider : Optional[Literal['intrinio']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
HistoricalAttributes
|
|
--------------------
|
|
date : date
|
|
The date of the data.
|
|
symbol : str
|
|
Symbol representing the entity requested in the data.
|
|
tag : Optional[str]
|
|
Tag name for the fetched data.
|
|
value : Optional[float]
|
|
The value of the data.
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.historical_attributes(symbol='AAPL', tag='ebitda', provider='intrinio')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/historical_attributes",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.historical_attributes",
|
|
("intrinio",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"tag": tag,
|
|
"start_date": start_date,
|
|
"end_date": end_date,
|
|
"frequency": frequency,
|
|
"limit": limit,
|
|
"tag_type": tag_type,
|
|
"sort": sort,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"symbol": {
|
|
"intrinio": {"multiple_items_allowed": True, "choices": None}
|
|
},
|
|
"tag": {
|
|
"intrinio": {"multiple_items_allowed": True, "choices": None}
|
|
},
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def historical_eps(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
provider: Annotated[
|
|
Optional[Literal["fmp"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get historical earnings per share data for a given company.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
provider : Optional[Literal['fmp']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp.
|
|
limit : Optional[int]
|
|
The number of data entries to return. (provider: fmp)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[HistoricalEps]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
HistoricalEps
|
|
-------------
|
|
date : Optional[date]
|
|
The date of the data.
|
|
symbol : str
|
|
Symbol representing the entity requested in the data.
|
|
announce_time : Optional[str]
|
|
Timing of the earnings announcement.
|
|
eps_actual : Optional[float]
|
|
Actual EPS from the earnings date.
|
|
eps_estimated : Optional[float]
|
|
Estimated EPS for the earnings date.
|
|
revenue_estimated : Optional[float]
|
|
Estimated consensus revenue for the reporting period. (provider: fmp)
|
|
revenue_actual : Optional[float]
|
|
The actual reported revenue. (provider: fmp)
|
|
reporting_time : Optional[str]
|
|
The reporting time - e.g. after market close. (provider: fmp)
|
|
updated_at : Optional[date]
|
|
The date when the data was last updated. (provider: fmp)
|
|
period_ending : Optional[date]
|
|
The fiscal period end date. (provider: fmp)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.historical_eps(symbol='AAPL', provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/historical_eps",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.historical_eps",
|
|
("fmp",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
},
|
|
extra_params=kwargs,
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def historical_splits(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
provider: Annotated[
|
|
Optional[Literal["fmp"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get historical stock splits for a given company.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
provider : Optional[Literal['fmp']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp.
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[HistoricalSplits]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
HistoricalSplits
|
|
----------------
|
|
date : date
|
|
The date of the data.
|
|
numerator : Optional[float]
|
|
Numerator of the split.
|
|
denominator : Optional[float]
|
|
Denominator of the split.
|
|
split_ratio : Optional[str]
|
|
Split ratio.
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.historical_splits(symbol='AAPL', provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/historical_splits",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.historical_splits",
|
|
("fmp",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
},
|
|
extra_params=kwargs,
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def income(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
limit: Annotated[
|
|
Optional[Annotated[int, Ge(ge=0)]],
|
|
OpenBBField(description="The number of data entries to return."),
|
|
] = 5,
|
|
provider: Annotated[
|
|
Optional[Literal["fmp", "intrinio", "polygon", "yfinance"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio, polygon, yfinance."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get the income statement for a given company.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
limit : Optional[Annotated[int, Ge(ge=0)]]
|
|
The number of data entries to return.
|
|
provider : Optional[Literal['fmp', 'intrinio', 'polygon', 'yfinance']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio, polygon, yfinance.
|
|
period : Union[Literal['annual', 'quarter'], Literal['annual', 'quarter', 'ttm', 'ytd'], Literal['annual', 'quarter', 'ttm']]
|
|
Time period of the data to return. (provider: fmp, intrinio, polygon, yfinance)
|
|
fiscal_year : Optional[int]
|
|
The specific fiscal year. Reports do not go beyond 2008. (provider: intrinio)
|
|
filing_date : Optional[datetime.date]
|
|
Filing date of the financial statement. (provider: polygon)
|
|
filing_date_lt : Optional[datetime.date]
|
|
Filing date less than the given date. (provider: polygon)
|
|
filing_date_lte : Optional[datetime.date]
|
|
Filing date less than or equal to the given date. (provider: polygon)
|
|
filing_date_gt : Optional[datetime.date]
|
|
Filing date greater than the given date. (provider: polygon)
|
|
filing_date_gte : Optional[datetime.date]
|
|
Filing date greater than or equal to the given date. (provider: polygon)
|
|
period_of_report_date : Optional[datetime.date]
|
|
Period of report date of the financial statement. (provider: polygon)
|
|
period_of_report_date_lt : Optional[datetime.date]
|
|
Period of report date less than the given date. (provider: polygon)
|
|
period_of_report_date_lte : Optional[datetime.date]
|
|
Period of report date less than or equal to the given date. (provider: polygon)
|
|
period_of_report_date_gt : Optional[datetime.date]
|
|
Period of report date greater than the given date. (provider: polygon)
|
|
period_of_report_date_gte : Optional[datetime.date]
|
|
Period of report date greater than or equal to the given date. (provider: polygon)
|
|
include_sources : Optional[bool]
|
|
Whether to include the sources of the financial statement. (provider: polygon)
|
|
order : Optional[Literal['asc', 'desc']]
|
|
Order of the financial statement. (provider: polygon)
|
|
sort : Optional[Literal['filing_date', 'period_of_report_date']]
|
|
Sort of the financial statement. (provider: polygon)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[IncomeStatement]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp', 'intrinio', 'polygon', 'yfinance']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
IncomeStatement
|
|
---------------
|
|
period_ending : date
|
|
The end date of the reporting period.
|
|
fiscal_period : Optional[str]
|
|
The fiscal period of the report.
|
|
fiscal_year : Optional[int]
|
|
The fiscal year of the fiscal period.
|
|
filing_date : Optional[date]
|
|
The date when the filing was made. (provider: fmp)
|
|
accepted_date : Optional[datetime]
|
|
The date and time when the filing was accepted. (provider: fmp)
|
|
reported_currency : Optional[str]
|
|
The currency in which the balance sheet was reported. (provider: fmp, intrinio)
|
|
revenue : Optional[float]
|
|
Total revenue. (provider: fmp, intrinio, polygon)
|
|
cost_of_revenue : Optional[float]
|
|
Cost of revenue. (provider: fmp, intrinio, polygon)
|
|
gross_profit : Optional[float]
|
|
Gross profit. (provider: fmp, intrinio, polygon)
|
|
gross_profit_margin : Optional[float]
|
|
Gross profit margin. (provider: fmp);
|
|
Gross margin ratio. (provider: intrinio)
|
|
general_and_admin_expense : Optional[float]
|
|
General and administrative expenses. (provider: fmp)
|
|
research_and_development_expense : Optional[float]
|
|
Research and development expenses. (provider: fmp, intrinio)
|
|
selling_and_marketing_expense : Optional[float]
|
|
Selling and marketing expenses. (provider: fmp)
|
|
selling_general_and_admin_expense : Optional[float]
|
|
Selling, general and administrative expenses. (provider: fmp, intrinio)
|
|
other_expenses : Optional[float]
|
|
Other expenses. (provider: fmp)
|
|
total_operating_expenses : Optional[float]
|
|
Total operating expenses. (provider: fmp, intrinio)
|
|
cost_and_expenses : Optional[float]
|
|
Cost and expenses. (provider: fmp)
|
|
interest_income : Optional[float]
|
|
Interest income. (provider: fmp)
|
|
total_interest_expense : Optional[float]
|
|
Total interest expenses. (provider: fmp, intrinio);
|
|
Interest Expense (provider: polygon)
|
|
depreciation_and_amortization : Optional[float]
|
|
Depreciation and amortization. (provider: fmp, polygon)
|
|
ebitda : Optional[float]
|
|
EBITDA. (provider: fmp);
|
|
Earnings Before Interest, Taxes, Depreciation and Amortization. (provider: intrinio)
|
|
ebitda_margin : Optional[float]
|
|
EBITDA margin. (provider: fmp);
|
|
Margin on Earnings Before Interest, Taxes, Depreciation and Amortization. (provider: intrinio)
|
|
total_operating_income : Optional[float]
|
|
Total operating income. (provider: fmp, intrinio)
|
|
operating_income_margin : Optional[float]
|
|
Operating income margin. (provider: fmp)
|
|
total_other_income_expenses : Optional[float]
|
|
Total other income and expenses. (provider: fmp)
|
|
total_pre_tax_income : Optional[float]
|
|
Total pre-tax income. (provider: fmp, intrinio);
|
|
Income Before Tax (provider: polygon)
|
|
pre_tax_income_margin : Optional[float]
|
|
Pre-tax income margin. (provider: fmp, intrinio)
|
|
income_tax_expense : Optional[float]
|
|
Income tax expense. (provider: fmp, intrinio, polygon)
|
|
consolidated_net_income : Optional[float]
|
|
Consolidated net income. (provider: fmp, intrinio);
|
|
Net Income/Loss (provider: polygon)
|
|
net_income_margin : Optional[float]
|
|
Net income margin. (provider: fmp)
|
|
basic_earnings_per_share : Optional[float]
|
|
Basic earnings per share. (provider: fmp, intrinio);
|
|
Earnings Per Share (provider: polygon)
|
|
diluted_earnings_per_share : Optional[float]
|
|
Diluted earnings per share. (provider: fmp, intrinio, polygon)
|
|
weighted_average_basic_shares_outstanding : Optional[float]
|
|
Weighted average basic shares outstanding. (provider: fmp, intrinio);
|
|
Basic Average Shares (provider: polygon)
|
|
weighted_average_diluted_shares_outstanding : Optional[float]
|
|
Weighted average diluted shares outstanding. (provider: fmp, intrinio);
|
|
Diluted Average Shares (provider: polygon)
|
|
link : Optional[str]
|
|
Link to the filing. (provider: fmp)
|
|
final_link : Optional[str]
|
|
Link to the filing document. (provider: fmp)
|
|
operating_revenue : Optional[float]
|
|
Total operating revenue (provider: intrinio)
|
|
operating_cost_of_revenue : Optional[float]
|
|
Total operating cost of revenue (provider: intrinio)
|
|
provision_for_credit_losses : Optional[float]
|
|
Provision for credit losses (provider: intrinio)
|
|
salaries_and_employee_benefits : Optional[float]
|
|
Salaries and employee benefits (provider: intrinio)
|
|
marketing_expense : Optional[float]
|
|
Marketing expense (provider: intrinio)
|
|
net_occupancy_and_equipment_expense : Optional[float]
|
|
Net occupancy and equipment expense (provider: intrinio)
|
|
other_operating_expenses : Optional[float]
|
|
Other operating expenses (provider: intrinio, polygon)
|
|
depreciation_expense : Optional[float]
|
|
Depreciation expense (provider: intrinio)
|
|
amortization_expense : Optional[float]
|
|
Amortization expense (provider: intrinio)
|
|
amortization_of_deferred_policy_acquisition_costs : Optional[float]
|
|
Amortization of deferred policy acquisition costs (provider: intrinio)
|
|
exploration_expense : Optional[float]
|
|
Exploration expense (provider: intrinio)
|
|
depletion_expense : Optional[float]
|
|
Depletion expense (provider: intrinio)
|
|
deposits_and_money_market_investments_interest_income : Optional[float]
|
|
Deposits and money market investments interest income (provider: intrinio)
|
|
federal_funds_sold_and_securities_borrowed_interest_income : Optional[float]
|
|
Federal funds sold and securities borrowed interest income (provider: intrinio)
|
|
investment_securities_interest_income : Optional[float]
|
|
Investment securities interest income (provider: intrinio)
|
|
loans_and_leases_interest_income : Optional[float]
|
|
Loans and leases interest income (provider: intrinio)
|
|
trading_account_interest_income : Optional[float]
|
|
Trading account interest income (provider: intrinio)
|
|
other_interest_income : Optional[float]
|
|
Other interest income (provider: intrinio)
|
|
total_non_interest_income : Optional[float]
|
|
Total non-interest income (provider: intrinio)
|
|
interest_and_investment_income : Optional[float]
|
|
Interest and investment income (provider: intrinio)
|
|
short_term_borrowings_interest_expense : Optional[float]
|
|
Short-term borrowings interest expense (provider: intrinio)
|
|
long_term_debt_interest_expense : Optional[float]
|
|
Long-term debt interest expense (provider: intrinio)
|
|
capitalized_lease_obligations_interest_expense : Optional[float]
|
|
Capitalized lease obligations interest expense (provider: intrinio)
|
|
deposits_interest_expense : Optional[float]
|
|
Deposits interest expense (provider: intrinio)
|
|
federal_funds_purchased_and_securities_sold_interest_expense : Optional[float]
|
|
Federal funds purchased and securities sold interest expense (provider: intrinio)
|
|
other_interest_expense : Optional[float]
|
|
Other interest expense (provider: intrinio)
|
|
net_interest_income : Optional[float]
|
|
Net interest income (provider: intrinio);
|
|
Interest Income Net (provider: polygon)
|
|
other_non_interest_income : Optional[float]
|
|
Other non-interest income (provider: intrinio)
|
|
investment_banking_income : Optional[float]
|
|
Investment banking income (provider: intrinio)
|
|
trust_fees_by_commissions : Optional[float]
|
|
Trust fees by commissions (provider: intrinio)
|
|
premiums_earned : Optional[float]
|
|
Premiums earned (provider: intrinio)
|
|
insurance_policy_acquisition_costs : Optional[float]
|
|
Insurance policy acquisition costs (provider: intrinio)
|
|
current_and_future_benefits : Optional[float]
|
|
Current and future benefits (provider: intrinio)
|
|
property_and_liability_insurance_claims : Optional[float]
|
|
Property and liability insurance claims (provider: intrinio)
|
|
total_non_interest_expense : Optional[float]
|
|
Total non-interest expense (provider: intrinio)
|
|
net_realized_and_unrealized_capital_gains_on_investments : Optional[float]
|
|
Net realized and unrealized capital gains on investments (provider: intrinio)
|
|
other_gains : Optional[float]
|
|
Other gains (provider: intrinio)
|
|
non_operating_income : Optional[float]
|
|
Non-operating income (provider: intrinio);
|
|
Non Operating Income/Loss (provider: polygon)
|
|
other_income : Optional[float]
|
|
Other income (provider: intrinio)
|
|
other_revenue : Optional[float]
|
|
Other revenue (provider: intrinio)
|
|
extraordinary_income : Optional[float]
|
|
Extraordinary income (provider: intrinio)
|
|
total_other_income : Optional[float]
|
|
Total other income (provider: intrinio)
|
|
ebit : Optional[float]
|
|
Earnings Before Interest and Taxes. (provider: intrinio)
|
|
impairment_charge : Optional[float]
|
|
Impairment charge (provider: intrinio)
|
|
restructuring_charge : Optional[float]
|
|
Restructuring charge (provider: intrinio)
|
|
service_charges_on_deposit_accounts : Optional[float]
|
|
Service charges on deposit accounts (provider: intrinio)
|
|
other_service_charges : Optional[float]
|
|
Other service charges (provider: intrinio)
|
|
other_special_charges : Optional[float]
|
|
Other special charges (provider: intrinio)
|
|
other_cost_of_revenue : Optional[float]
|
|
Other cost of revenue (provider: intrinio)
|
|
net_income_continuing_operations : Optional[float]
|
|
Net income (continuing operations) (provider: intrinio)
|
|
net_income_discontinued_operations : Optional[float]
|
|
Net income (discontinued operations) (provider: intrinio)
|
|
other_adjustments_to_consolidated_net_income : Optional[float]
|
|
Other adjustments to consolidated net income (provider: intrinio)
|
|
other_adjustment_to_net_income_attributable_to_common_shareholders : Optional[float]
|
|
Other adjustment to net income attributable to common shareholders (provider: intrinio)
|
|
net_income_attributable_to_noncontrolling_interest : Optional[float]
|
|
Net income attributable to noncontrolling interest (provider: intrinio)
|
|
net_income_attributable_to_common_shareholders : Optional[float]
|
|
Net income attributable to common shareholders (provider: intrinio);
|
|
Net Income/Loss Available To Common Stockholders Basic (provider: polygon)
|
|
basic_and_diluted_earnings_per_share : Optional[float]
|
|
Basic and diluted earnings per share (provider: intrinio)
|
|
cash_dividends_to_common_per_share : Optional[float]
|
|
Cash dividends to common per share (provider: intrinio)
|
|
preferred_stock_dividends_declared : Optional[float]
|
|
Preferred stock dividends declared (provider: intrinio)
|
|
weighted_average_basic_and_diluted_shares_outstanding : Optional[float]
|
|
Weighted average basic and diluted shares outstanding (provider: intrinio)
|
|
cost_of_revenue_goods : Optional[float]
|
|
Cost of Revenue - Goods (provider: polygon)
|
|
cost_of_revenue_services : Optional[float]
|
|
Cost of Revenue - Services (provider: polygon)
|
|
provisions_for_loan_lease_and_other_losses : Optional[float]
|
|
Provisions for loan lease and other losses (provider: polygon)
|
|
income_tax_expense_benefit_current : Optional[float]
|
|
Income tax expense benefit current (provider: polygon)
|
|
deferred_tax_benefit : Optional[float]
|
|
Deferred tax benefit (provider: polygon)
|
|
benefits_costs_expenses : Optional[float]
|
|
Benefits, costs and expenses (provider: polygon)
|
|
selling_general_and_administrative_expense : Optional[float]
|
|
Selling, general and administrative expense (provider: polygon)
|
|
research_and_development : Optional[float]
|
|
Research and development (provider: polygon)
|
|
costs_and_expenses : Optional[float]
|
|
Costs and expenses (provider: polygon)
|
|
operating_expenses : Optional[float]
|
|
Operating expenses (provider: polygon)
|
|
operating_income : Optional[float]
|
|
Operating Income/Loss (provider: polygon)
|
|
interest_and_dividend_income : Optional[float]
|
|
Interest and Dividend Income (provider: polygon)
|
|
interest_and_debt_expense : Optional[float]
|
|
Interest and Debt Expense (provider: polygon)
|
|
interest_income_after_provision_for_losses : Optional[float]
|
|
Interest Income After Provision for Losses (provider: polygon)
|
|
non_interest_expense : Optional[float]
|
|
Non-Interest Expense (provider: polygon)
|
|
non_interest_income : Optional[float]
|
|
Non-Interest Income (provider: polygon)
|
|
income_from_discontinued_operations_net_of_tax_on_disposal : Optional[float]
|
|
Income From Discontinued Operations Net of Tax on Disposal (provider: polygon)
|
|
income_from_discontinued_operations_net_of_tax : Optional[float]
|
|
Income From Discontinued Operations Net of Tax (provider: polygon)
|
|
income_before_equity_method_investments : Optional[float]
|
|
Income Before Equity Method Investments (provider: polygon)
|
|
income_from_equity_method_investments : Optional[float]
|
|
Income From Equity Method Investments (provider: polygon)
|
|
income_after_tax : Optional[float]
|
|
Income After Tax (provider: polygon)
|
|
net_income_attributable_noncontrolling_interest : Optional[float]
|
|
Net income (loss) attributable to noncontrolling interest (provider: polygon)
|
|
net_income_attributable_to_parent : Optional[float]
|
|
Net income (loss) attributable to parent (provider: polygon)
|
|
participating_securities_earnings : Optional[float]
|
|
Participating Securities Distributed And Undistributed Earnings Loss Basic (provider: polygon)
|
|
undistributed_earnings_allocated_to_participating_securities : Optional[float]
|
|
Undistributed Earnings Allocated To Participating Securities (provider: polygon)
|
|
common_stock_dividends : Optional[float]
|
|
Common Stock Dividends (provider: polygon)
|
|
preferred_stock_dividends_and_other_adjustments : Optional[float]
|
|
Preferred stock dividends and other adjustments (provider: polygon)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.income(symbol='AAPL', provider='fmp')
|
|
>>> obb.equity.fundamental.income(symbol='AAPL', period='annual', limit=5, provider='intrinio')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/income",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.income",
|
|
("fmp", "intrinio", "polygon", "yfinance"),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"limit": limit,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"period": {
|
|
"fmp": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter"],
|
|
},
|
|
"intrinio": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter", "ttm", "ytd"],
|
|
},
|
|
"polygon": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter", "ttm"],
|
|
},
|
|
"yfinance": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter"],
|
|
},
|
|
}
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def income_growth(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
limit: Annotated[
|
|
Optional[int],
|
|
OpenBBField(description="The number of data entries to return."),
|
|
] = 10,
|
|
provider: Annotated[
|
|
Optional[Literal["fmp"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get the growth of a company's income statement items over time.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
limit : Optional[int]
|
|
The number of data entries to return.
|
|
provider : Optional[Literal['fmp']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp.
|
|
period : Literal['annual', 'quarter']
|
|
Time period of the data to return. (provider: fmp)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[IncomeStatementGrowth]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
IncomeStatementGrowth
|
|
---------------------
|
|
period_ending : date
|
|
The end date of the reporting period.
|
|
fiscal_period : Optional[str]
|
|
The fiscal period of the report.
|
|
fiscal_year : Optional[int]
|
|
The fiscal year of the fiscal period.
|
|
symbol : Optional[str]
|
|
Symbol representing the entity requested in the data. (provider: fmp)
|
|
growth_revenue : Optional[float]
|
|
Growth rate of total revenue. (provider: fmp)
|
|
growth_cost_of_revenue : Optional[float]
|
|
Growth rate of cost of goods sold. (provider: fmp)
|
|
growth_gross_profit : Optional[float]
|
|
Growth rate of gross profit. (provider: fmp)
|
|
growth_gross_profit_margin : Optional[float]
|
|
Growth rate of gross profit as a percentage of revenue. (provider: fmp)
|
|
growth_general_and_admin_expense : Optional[float]
|
|
Growth rate of general and administrative expenses. (provider: fmp)
|
|
growth_research_and_development_expense : Optional[float]
|
|
Growth rate of expenses on research and development. (provider: fmp)
|
|
growth_selling_and_marketing_expense : Optional[float]
|
|
Growth rate of expenses on selling and marketing activities. (provider: fmp)
|
|
growth_other_expenses : Optional[float]
|
|
Growth rate of other operating expenses. (provider: fmp)
|
|
growth_operating_expenses : Optional[float]
|
|
Growth rate of total operating expenses. (provider: fmp)
|
|
growth_cost_and_expenses : Optional[float]
|
|
Growth rate of total costs and expenses. (provider: fmp)
|
|
growth_interest_expense : Optional[float]
|
|
Growth rate of interest expenses. (provider: fmp)
|
|
growth_depreciation_and_amortization : Optional[float]
|
|
Growth rate of depreciation and amortization expenses. (provider: fmp)
|
|
growth_ebitda : Optional[float]
|
|
Growth rate of Earnings Before Interest, Taxes, Depreciation, and Amortization. (provider: fmp)
|
|
growth_ebitda_margin : Optional[float]
|
|
Growth rate of EBITDA as a percentage of revenue. (provider: fmp)
|
|
growth_operating_income : Optional[float]
|
|
Growth rate of operating income. (provider: fmp)
|
|
growth_operating_income_margin : Optional[float]
|
|
Growth rate of operating income as a percentage of revenue. (provider: fmp)
|
|
growth_total_other_income_expenses_net : Optional[float]
|
|
Growth rate of net total other income and expenses. (provider: fmp)
|
|
growth_income_before_tax : Optional[float]
|
|
Growth rate of income before taxes. (provider: fmp)
|
|
growth_income_before_tax_margin : Optional[float]
|
|
Growth rate of income before taxes as a percentage of revenue. (provider: fmp)
|
|
growth_income_tax_expense : Optional[float]
|
|
Growth rate of income tax expenses. (provider: fmp)
|
|
growth_consolidated_net_income : Optional[float]
|
|
Growth rate of net income. (provider: fmp)
|
|
growth_net_income_margin : Optional[float]
|
|
Growth rate of net income as a percentage of revenue. (provider: fmp)
|
|
growth_basic_earings_per_share : Optional[float]
|
|
Growth rate of Earnings Per Share (EPS). (provider: fmp)
|
|
growth_diluted_earnings_per_share : Optional[float]
|
|
Growth rate of diluted Earnings Per Share (EPS). (provider: fmp)
|
|
growth_weighted_average_basic_shares_outstanding : Optional[float]
|
|
Growth rate of weighted average shares outstanding. (provider: fmp)
|
|
growth_weighted_average_diluted_shares_outstanding : Optional[float]
|
|
Growth rate of diluted weighted average shares outstanding. (provider: fmp)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.income_growth(symbol='AAPL', provider='fmp')
|
|
>>> obb.equity.fundamental.income_growth(symbol='AAPL', limit=10, period='annual', provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/income_growth",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.income_growth",
|
|
("fmp",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"limit": limit,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"period": {
|
|
"fmp": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter"],
|
|
}
|
|
}
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def latest_attributes(
|
|
self,
|
|
symbol: Annotated[
|
|
Union[str, List[str]],
|
|
OpenBBField(
|
|
description="Symbol to get data for. Multiple comma separated items allowed for provider(s): intrinio."
|
|
),
|
|
],
|
|
tag: Annotated[
|
|
Union[str, List[str]],
|
|
OpenBBField(
|
|
description="Intrinio data tag ID or code. Multiple comma separated items allowed for provider(s): intrinio."
|
|
),
|
|
],
|
|
provider: Annotated[
|
|
Optional[Literal["intrinio"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: intrinio."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get the latest value of a data tag from Intrinio.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : Union[str, List[str]]
|
|
Symbol to get data for. Multiple comma separated items allowed for provider(s): intrinio.
|
|
tag : Union[str, List[str]]
|
|
Intrinio data tag ID or code. Multiple comma separated items allowed for provider(s): intrinio.
|
|
provider : Optional[Literal['intrinio']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: intrinio.
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[LatestAttributes]
|
|
Serializable results.
|
|
provider : Optional[Literal['intrinio']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
LatestAttributes
|
|
----------------
|
|
symbol : str
|
|
Symbol representing the entity requested in the data.
|
|
tag : Optional[str]
|
|
Tag name for the fetched data.
|
|
value : Optional[Union[str, float]]
|
|
The value of the data.
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.latest_attributes(symbol='AAPL', tag='ceo', provider='intrinio')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/latest_attributes",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.latest_attributes",
|
|
("intrinio",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"tag": tag,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"symbol": {
|
|
"intrinio": {"multiple_items_allowed": True, "choices": None}
|
|
},
|
|
"tag": {
|
|
"intrinio": {"multiple_items_allowed": True, "choices": None}
|
|
},
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def management(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
provider: Annotated[
|
|
Optional[Literal["fmp", "yfinance"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, yfinance."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get executive management team data for a given company.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
provider : Optional[Literal['fmp', 'yfinance']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, yfinance.
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[KeyExecutives]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp', 'yfinance']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
KeyExecutives
|
|
-------------
|
|
title : str
|
|
Designation of the key executive.
|
|
name : str
|
|
Name of the key executive.
|
|
pay : Optional[int]
|
|
Pay of the key executive.
|
|
currency_pay : Optional[str]
|
|
Currency of the pay.
|
|
gender : Optional[str]
|
|
Gender of the key executive.
|
|
year_born : Optional[int]
|
|
Birth year of the key executive.
|
|
title_since : Optional[int]
|
|
Date the tile was held since.
|
|
exercised_value : Optional[int]
|
|
Value of shares exercised. (provider: yfinance)
|
|
unexercised_value : Optional[int]
|
|
Value of shares not exercised. (provider: yfinance)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.management(symbol='AAPL', provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/management",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.management",
|
|
("fmp", "yfinance"),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
},
|
|
extra_params=kwargs,
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def management_compensation(
|
|
self,
|
|
symbol: Annotated[
|
|
Union[str, List[str]],
|
|
OpenBBField(
|
|
description="Symbol to get data for. Multiple comma separated items allowed for provider(s): fmp."
|
|
),
|
|
],
|
|
provider: Annotated[
|
|
Optional[Literal["fmp"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get executive management team compensation for a given company over time.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : Union[str, List[str]]
|
|
Symbol to get data for. Multiple comma separated items allowed for provider(s): fmp.
|
|
provider : Optional[Literal['fmp']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp.
|
|
year : Optional[int]
|
|
Year of the compensation. (provider: fmp)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[ExecutiveCompensation]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
ExecutiveCompensation
|
|
---------------------
|
|
symbol : str
|
|
Symbol representing the entity requested in the data.
|
|
cik : Optional[str]
|
|
Central Index Key (CIK) for the requested entity.
|
|
company_name : Optional[str]
|
|
The name of the company.
|
|
industry : Optional[str]
|
|
The industry of the company.
|
|
year : Optional[int]
|
|
Year of the compensation.
|
|
name_and_position : Optional[str]
|
|
Name and position.
|
|
salary : Optional[Annotated[float, Ge(ge=0)]]
|
|
Salary.
|
|
bonus : Optional[Annotated[float, Ge(ge=0)]]
|
|
Bonus payments.
|
|
stock_award : Optional[Annotated[float, Ge(ge=0)]]
|
|
Stock awards.
|
|
incentive_plan_compensation : Optional[Annotated[float, Ge(ge=0)]]
|
|
Incentive plan compensation.
|
|
all_other_compensation : Optional[Annotated[float, Ge(ge=0)]]
|
|
All other compensation.
|
|
total : Optional[Annotated[float, Ge(ge=0)]]
|
|
Total compensation.
|
|
filing_date : Optional[date]
|
|
Date of the filing. (provider: fmp)
|
|
accepted_date : Optional[datetime]
|
|
Date the filing was accepted. (provider: fmp)
|
|
url : Optional[str]
|
|
URL to the filing data. (provider: fmp)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.management_compensation(symbol='AAPL', provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/management_compensation",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.management_compensation",
|
|
("fmp",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"symbol": {"fmp": {"multiple_items_allowed": True, "choices": None}}
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def metrics(
|
|
self,
|
|
symbol: Annotated[
|
|
Union[str, List[str]],
|
|
OpenBBField(
|
|
description="Symbol to get data for. Multiple comma separated items allowed for provider(s): fmp, intrinio, yfinance."
|
|
),
|
|
],
|
|
limit: Annotated[
|
|
Optional[int],
|
|
OpenBBField(description="The number of data entries to return."),
|
|
] = 100,
|
|
provider: Annotated[
|
|
Optional[Literal["fmp", "intrinio", "yfinance"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio, yfinance."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get fundamental metrics for a given company.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : Union[str, List[str]]
|
|
Symbol to get data for. Multiple comma separated items allowed for provider(s): fmp, intrinio, yfinance.
|
|
limit : Optional[int]
|
|
The number of data entries to return.
|
|
provider : Optional[Literal['fmp', 'intrinio', 'yfinance']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio, yfinance.
|
|
period : Literal['annual', 'quarter']
|
|
Time period of the data to return. (provider: fmp)
|
|
with_ttm : bool
|
|
Include trailing twelve months (TTM) data. (provider: fmp)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[KeyMetrics]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp', 'intrinio', 'yfinance']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
KeyMetrics
|
|
----------
|
|
symbol : Optional[str]
|
|
Symbol representing the entity requested in the data.
|
|
market_cap : Optional[float]
|
|
Market capitalization
|
|
pe_ratio : Optional[float]
|
|
Price-to-earnings ratio (P/E ratio)
|
|
period_ending : Optional[date]
|
|
Period ending date. (provider: fmp)
|
|
fiscal_period : Optional[str]
|
|
Period of the data. (provider: fmp)
|
|
calendar_year : Optional[int]
|
|
Calendar year for the fiscal period. (provider: fmp)
|
|
revenue_per_share : Optional[float]
|
|
Revenue per share (provider: fmp, yfinance)
|
|
capex_per_share : Optional[float]
|
|
Capital expenditures per share (provider: fmp)
|
|
net_income_per_share : Optional[float]
|
|
Net income per share (provider: fmp)
|
|
operating_cash_flow_per_share : Optional[float]
|
|
Operating cash flow per share (provider: fmp)
|
|
free_cash_flow_per_share : Optional[float]
|
|
Free cash flow per share (provider: fmp)
|
|
cash_per_share : Optional[float]
|
|
Cash per share (provider: fmp, yfinance)
|
|
book_value_per_share : Optional[float]
|
|
Book value per share (provider: fmp)
|
|
tangible_book_value_per_share : Optional[float]
|
|
Tangible book value per share (provider: fmp)
|
|
shareholders_equity_per_share : Optional[float]
|
|
Shareholders equity per share (provider: fmp)
|
|
interest_debt_per_share : Optional[float]
|
|
Interest debt per share (provider: fmp)
|
|
price_to_sales : Optional[float]
|
|
Price-to-sales ratio (provider: fmp)
|
|
price_to_operating_cash_flow : Optional[float]
|
|
Price-to-operating cash flow ratio (provider: fmp)
|
|
price_to_free_cash_flow : Optional[float]
|
|
Price-to-free cash flow ratio (provider: fmp)
|
|
price_to_book : Optional[float]
|
|
Price-to-book ratio (provider: fmp, intrinio, yfinance)
|
|
price_to_tangible_book : Optional[float]
|
|
Price-to-tangible book ratio (provider: fmp, intrinio)
|
|
ev_to_sales : Optional[float]
|
|
Enterprise value-to-sales ratio (provider: fmp)
|
|
ev_to_ebitda : Optional[float]
|
|
Enterprise value-to-EBITDA ratio (provider: fmp)
|
|
ev_to_operating_cash_flow : Optional[float]
|
|
Enterprise value-to-operating cash flow ratio (provider: fmp)
|
|
ev_to_free_cash_flow : Optional[float]
|
|
Enterprise value-to-free cash flow ratio (provider: fmp)
|
|
earnings_yield : Optional[float]
|
|
Earnings yield (provider: fmp);
|
|
Earnings yield, as a normalized percent. (provider: intrinio)
|
|
free_cash_flow_yield : Optional[float]
|
|
Free cash flow yield (provider: fmp)
|
|
debt_to_market_cap : Optional[float]
|
|
Debt-to-market capitalization ratio (provider: fmp)
|
|
debt_to_equity : Optional[float]
|
|
Debt-to-equity ratio (provider: fmp, yfinance)
|
|
debt_to_assets : Optional[float]
|
|
Debt-to-assets ratio (provider: fmp)
|
|
net_debt_to_ebitda : Optional[float]
|
|
Net debt-to-EBITDA ratio (provider: fmp)
|
|
current_ratio : Optional[float]
|
|
Current ratio (provider: fmp, yfinance)
|
|
interest_coverage : Optional[float]
|
|
Interest coverage (provider: fmp)
|
|
income_quality : Optional[float]
|
|
Income quality (provider: fmp)
|
|
payout_ratio : Optional[float]
|
|
Payout ratio (provider: fmp, yfinance)
|
|
sales_general_and_administrative_to_revenue : Optional[float]
|
|
Sales general and administrative expenses-to-revenue ratio (provider: fmp)
|
|
research_and_development_to_revenue : Optional[float]
|
|
Research and development expenses-to-revenue ratio (provider: fmp)
|
|
intangibles_to_total_assets : Optional[float]
|
|
Intangibles-to-total assets ratio (provider: fmp)
|
|
capex_to_operating_cash_flow : Optional[float]
|
|
Capital expenditures-to-operating cash flow ratio (provider: fmp)
|
|
capex_to_revenue : Optional[float]
|
|
Capital expenditures-to-revenue ratio (provider: fmp)
|
|
capex_to_depreciation : Optional[float]
|
|
Capital expenditures-to-depreciation ratio (provider: fmp)
|
|
stock_based_compensation_to_revenue : Optional[float]
|
|
Stock-based compensation-to-revenue ratio (provider: fmp)
|
|
working_capital : Optional[float]
|
|
Working capital (provider: fmp)
|
|
tangible_asset_value : Optional[float]
|
|
Tangible asset value (provider: fmp)
|
|
net_current_asset_value : Optional[float]
|
|
Net current asset value (provider: fmp)
|
|
enterprise_value : Optional[int]
|
|
Enterprise value (provider: fmp, intrinio, yfinance)
|
|
invested_capital : Optional[float]
|
|
Invested capital (provider: fmp)
|
|
average_receivables : Optional[float]
|
|
Average receivables (provider: fmp)
|
|
average_payables : Optional[float]
|
|
Average payables (provider: fmp)
|
|
average_inventory : Optional[float]
|
|
Average inventory (provider: fmp)
|
|
days_sales_outstanding : Optional[float]
|
|
Days sales outstanding (provider: fmp)
|
|
days_payables_outstanding : Optional[float]
|
|
Days payables outstanding (provider: fmp)
|
|
days_of_inventory_on_hand : Optional[float]
|
|
Days of inventory on hand (provider: fmp)
|
|
receivables_turnover : Optional[float]
|
|
Receivables turnover (provider: fmp)
|
|
payables_turnover : Optional[float]
|
|
Payables turnover (provider: fmp)
|
|
inventory_turnover : Optional[float]
|
|
Inventory turnover (provider: fmp)
|
|
return_on_equity : Optional[float]
|
|
Return on equity (provider: fmp);
|
|
Return on equity, as a normalized percent. (provider: intrinio);
|
|
Return on equity, as a normalized percent. (provider: yfinance)
|
|
return_on_invested_capital : Optional[float]
|
|
Return on invested capital (provider: fmp);
|
|
Return on invested capital, as a normalized percent. (provider: intrinio)
|
|
return_on_tangible_assets : Optional[float]
|
|
Return on tangible assets (provider: fmp)
|
|
dividend_yield : Optional[float]
|
|
Dividend yield, as a normalized percent. (provider: fmp, intrinio, yfinance)
|
|
graham_number : Optional[float]
|
|
Graham number (provider: fmp)
|
|
graham_net_net : Optional[float]
|
|
Graham net-net working capital (provider: fmp)
|
|
price_to_revenue : Optional[float]
|
|
Price to revenue ratio. (provider: intrinio)
|
|
quick_ratio : Optional[float]
|
|
Quick ratio. (provider: intrinio, yfinance)
|
|
gross_margin : Optional[float]
|
|
Gross margin, as a normalized percent. (provider: intrinio, yfinance)
|
|
ebit_margin : Optional[float]
|
|
EBIT margin, as a normalized percent. (provider: intrinio)
|
|
profit_margin : Optional[float]
|
|
Profit margin, as a normalized percent. (provider: intrinio, yfinance)
|
|
eps : Optional[float]
|
|
Basic earnings per share. (provider: intrinio)
|
|
eps_growth : Optional[float]
|
|
EPS growth, as a normalized percent. (provider: intrinio)
|
|
revenue_growth : Optional[float]
|
|
Revenue growth, as a normalized percent. (provider: intrinio, yfinance)
|
|
ebitda_growth : Optional[float]
|
|
EBITDA growth, as a normalized percent. (provider: intrinio)
|
|
ebit_growth : Optional[float]
|
|
EBIT growth, as a normalized percent. (provider: intrinio)
|
|
net_income_growth : Optional[float]
|
|
Net income growth, as a normalized percent. (provider: intrinio)
|
|
free_cash_flow_to_firm_growth : Optional[float]
|
|
Free cash flow to firm growth, as a normalized percent. (provider: intrinio)
|
|
invested_capital_growth : Optional[float]
|
|
Invested capital growth, as a normalized percent. (provider: intrinio)
|
|
return_on_assets : Optional[float]
|
|
Return on assets, as a normalized percent. (provider: intrinio, yfinance)
|
|
ebitda : Optional[int]
|
|
Earnings before interest, taxes, depreciation, and amortization. (provider: intrinio)
|
|
ebit : Optional[int]
|
|
Earnings before interest and taxes. (provider: intrinio)
|
|
long_term_debt : Optional[int]
|
|
Long-term debt. (provider: intrinio)
|
|
total_debt : Optional[int]
|
|
Total debt. (provider: intrinio)
|
|
total_capital : Optional[int]
|
|
The sum of long-term debt and total shareholder equity. (provider: intrinio)
|
|
free_cash_flow_to_firm : Optional[int]
|
|
Free cash flow to firm. (provider: intrinio)
|
|
altman_z_score : Optional[float]
|
|
Altman Z-score. (provider: intrinio)
|
|
beta : Optional[float]
|
|
Beta relative to the broad market (rolling three-year). (provider: intrinio);
|
|
Beta relative to the broad market (5-year monthly). (provider: yfinance)
|
|
last_price : Optional[float]
|
|
Last price of the stock. (provider: intrinio)
|
|
year_high : Optional[float]
|
|
52 week high (provider: intrinio)
|
|
year_low : Optional[float]
|
|
52 week low (provider: intrinio)
|
|
volume_avg : Optional[int]
|
|
Average daily volume. (provider: intrinio)
|
|
short_interest : Optional[int]
|
|
Number of shares reported as sold short. (provider: intrinio)
|
|
shares_outstanding : Optional[int]
|
|
Weighted average shares outstanding (TTM). (provider: intrinio)
|
|
days_to_cover : Optional[float]
|
|
Days to cover short interest, based on average daily volume. (provider: intrinio)
|
|
forward_pe : Optional[float]
|
|
Forward price-to-earnings ratio. (provider: yfinance)
|
|
peg_ratio : Optional[float]
|
|
PEG ratio (5-year expected). (provider: yfinance)
|
|
peg_ratio_ttm : Optional[float]
|
|
PEG ratio (TTM). (provider: yfinance)
|
|
eps_ttm : Optional[float]
|
|
Earnings per share (TTM). (provider: yfinance)
|
|
eps_forward : Optional[float]
|
|
Forward earnings per share. (provider: yfinance)
|
|
enterprise_to_ebitda : Optional[float]
|
|
Enterprise value to EBITDA ratio. (provider: yfinance)
|
|
earnings_growth : Optional[float]
|
|
Earnings growth (Year Over Year), as a normalized percent. (provider: yfinance)
|
|
earnings_growth_quarterly : Optional[float]
|
|
Quarterly earnings growth (Year Over Year), as a normalized percent. (provider: yfinance)
|
|
enterprise_to_revenue : Optional[float]
|
|
Enterprise value to revenue ratio. (provider: yfinance)
|
|
operating_margin : Optional[float]
|
|
Operating margin, as a normalized percent. (provider: yfinance)
|
|
ebitda_margin : Optional[float]
|
|
EBITDA margin, as a normalized percent. (provider: yfinance)
|
|
dividend_yield_5y_avg : Optional[float]
|
|
5-year average dividend yield, as a normalized percent. (provider: yfinance)
|
|
book_value : Optional[float]
|
|
Book value per share. (provider: yfinance)
|
|
overall_risk : Optional[float]
|
|
Overall risk score. (provider: yfinance)
|
|
audit_risk : Optional[float]
|
|
Audit risk score. (provider: yfinance)
|
|
board_risk : Optional[float]
|
|
Board risk score. (provider: yfinance)
|
|
compensation_risk : Optional[float]
|
|
Compensation risk score. (provider: yfinance)
|
|
shareholder_rights_risk : Optional[float]
|
|
Shareholder rights risk score. (provider: yfinance)
|
|
price_return_1y : Optional[float]
|
|
One-year price return, as a normalized percent. (provider: yfinance)
|
|
currency : Optional[str]
|
|
Currency in which the data is presented. (provider: yfinance)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.metrics(symbol='AAPL', provider='fmp')
|
|
>>> obb.equity.fundamental.metrics(symbol='AAPL', period='annual', limit=100, provider='intrinio')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/metrics",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.metrics",
|
|
("fmp", "intrinio", "yfinance"),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"limit": limit,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"symbol": {
|
|
"fmp": {"multiple_items_allowed": True, "choices": None},
|
|
"intrinio": {"multiple_items_allowed": True, "choices": None},
|
|
"yfinance": {"multiple_items_allowed": True, "choices": None},
|
|
},
|
|
"period": {
|
|
"fmp": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter"],
|
|
}
|
|
},
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def multiples(
|
|
self,
|
|
symbol: Annotated[
|
|
Union[str, List[str]],
|
|
OpenBBField(
|
|
description="Symbol to get data for. Multiple comma separated items allowed for provider(s): fmp."
|
|
),
|
|
],
|
|
provider: Annotated[
|
|
Optional[Literal["fmp"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get equity valuation multiples for a given company.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : Union[str, List[str]]
|
|
Symbol to get data for. Multiple comma separated items allowed for provider(s): fmp.
|
|
provider : Optional[Literal['fmp']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp.
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[EquityValuationMultiples]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
EquityValuationMultiples
|
|
------------------------
|
|
symbol : str
|
|
Symbol representing the entity requested in the data.
|
|
revenue_per_share_ttm : Optional[float]
|
|
Revenue per share calculated as trailing twelve months.
|
|
net_income_per_share_ttm : Optional[float]
|
|
Net income per share calculated as trailing twelve months.
|
|
operating_cash_flow_per_share_ttm : Optional[float]
|
|
Operating cash flow per share calculated as trailing twelve months.
|
|
free_cash_flow_per_share_ttm : Optional[float]
|
|
Free cash flow per share calculated as trailing twelve months.
|
|
cash_per_share_ttm : Optional[float]
|
|
Cash per share calculated as trailing twelve months.
|
|
book_value_per_share_ttm : Optional[float]
|
|
Book value per share calculated as trailing twelve months.
|
|
tangible_book_value_per_share_ttm : Optional[float]
|
|
Tangible book value per share calculated as trailing twelve months.
|
|
shareholders_equity_per_share_ttm : Optional[float]
|
|
Shareholders equity per share calculated as trailing twelve months.
|
|
interest_debt_per_share_ttm : Optional[float]
|
|
Interest debt per share calculated as trailing twelve months.
|
|
market_cap_ttm : Optional[float]
|
|
Market capitalization calculated as trailing twelve months.
|
|
enterprise_value_ttm : Optional[float]
|
|
Enterprise value calculated as trailing twelve months.
|
|
pe_ratio_ttm : Optional[float]
|
|
Price-to-earnings ratio (P/E ratio) calculated as trailing twelve months.
|
|
price_to_sales_ratio_ttm : Optional[float]
|
|
Price-to-sales ratio calculated as trailing twelve months.
|
|
pocf_ratio_ttm : Optional[float]
|
|
Price-to-operating cash flow ratio calculated as trailing twelve months.
|
|
pfcf_ratio_ttm : Optional[float]
|
|
Price-to-free cash flow ratio calculated as trailing twelve months.
|
|
pb_ratio_ttm : Optional[float]
|
|
Price-to-book ratio calculated as trailing twelve months.
|
|
ptb_ratio_ttm : Optional[float]
|
|
Price-to-tangible book ratio calculated as trailing twelve months.
|
|
ev_to_sales_ttm : Optional[float]
|
|
Enterprise value-to-sales ratio calculated as trailing twelve months.
|
|
enterprise_value_over_ebitda_ttm : Optional[float]
|
|
Enterprise value-to-EBITDA ratio calculated as trailing twelve months.
|
|
ev_to_operating_cash_flow_ttm : Optional[float]
|
|
Enterprise value-to-operating cash flow ratio calculated as trailing twelve months.
|
|
ev_to_free_cash_flow_ttm : Optional[float]
|
|
Enterprise value-to-free cash flow ratio calculated as trailing twelve months.
|
|
earnings_yield_ttm : Optional[float]
|
|
Earnings yield calculated as trailing twelve months.
|
|
free_cash_flow_yield_ttm : Optional[float]
|
|
Free cash flow yield calculated as trailing twelve months.
|
|
debt_to_equity_ttm : Optional[float]
|
|
Debt-to-equity ratio calculated as trailing twelve months.
|
|
debt_to_assets_ttm : Optional[float]
|
|
Debt-to-assets ratio calculated as trailing twelve months.
|
|
net_debt_to_ebitda_ttm : Optional[float]
|
|
Net debt-to-EBITDA ratio calculated as trailing twelve months.
|
|
current_ratio_ttm : Optional[float]
|
|
Current ratio calculated as trailing twelve months.
|
|
interest_coverage_ttm : Optional[float]
|
|
Interest coverage calculated as trailing twelve months.
|
|
income_quality_ttm : Optional[float]
|
|
Income quality calculated as trailing twelve months.
|
|
dividend_yield_ttm : Optional[float]
|
|
Dividend yield calculated as trailing twelve months.
|
|
dividend_yield_percentage_ttm : Optional[float]
|
|
Dividend yield percentage calculated as trailing twelve months.
|
|
dividend_to_market_cap_ttm : Optional[float]
|
|
Dividend to market capitalization ratio calculated as trailing twelve months.
|
|
dividend_per_share_ttm : Optional[float]
|
|
Dividend per share calculated as trailing twelve months.
|
|
payout_ratio_ttm : Optional[float]
|
|
Payout ratio calculated as trailing twelve months.
|
|
sales_general_and_administrative_to_revenue_ttm : Optional[float]
|
|
Sales general and administrative expenses-to-revenue ratio calculated as trailing twelve months.
|
|
research_and_development_to_revenue_ttm : Optional[float]
|
|
Research and development expenses-to-revenue ratio calculated as trailing twelve months.
|
|
intangibles_to_total_assets_ttm : Optional[float]
|
|
Intangibles-to-total assets ratio calculated as trailing twelve months.
|
|
capex_to_operating_cash_flow_ttm : Optional[float]
|
|
Capital expenditures-to-operating cash flow ratio calculated as trailing twelve months.
|
|
capex_to_revenue_ttm : Optional[float]
|
|
Capital expenditures-to-revenue ratio calculated as trailing twelve months.
|
|
capex_to_depreciation_ttm : Optional[float]
|
|
Capital expenditures-to-depreciation ratio calculated as trailing twelve months.
|
|
stock_based_compensation_to_revenue_ttm : Optional[float]
|
|
Stock-based compensation-to-revenue ratio calculated as trailing twelve months.
|
|
graham_number_ttm : Optional[float]
|
|
Graham number calculated as trailing twelve months.
|
|
roic_ttm : Optional[float]
|
|
Return on invested capital calculated as trailing twelve months.
|
|
return_on_tangible_assets_ttm : Optional[float]
|
|
Return on tangible assets calculated as trailing twelve months.
|
|
graham_net_net_ttm : Optional[float]
|
|
Graham net-net working capital calculated as trailing twelve months.
|
|
working_capital_ttm : Optional[float]
|
|
Working capital calculated as trailing twelve months.
|
|
tangible_asset_value_ttm : Optional[float]
|
|
Tangible asset value calculated as trailing twelve months.
|
|
net_current_asset_value_ttm : Optional[float]
|
|
Net current asset value calculated as trailing twelve months.
|
|
invested_capital_ttm : Optional[float]
|
|
Invested capital calculated as trailing twelve months.
|
|
average_receivables_ttm : Optional[float]
|
|
Average receivables calculated as trailing twelve months.
|
|
average_payables_ttm : Optional[float]
|
|
Average payables calculated as trailing twelve months.
|
|
average_inventory_ttm : Optional[float]
|
|
Average inventory calculated as trailing twelve months.
|
|
days_sales_outstanding_ttm : Optional[float]
|
|
Days sales outstanding calculated as trailing twelve months.
|
|
days_payables_outstanding_ttm : Optional[float]
|
|
Days payables outstanding calculated as trailing twelve months.
|
|
days_of_inventory_on_hand_ttm : Optional[float]
|
|
Days of inventory on hand calculated as trailing twelve months.
|
|
receivables_turnover_ttm : Optional[float]
|
|
Receivables turnover calculated as trailing twelve months.
|
|
payables_turnover_ttm : Optional[float]
|
|
Payables turnover calculated as trailing twelve months.
|
|
inventory_turnover_ttm : Optional[float]
|
|
Inventory turnover calculated as trailing twelve months.
|
|
roe_ttm : Optional[float]
|
|
Return on equity calculated as trailing twelve months.
|
|
capex_per_share_ttm : Optional[float]
|
|
Capital expenditures per share calculated as trailing twelve months.
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.multiples(symbol='AAPL', provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/multiples",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.multiples",
|
|
("fmp",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"symbol": {"fmp": {"multiple_items_allowed": True, "choices": None}}
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def ratios(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
limit: Annotated[
|
|
int, OpenBBField(description="The number of data entries to return.")
|
|
] = 12,
|
|
provider: Annotated[
|
|
Optional[Literal["fmp", "intrinio"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get an extensive set of financial and accounting ratios for a given company over time.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
limit : int
|
|
The number of data entries to return.
|
|
provider : Optional[Literal['fmp', 'intrinio']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp, intrinio.
|
|
period : Union[Literal['annual', 'quarter', 'ttm'], Literal['annual', 'quarter', 'ttm', 'ytd']]
|
|
Time period of the data to return. (provider: fmp, intrinio)
|
|
fiscal_year : Optional[int]
|
|
The specific fiscal year. Reports do not go beyond 2008. (provider: intrinio)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[FinancialRatios]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp', 'intrinio']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
FinancialRatios
|
|
---------------
|
|
period_ending : str
|
|
The date of the data.
|
|
fiscal_period : str
|
|
Period of the financial ratios.
|
|
fiscal_year : Optional[int]
|
|
Fiscal year.
|
|
current_ratio : Optional[float]
|
|
Current ratio. (provider: fmp)
|
|
quick_ratio : Optional[float]
|
|
Quick ratio. (provider: fmp)
|
|
cash_ratio : Optional[float]
|
|
Cash ratio. (provider: fmp)
|
|
days_of_sales_outstanding : Optional[float]
|
|
Days of sales outstanding. (provider: fmp)
|
|
days_of_inventory_outstanding : Optional[float]
|
|
Days of inventory outstanding. (provider: fmp)
|
|
operating_cycle : Optional[float]
|
|
Operating cycle. (provider: fmp)
|
|
days_of_payables_outstanding : Optional[float]
|
|
Days of payables outstanding. (provider: fmp)
|
|
cash_conversion_cycle : Optional[float]
|
|
Cash conversion cycle. (provider: fmp)
|
|
gross_profit_margin : Optional[float]
|
|
Gross profit margin. (provider: fmp)
|
|
operating_profit_margin : Optional[float]
|
|
Operating profit margin. (provider: fmp)
|
|
pretax_profit_margin : Optional[float]
|
|
Pretax profit margin. (provider: fmp)
|
|
net_profit_margin : Optional[float]
|
|
Net profit margin. (provider: fmp)
|
|
effective_tax_rate : Optional[float]
|
|
Effective tax rate. (provider: fmp)
|
|
return_on_assets : Optional[float]
|
|
Return on assets. (provider: fmp)
|
|
return_on_equity : Optional[float]
|
|
Return on equity. (provider: fmp)
|
|
return_on_capital_employed : Optional[float]
|
|
Return on capital employed. (provider: fmp)
|
|
net_income_per_ebt : Optional[float]
|
|
Net income per EBT. (provider: fmp)
|
|
ebt_per_ebit : Optional[float]
|
|
EBT per EBIT. (provider: fmp)
|
|
ebit_per_revenue : Optional[float]
|
|
EBIT per revenue. (provider: fmp)
|
|
debt_ratio : Optional[float]
|
|
Debt ratio. (provider: fmp)
|
|
debt_equity_ratio : Optional[float]
|
|
Debt equity ratio. (provider: fmp)
|
|
long_term_debt_to_capitalization : Optional[float]
|
|
Long term debt to capitalization. (provider: fmp)
|
|
total_debt_to_capitalization : Optional[float]
|
|
Total debt to capitalization. (provider: fmp)
|
|
interest_coverage : Optional[float]
|
|
Interest coverage. (provider: fmp)
|
|
cash_flow_to_debt_ratio : Optional[float]
|
|
Cash flow to debt ratio. (provider: fmp)
|
|
company_equity_multiplier : Optional[float]
|
|
Company equity multiplier. (provider: fmp)
|
|
receivables_turnover : Optional[float]
|
|
Receivables turnover. (provider: fmp)
|
|
payables_turnover : Optional[float]
|
|
Payables turnover. (provider: fmp)
|
|
inventory_turnover : Optional[float]
|
|
Inventory turnover. (provider: fmp)
|
|
fixed_asset_turnover : Optional[float]
|
|
Fixed asset turnover. (provider: fmp)
|
|
asset_turnover : Optional[float]
|
|
Asset turnover. (provider: fmp)
|
|
operating_cash_flow_per_share : Optional[float]
|
|
Operating cash flow per share. (provider: fmp)
|
|
free_cash_flow_per_share : Optional[float]
|
|
Free cash flow per share. (provider: fmp)
|
|
cash_per_share : Optional[float]
|
|
Cash per share. (provider: fmp)
|
|
payout_ratio : Optional[float]
|
|
Payout ratio. (provider: fmp)
|
|
operating_cash_flow_sales_ratio : Optional[float]
|
|
Operating cash flow sales ratio. (provider: fmp)
|
|
free_cash_flow_operating_cash_flow_ratio : Optional[float]
|
|
Free cash flow operating cash flow ratio. (provider: fmp)
|
|
cash_flow_coverage_ratios : Optional[float]
|
|
Cash flow coverage ratios. (provider: fmp)
|
|
short_term_coverage_ratios : Optional[float]
|
|
Short term coverage ratios. (provider: fmp)
|
|
capital_expenditure_coverage_ratio : Optional[float]
|
|
Capital expenditure coverage ratio. (provider: fmp)
|
|
dividend_paid_and_capex_coverage_ratio : Optional[float]
|
|
Dividend paid and capex coverage ratio. (provider: fmp)
|
|
dividend_payout_ratio : Optional[float]
|
|
Dividend payout ratio. (provider: fmp)
|
|
price_book_value_ratio : Optional[float]
|
|
Price book value ratio. (provider: fmp)
|
|
price_to_book_ratio : Optional[float]
|
|
Price to book ratio. (provider: fmp)
|
|
price_to_sales_ratio : Optional[float]
|
|
Price to sales ratio. (provider: fmp)
|
|
price_earnings_ratio : Optional[float]
|
|
Price earnings ratio. (provider: fmp)
|
|
price_to_free_cash_flows_ratio : Optional[float]
|
|
Price to free cash flows ratio. (provider: fmp)
|
|
price_to_operating_cash_flows_ratio : Optional[float]
|
|
Price to operating cash flows ratio. (provider: fmp)
|
|
price_cash_flow_ratio : Optional[float]
|
|
Price cash flow ratio. (provider: fmp)
|
|
price_earnings_to_growth_ratio : Optional[float]
|
|
Price earnings to growth ratio. (provider: fmp)
|
|
price_sales_ratio : Optional[float]
|
|
Price sales ratio. (provider: fmp)
|
|
dividend_yield : Optional[float]
|
|
Dividend yield. (provider: fmp)
|
|
dividend_yield_percentage : Optional[float]
|
|
Dividend yield percentage. (provider: fmp)
|
|
dividend_per_share : Optional[float]
|
|
Dividend per share. (provider: fmp)
|
|
enterprise_value_multiple : Optional[float]
|
|
Enterprise value multiple. (provider: fmp)
|
|
price_fair_value : Optional[float]
|
|
Price fair value. (provider: fmp)
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.ratios(symbol='AAPL', provider='fmp')
|
|
>>> obb.equity.fundamental.ratios(symbol='AAPL', period='annual', limit=12, provider='intrinio')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/ratios",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.ratios",
|
|
("fmp", "intrinio"),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"limit": limit,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"period": {
|
|
"fmp": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter", "ttm"],
|
|
},
|
|
"intrinio": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["annual", "quarter", "ttm", "ytd"],
|
|
},
|
|
}
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def reported_financials(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
period: Annotated[
|
|
str, OpenBBField(description="Time period of the data to return.")
|
|
] = "annual",
|
|
statement_type: Annotated[
|
|
str,
|
|
OpenBBField(
|
|
description="The type of financial statement - i.e, balance, income, cash."
|
|
),
|
|
] = "balance",
|
|
limit: Annotated[
|
|
Optional[int],
|
|
OpenBBField(
|
|
description="The number of data entries to return. Although the response object contains multiple results, because of the variance in the fields, year-to-year and quarter-to-quarter, it is recommended to view results in small chunks."
|
|
),
|
|
] = 100,
|
|
provider: Annotated[
|
|
Optional[Literal["intrinio"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: intrinio."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get financial statements as reported by the company.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
period : str
|
|
Time period of the data to return.
|
|
statement_type : str
|
|
The type of financial statement - i.e, balance, income, cash.
|
|
limit : Optional[int]
|
|
The number of data entries to return. Although the response object contains multiple results, because of the variance in the fields, year-to-year and quarter-to-quarter, it is recommended to view results in small chunks.
|
|
provider : Optional[Literal['intrinio']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: intrinio.
|
|
fiscal_year : Optional[int]
|
|
The specific fiscal year. Reports do not go beyond 2008. (provider: intrinio)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[ReportedFinancials]
|
|
Serializable results.
|
|
provider : Optional[Literal['intrinio']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
ReportedFinancials
|
|
------------------
|
|
period_ending : date
|
|
The ending date of the reporting period.
|
|
fiscal_period : str
|
|
The fiscal period of the report (e.g. FY, Q1, etc.).
|
|
fiscal_year : Optional[int]
|
|
The fiscal year of the fiscal period.
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.reported_financials(symbol='AAPL', provider='intrinio')
|
|
>>> # Get AAPL balance sheet with a limit of 10 items.
|
|
>>> obb.equity.fundamental.reported_financials(symbol='AAPL', period='annual', statement_type='balance', limit=10, provider='intrinio')
|
|
>>> # Get reported income statement
|
|
>>> obb.equity.fundamental.reported_financials(symbol='AAPL', statement_type='income', provider='intrinio')
|
|
>>> # Get reported cash flow statement
|
|
>>> obb.equity.fundamental.reported_financials(symbol='AAPL', statement_type='cash', provider='intrinio')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/reported_financials",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.reported_financials",
|
|
("intrinio",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"period": period,
|
|
"statement_type": statement_type,
|
|
"limit": limit,
|
|
},
|
|
extra_params=kwargs,
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def revenue_per_geography(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
provider: Annotated[
|
|
Optional[Literal["fmp"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get the geographic breakdown of revenue for a given company over time.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
provider : Optional[Literal['fmp']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp.
|
|
period : Literal['quarter', 'annual']
|
|
Time period of the data to return. (provider: fmp)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[RevenueGeographic]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
RevenueGeographic
|
|
-----------------
|
|
period_ending : date
|
|
The end date of the reporting period.
|
|
fiscal_period : Optional[str]
|
|
The fiscal period of the reporting period.
|
|
fiscal_year : Optional[int]
|
|
The fiscal year of the reporting period.
|
|
filing_date : Optional[date]
|
|
The filing date of the report.
|
|
region : Optional[str]
|
|
The region represented by the revenue data.
|
|
revenue : Union[int, float]
|
|
The total revenue attributed to the region.
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.revenue_per_geography(symbol='AAPL', provider='fmp')
|
|
>>> obb.equity.fundamental.revenue_per_geography(symbol='AAPL', period='quarter', provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/revenue_per_geography",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.revenue_per_geography",
|
|
("fmp",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"period": {
|
|
"fmp": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["quarter", "annual"],
|
|
}
|
|
}
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def revenue_per_segment(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
provider: Annotated[
|
|
Optional[Literal["fmp"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get the revenue breakdown by business segment for a given company over time.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
provider : Optional[Literal['fmp']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp.
|
|
period : Literal['quarter', 'annual']
|
|
Time period of the data to return. (provider: fmp)
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[RevenueBusinessLine]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
RevenueBusinessLine
|
|
-------------------
|
|
period_ending : date
|
|
The end date of the reporting period.
|
|
fiscal_period : Optional[str]
|
|
The fiscal period of the reporting period.
|
|
fiscal_year : Optional[int]
|
|
The fiscal year of the reporting period.
|
|
filing_date : Optional[date]
|
|
The filing date of the report.
|
|
business_line : Optional[str]
|
|
The business line represented by the revenue data.
|
|
revenue : Union[int, float]
|
|
The total revenue attributed to the business line.
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.revenue_per_segment(symbol='AAPL', provider='fmp')
|
|
>>> obb.equity.fundamental.revenue_per_segment(symbol='AAPL', period='quarter', provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/revenue_per_segment",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.revenue_per_segment",
|
|
("fmp",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"period": {
|
|
"fmp": {
|
|
"multiple_items_allowed": False,
|
|
"choices": ["quarter", "annual"],
|
|
}
|
|
}
|
|
},
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def search_attributes(
|
|
self,
|
|
query: Annotated[str, OpenBBField(description="Query to search for.")],
|
|
limit: Annotated[
|
|
Optional[int],
|
|
OpenBBField(description="The number of data entries to return."),
|
|
] = 1000,
|
|
provider: Annotated[
|
|
Optional[Literal["intrinio"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: intrinio."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Search Intrinio data tags to search in latest or historical attributes.
|
|
|
|
Parameters
|
|
----------
|
|
query : str
|
|
Query to search for.
|
|
limit : Optional[int]
|
|
The number of data entries to return.
|
|
provider : Optional[Literal['intrinio']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: intrinio.
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[SearchAttributes]
|
|
Serializable results.
|
|
provider : Optional[Literal['intrinio']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
SearchAttributes
|
|
----------------
|
|
id : str
|
|
ID of the financial attribute.
|
|
name : str
|
|
Name of the financial attribute.
|
|
tag : str
|
|
Tag of the financial attribute.
|
|
statement_code : str
|
|
Code of the financial statement.
|
|
statement_type : Optional[str]
|
|
Type of the financial statement.
|
|
parent_name : Optional[str]
|
|
Parent's name of the financial attribute.
|
|
sequence : Optional[int]
|
|
Sequence of the financial statement.
|
|
factor : Optional[str]
|
|
Unit of the financial attribute.
|
|
transaction : Optional[str]
|
|
Transaction type (credit/debit) of the financial attribute.
|
|
type : Optional[str]
|
|
Type of the financial attribute.
|
|
unit : Optional[str]
|
|
Unit of the financial attribute.
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.search_attributes(query='ebitda', provider='intrinio')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/search_attributes",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.search_attributes",
|
|
("intrinio",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"query": query,
|
|
"limit": limit,
|
|
},
|
|
extra_params=kwargs,
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def trailing_dividend_yield(
|
|
self,
|
|
symbol: Annotated[str, OpenBBField(description="Symbol to get data for.")],
|
|
limit: Annotated[
|
|
Optional[int],
|
|
OpenBBField(
|
|
description="The number of data entries to return. Default is 252, the number of trading days in a year."
|
|
),
|
|
] = 252,
|
|
provider: Annotated[
|
|
Optional[Literal["tiingo"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: tiingo."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get the 1 year trailing dividend yield for a given company over time.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : str
|
|
Symbol to get data for.
|
|
limit : Optional[int]
|
|
The number of data entries to return. Default is 252, the number of trading days in a year.
|
|
provider : Optional[Literal['tiingo']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: tiingo.
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[TrailingDividendYield]
|
|
Serializable results.
|
|
provider : Optional[Literal['tiingo']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
TrailingDividendYield
|
|
---------------------
|
|
date : date
|
|
The date of the data.
|
|
trailing_dividend_yield : float
|
|
Trailing dividend yield.
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.trailing_dividend_yield(symbol='AAPL', provider='tiingo')
|
|
>>> obb.equity.fundamental.trailing_dividend_yield(symbol='AAPL', limit=252, provider='tiingo')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/trailing_dividend_yield",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.trailing_dividend_yield",
|
|
("tiingo",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"limit": limit,
|
|
},
|
|
extra_params=kwargs,
|
|
)
|
|
)
|
|
|
|
@exception_handler
|
|
@validate
|
|
def transcript(
|
|
self,
|
|
symbol: Annotated[
|
|
Union[str, List[str]],
|
|
OpenBBField(
|
|
description="Symbol to get data for. Multiple comma separated items allowed for provider(s): fmp."
|
|
),
|
|
],
|
|
year: Annotated[
|
|
Union[int, str, List[Union[int, str]]],
|
|
OpenBBField(
|
|
description="Year of the earnings call transcript. Multiple comma separated items allowed for provider(s): fmp."
|
|
),
|
|
],
|
|
provider: Annotated[
|
|
Optional[Literal["fmp"]],
|
|
OpenBBField(
|
|
description="The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp."
|
|
),
|
|
] = None,
|
|
**kwargs
|
|
) -> OBBject:
|
|
"""Get earnings call transcripts for a given company.
|
|
|
|
Parameters
|
|
----------
|
|
symbol : Union[str, List[str]]
|
|
Symbol to get data for. Multiple comma separated items allowed for provider(s): fmp.
|
|
year : Union[int, str, List[Union[int, str]]]
|
|
Year of the earnings call transcript. Multiple comma separated items allowed for provider(s): fmp.
|
|
provider : Optional[Literal['fmp']]
|
|
The provider to use, by default None. If None, the priority list configured in the settings is used. Default priority: fmp.
|
|
|
|
Returns
|
|
-------
|
|
OBBject
|
|
results : List[EarningsCallTranscript]
|
|
Serializable results.
|
|
provider : Optional[Literal['fmp']]
|
|
Provider name.
|
|
warnings : Optional[List[Warning_]]
|
|
List of warnings.
|
|
chart : Optional[Chart]
|
|
Chart object.
|
|
extra : Dict[str, Any]
|
|
Extra info.
|
|
|
|
EarningsCallTranscript
|
|
----------------------
|
|
symbol : str
|
|
Symbol representing the entity requested in the data.
|
|
quarter : int
|
|
Quarter of the earnings call transcript.
|
|
year : int
|
|
Year of the earnings call transcript.
|
|
date : datetime
|
|
The date of the data.
|
|
content : str
|
|
Content of the earnings call transcript.
|
|
|
|
Examples
|
|
--------
|
|
>>> from openbb import obb
|
|
>>> obb.equity.fundamental.transcript(symbol='AAPL', year='2020', provider='fmp')
|
|
""" # noqa: E501
|
|
|
|
return self._run(
|
|
"/equity/fundamental/transcript",
|
|
**filter_inputs(
|
|
provider_choices={
|
|
"provider": self._get_provider(
|
|
provider,
|
|
"equity.fundamental.transcript",
|
|
("fmp",),
|
|
)
|
|
},
|
|
standard_params={
|
|
"symbol": symbol,
|
|
"year": year,
|
|
},
|
|
extra_params=kwargs,
|
|
info={
|
|
"symbol": {
|
|
"fmp": {"multiple_items_allowed": True, "choices": None}
|
|
},
|
|
"year": {"fmp": {"multiple_items_allowed": True, "choices": None}},
|
|
},
|
|
)
|
|
)
|